当前位置:首页 > 经济
软件项目估计  第2版
软件项目估计  第2版

软件项目估计 第2版PDF电子书下载

经济

  • 电子书积分:15 积分如何计算积分?
  • 作 者:CAPERS JONES著(美国软件生产力研究所)
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2008
  • ISBN:9787121058066
  • 页数:475 页
图书介绍:本领域的先驱和创新者卡朋斯·琼斯,结合众所周知的艰巨任务——软件项目成本评估来为你探查上述问题的究竟!他并没有提供一个异常简单的手动方法,因为这会丧失和约与重要商业目的必不可少的精确性。而是细致的探测到导致评估结果比平均值或高或低的多方面变数。如何更有效率地评估软件项目的成本、进度和质量?本书将给你一个清晰、完整而远远超出你想象的认识。你将学到很多技术细节,包括如何制定软件项目成本评估,哪种商业软件是真正有用;这些工具如何在不同的项目管理套路中工作,如何排除故障和解决如下典型问题等。
《软件项目估计 第2版》目录

第1篇 软件项目评估介绍 3

第1章 介绍 3

1.1 软件项目评估工具的工作原理 3

1.1.1 软件项目评估工具 3

1.1.2 软件项目评估的步骤 6

1.2 关于遗漏评估活动的警告 11

1.3 软件项目评估和其他开发活动 12

参考文献 13

第2章 软件项目评估的起源 17

2.1 软件项目评估的早期历史 18

2.2 软件项目评估中功能度量的使用及扩展 20

参考文献 23

第3章 软件项目评估的6种方法 25

3.1 手工软件评估方法简介 25

3.2 自动软件评估方法简介 27

3.3 大型软件项目中手工评估和自动评估的比较 35

参考文献 36

第4章 软件项目评估工具以及项目的成功率和失败率 39

4.1 项目成功和失败的差异 39

4.2 影响项目结果的因素 41

参考文献 44

第5章 软件项目评估错误的来源 45

5.1 判断软件项目评估的准确度 48

5.2 软件评估错误的种类 50

5.2.1 度量错误 50

5.2.2 规模错误 52

5.2.3 执行官和客户错误 53

5.2.4 规模评估错误 53

5.2.5 活动选择错误 53

5.2.6 分配范围错误 55

5.2.7 生产率错误 56

5.2.8 蔓延的用户需求 58

5.2.9 关键路径错误 59

5.2.10 人员筹备错误 60

5.2.11 技术调整错误 60

5.2.12 特殊情况 61

5.3 评估错误的影响范围 61

参考文献 63

第2篇 初步评估方法 67

第6章 手工软件评估方法 67

6.1 基于LOC度量的经验法则 67

6.2 基于比率和百分比的经验法则 70

6.3 基于功能点度量的经验法则 73

6.3.1 关于功能点 73

6.3.2 功能点规模评估的经验法则 75

6.3.3 进度、资源、成本的经验法则 86

6.3.4 基于活动的成本分析的经验法则 89

6.4 总结和结论 94

参考文献 95

第7章 源于敏捷项目和新环境的手工评估方法 97

7.1 用于经验法则的度量 99

7.2 手工软件项目评估的经验法则 103

7.2.1 敏捷软件开发 103

7.2.2 基于组件的开发 105

7.2.3 动态系统开发方法(DSDM) 106

7.2.4 企业资源计划(ERP)部署 108

7.2.5 极限编程(XP) 111

7.2.6 国际外包 113

7.2.7 面向对象(OO)开发 115

7.2.8 能力成熟度模型(CMM) 117

7.3 仅有部分经验法则的软件方法 121

7.3.1 净室开发 121

7.3.2 水晶开发方法 121

7.3.3 特征驱动开发(FDD) 122

7.3.4 ISO 9000—9004质量标准 122

7.3.5 迭代开发或增量开发 122

7.3.6 基于模式的软件开发 124

7.3.7 质量功能部署(QFD) 125

7.3.8 快速应用开发(RAD) 126

7.3.9 Serum 126

7.3.10 软件六西格玛 128

7.3.11 螺旋软件开发 128

7.3.12 统一建模语言(UML) 129

7.3.13 软件需求用例 130

7.3.14 基于Web的软件 131

7.4 总结和结论 132

参考文献 133

第8章 基于最少数据的自动评估 135

8.1 阶段1:记录行政和项目信息 135

8.1.1 软件分类法:定义项目的本质、范围、种类和类型 137

8.1.2 工作模式、人员薪水和间接费率 142

8.2 阶段2:主要交付产品的初步规模评估 144

8.2.1 用户提供的软件项目规模评估 145

