《软件工程最佳实践》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:(美)琼斯(JonesC.)著;吴舜贤,杨传辉,韩生亮译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2014
  • ISBN:9787111445401
  • 页数:488 页
图书介绍:本书从软件工程的宏观层面,以专业的视角,摆事实、举数据,对比各种软件工程实践,剖析优劣,洞悉软件工程的是非与成败,揭露各种软件工程实践的伪真理,深刻指出软件项目中存在的各种问题的实质,为并给出中肯的改进建议和解决方案。这些最佳实践,来自作者所研究的超过600家全球知名软件公司和30余个美国大型政府组织,可以称得上是软件行业半个世纪以来全球范围内软件工程实践的精华。本书共分9章。第1章给出软件工程“最佳实践”的定义,第2章探讨软件工程领域的50条最佳实践,第3章展望未来软件开发的状况,第4章评估学习新的软件工程信息的17个渠道,第5章展示许多不同类型组织结构的考察结果,第6章讨论涉及项目管理的关键职能,第8章探讨编程和代码开发工作以及度量编程效率和编程质量水平的方法等,第9章讨论正式审查、静态分析以及其他17种不同形式测试方法的优势和劣势等。

第1章 软件最佳实践的介绍和定义 1

1.1什么是“最佳实践”?如何进行评估 5

1.2软件开发、部署以及维护的多种路径 7

1.3软件部署的路径 9

1.4维护和部署的路径 10

1.5软件开发、部署以及维护的量化 12

1.6软件工程中的关键主题 14

1.7方法、实践以及社会学因素的总排名 18

1.8总结 28

参考文献 28

第2章 50个软件最佳实践概述 31

2.1最大限度地减少裁员所带来的危害 33

2.2技术人员的积极性和动力 35

2.3经理和高管的积极性与动力 37

2.4软件人才的选拔和招聘 39

2.5软件人员的考核以及职业生涯规划 39

2.6软件应用早期的范围控制 40

2.7软件应用的外包 41

2.8使用承包商和管理顾问 44

2.9选择软件方法、工具以及做法的最佳实践 45

2.10认证方法、工具以及实践 49

2.11软件应用的需求 54

2.12用户参与软件项目 55

2.13软件应用中的行政管理支持 56

2.14软件架构和设计 57

2.15软件项目规划 58

2.16软件项目的成本估算 59

2.17软件项目的风险分析 61

2.18软件项目的价值分析 63

2.19取消或拯救陷入困境的项目 64

2.20软件项目的组织结构 65

2.21培训软件项目经理 67

2.22培训软件技术人员 69

2.23使用软件专家 69

2.24软件工程师、专家以及管理人员的认证 71

2.25软件项目中的沟通 73

2.26软件的可重用性 74

2.27可重用材料的认证 76

2.28编程 80

2.29软件项目管理 82

2.30软件项目的度量和指标 82

2.31软件的基准和基线 84

2.32软件项目的里程碑和成本跟踪 86

2.33软件发布前的变更控制 87

2.34配置控制 89

2.35软件质量保证 90

2.36审查以及静态分析 92

2.37测试和测试库的控制 95

2.38软件的安全性分析与控制 98

2.39软件的性能分析 100

2.40软件的国际标准 101

2.41软件中的知识产权保护 101

2.42防止病毒、间谍软件以及黑客 103

2.43软件的部署和定制 114

2.44培训软件应用的客户或用户 115

2.45软件应用部署后的客户支持 116

2.46软件担保和召回 117

2.47软件发布后的变更管理 118

2.48软件的维护和功能增强 119

2.49软件应用的更新和发布 121

2.50遗留应用的终止或撤销 122

2.51总结 123

参考文献 123

第3章 2049年的软件开发和维护预览 133

3.1引言 133

3.2需求分析 134

3.3设计 136

3.4软件开发 138

3.5用户文档 140

3.6客户支持 140

3.7部署和客户培训 142

3.8软件维护和功能增强 143

3.9软件外包 146

3.10软件包评估和收购 152

3.11技术选择和技术转型 154

3.12企业架构和项目组合分析 156

3.13软件学习预览 158

3.14尽职调查 160

3.15认证和授权 162

3.16软件诉讼 164

3.17总结 166

参考文献 167

第4章 软件人员如何学习新技能 168

4.1引言 168

4.2软件学习渠道的演变 169

4.3软件工程师当前需要学习哪些技术主题 171

4.4软件工程专家 173

4.5软件专业的种类 175

4.6专家与普通软件人员的大概比率 178

4.7评估软件工程师所使用的学习渠道 179

4.8需要额外教育的软件领域 196

4.9软件学习的新动向 197

4.10总结 198

4.11软件管理和技术类主题课程 198

参考文献 201

第5章 软件团队的组织和专业化 203

5.1引言 203

5.2量化组织结果 204

5.3割裂的信息技术和系统软件世界 204

5.4集中办公与分布式开发 205

5.5软件专家组织面临的挑战 207

5.6由小到大的软件组织结构 209

5.7大型公司的专家组织 226

5.8总结 254

参考文献 255

第6章 项目管理和软件工程 257

6.1引言 257

6.2软件规模估算 263

6.3软件进度与问题跟踪 296

6.4软件基准 300

6.5总结 318

参考文献 318

第7章 需求、业务分析、架构及设计 322

7.1引言 322

7.2软件需求 323

7.3软件需求方法论及实践 337

7.4业务分析 347

7.5软件架构 349

7.6企业架构师 352

7.7软件设计 356

7.8总结 360

参考文献 361

第8章 编程和代码开发 364

8.1引言 364

8.2编程语言开发简史 364

8.3我们为什么会有超过2500种编程语言 366

8.4编程语言普及性的探索 369

8.5我们到底需要多少种编程语言 372

8.6建立一个国家级的编程语言翻译中心 374

8.7为什么大多数软件都使用2~15种编程语言 377

8.8有多少程序员使用多种编程语言 378

8.9源代码中通常会出现何种类型的缺陷 380

8.10软件缺陷的逻辑和属性 382

8.11软件源代码缺陷的预防和去除 387

8.12编程缺陷预防方法 388

8.13缺陷去除方法 396

8.14“代码行”度量方法的经济学问题 403

8.15总结 415

参考文献 416

第9章 软件质量:软件工程成功的关键 419

9.1引言 419

9.2软件质量定义 421

9.3软件质量度量 441

9.4软件缺陷预防 453

9.5软件缺陷去除 462

9.6软件质量专家 467

9.7软件质量的经济价值 479

9.8总结 486

参考文献 486