8.2.2 自动近似规模评估法 149

8.2.3 蔓延需求影响的规模评估 154

8.3 阶段3:进行初步项目评估 157

8.4 总结和结论 160

参考文献 161

第3篇 软件交付产品规模评估 165

第9章 软件交付产品规模评估 165

9.1 主要交付产品规模评估的基本原理 165

9.2 目前使用的规模评估方法 166

9.2.1 利用历史数据进行模式匹配 167

9.2.2 利用历史数据预计需求的增长 168

9.2.3 利用数学或统计方法,依据不完整的需求评估软件规模 168

9.2.4 增加偶然因子的随机经验法则 169

9.2.5 在特定的时间点固化需求 170

9.2.6 仅对整个应用程序的子集进行的正式项目评估 170

9.3 功能点变体 171

9.4 已有的功能点数据量 177

9.5 软件复杂度分析 178

9.6 包含可重用组件的软件规模评估 186

9.7 软件规模评估度量的基本形式简介 188

9.8 源代码规模评估 193

9.9 OO软件项目规模评估 197

9.10 基于文本的纸质文档规模评估 199

9.11 图表规模评估 204

9.12 Bug或缺陷规模评估 206

9.13 测试用例规模评估 211

9.14 软件工作产品规模评估的盲区 213

9.15 软件规模评估的优点和缺点 216

9.16 总结和结论 218

参考文献 218

第4篇 项目评估调整因素 223

第10章 薪酬和工作模式调整 223

10.1 手工和自动调整方法 223

10.2 常规软件项目评估中的特例 227

10.3 确定软件项目评估的初始条件 228

10.4 间接费率的差异 230

10.5 工作习惯和无偿加班的差异 232

参考文献 236

第11章 活动模式调整因素 237

11.1 软件项目的25项常见活动 237

参考文献 242

第12章 软件技术调整因素 245

12.1 调整因素和宏观评估工具 245

12.2 影响软件开发生产力的因素 249

12.3 影响软件维护生产力的因素 251

12.4 正面因素和负面因素的模式 254

12.5 调整因素和微观评估工具 255

12.5.1 SPR获得调整数据的示例 256

12.5.2 微观调整因素 258

参考文献 267

第5篇 基于活动的软件项目评估第13章 软件需求评估 271

13.1 功能点和软件需求 276

13.1.1 联合应用开发(JAD) 277

13.1.2 敏捷开发 278

13.1.3 原型 278

13.1.4 用例 278

13.1.5 变更控制委员会 278

13.1.6 质量功能配置(QFD) 279

13.1.7 每个功能点的滑动成本 279

13.2 软件需求的内容 280

13.2.1 软件需求的主要内容 280

13.2.2 软件需求的其他内容 281

13.3 正面和负面需求调整因素 282

13.3.1 正面需求因素 282

13.3.2 负面需求因素 282

13.4 不同软件的不同需求 284

13.4.1 需求和最终用户软件 284

13.4.2 需求和敏捷应用程序 284

13.4.3 需求和管理信息系统(MIS)项目 284

13.4.4 需求和外包项目 285

13.4.5 需求和系统软件 285

13.4.6 需求和商品化软件 286

13.4.7 需求和军用软件项目 286

13.4.8 需求和基于Web的应用程序 286

13.5 评价需求因素的组合情况 287

参考资料 289

第14章 软件原型评估 291

14.1 可抛弃原型 293

14.2 时间盒原型 293

14.3 演化原型 294

14.4 可抛弃原型的评估默认值 295

14.5 影响软件原型的正面和负面因素 298

参考资料 300

第15章 软件规格说明和设计评估 303

15.1 正面设计调整因素 306

15.2 负面设计调整因素 307

参考资料 310

第16章 设计审查评估 313

16.1 与审查有关的文献 313

16.2 审查过程 314

16.3 审查的价值 316

16.4 影响设计审查的调整因素 320

参考资料 322

第17章 编程或编码评估 323

17.1 可重用性对编程的影响 328

17.2 经验对编程的影响 330

17.3 Bug或错误对编程的影响 330

17.4 无偿加班对编程的影响 332

17.5 需求蔓延对编程的影响 333

17.6 代码结构和复杂度对编程的影响 334

17.7 计划外干扰对编程的影响 335

17.8 应用程序规模对编程的影响 335

17.9 办公空间和人体工效因素对编程的影响 336

17.10 工具对编程的影响 337

17.11 编程语言对编程的影响 338

17.12 进度压力对编程的影响 341

参考资料 341

第18章 代码审查评估 343

18.1 代码审查的文献 343

18.2 代码审查的有效性 343

18.3 代码审查评估的一些考虑因素 346

参考资料 349

第19章 软件配置控制和变更管理评估 351

19.1 变更管理的文献 352

19.2 软件变更的测量 354

19.3 用户需求的变更 357

19.4 规格说明和设计的变更 358

19.5 与Bug或缺陷报告有关的变更 358

19.6 总结和结论 359

参考资料 360

第20章 软件测试评估 363

20.1 通用软件测试 368

20.1.1 子程序测试 368

20.1.2 单元测试 368

20.1.3 新功能测试 369

20.1.4 回归测试 369

20.1.5 集成测试 369

20.1.6 整个应用程序的系统测试 370

20.2 专用软件测试 370

20.2.1 压力或能力测试 370

20.2.2 性能测试 371

20.2.3 病毒及流氓插件防护测试 371

20.2.4 安全性测试 371

20.2.5 平台测试 371

20.2.6 第三方测试 372

20.3 用户或客户参与的测试 372

20.3.1 可用性测试 372

20.3.2 现场(beta)测试 373

20.3.3 试验室测试 373

20.3.4 客户验收测试 373

20.3.5 净室统计测试 373

20.4 测试阶段的数量 374

20.5 不同行业、不同软件类型的测试模式差异 375

20.5.1 最终用户软件 375

20.5.2 Web软件 375

20.5.3 MIS软件 375

20.5.4 外包软件 375

20.5.5 商品化软件 375

20.5.6 系统软件 376

20.5.7 军用软件 376

20.6 不同规模的应用程序的测试模式差异 377

20.7 受到质量指控的软件的测试阶段 378

20.8 用功能点评估测试用例数 378

20.9 用功能点评估测试人员的数量 380

20.10 测试和缺陷清除率 381

20.11 用功能点评估测试工作量和成本 382

20.12 开发人员或专业测试人员进行的测试 384

20.13 测试用例覆盖率 386

20.14 影响测试性能的因素 386

参考资料 387

第21章 用户和项目文档评估 389

21.1 评估工具和软件文档 390

21.2 确定软件文档类型的数量和规模 391

21.3 落后的项目和领先的项目使用的软件文档化工具 396

参考资料 397

第22章 软件项目管理评估 399

22.1 软件项目管理中的角色 401

22.2 同时参与技术工作的项目经理 403

22.3 软硬件混合项目的项目管理 403

22.4 项目管理和外部进度压力 403

22.5 项目管理工具 404

22.6 有多名经理的大型系统的项目管理 406

22.7 时间分割或同时管理几个项目 407

22.8 控制范围或每名经理管理的人员数量 408

22.9 管理多个专业组 409

22.10 是否设立大型系统项目办公室 411

22.11 软件项目经理的经验水平 411

22.12 项目经理选择的质量控制方法 412

22.13 项目经理和度量 412

22.14 项目管理总结 413

参考资料 413

第6篇 软件维护和改进的评估 417

第23章 软件维护和改进的评估 417

23.1 软件维护和改进活动的标称默认值 420

23.2 小型软件维护项目的度量和测量问题 424

23.3 软件维护的最佳和最差实践 425

23.4 软件的熵和总体拥有成本 428

23.5 软件维护和改进活动 429

23.5.1 安装来自软件开发商的新版本和补丁 430

23.5.2 主要改进 430

23.5.3 次要改进 431

23.5.4 维护(缺陷修复) 432

23.5.5 保修修复 435

23.5.6 客户支持 435

23.5.7 易错模块的经济影响 436

23.5.8 强制变更 437

23.5.9 复杂度分析 437

23.5.10 代码重构和优化 438

23.5.11 性能优化 439

23.5.12 跨平台移植 440

23.5.13 转换为新的体系结构 440

23.5.14 逆向工程 440

23.5.15 再工程 441

23.5.16 死代码消除 441

23.5.17 休眠应用程序的消除 442

23.5.18 国际化 442

23.5.19 批量更新项目 442

23.5.20 应用的退役或撤销 443

23.5.21 现场服务 443

23.6 维护工作的组合与并发进行 444

参考文献 447

第24章 软件项目评估研究的问题 449

24.1 度量转换 449

24.2 基于用户需求的自动规模评估 451

24.3 敏捷项目、OO项目和Web项目的基于活动的成本 452

24.4 软件应用程序的复杂度分析 454

24.5 软件应用程序的价值分析 455

24.6 风险分析和软件项目评估 456

24.7 软件项目评估中的专业人员 458

24.8 重用分析和软件项目评估 459

24.9 过程改进评估 463

24.10 方法分析和软件项目评估 466

24.11 关于软件评估研究的总结和结论 468

附录 中英文词汇对照表 469

返回顶部