《软件工程 实践者的研究方法》求取 ⇩

第一部分 产品和过程1

第1章 产品1

1.1 软件的发展2

1.1.3 软件的竞争4

1.1.2 老化的软件工厂4

1.1.1 产业的观点4

1.2 软件5

1.2.1 软件特征6

1.2.2 软件构件8

1.2.3 软件应用9

1.4 软件神话10

1.3 软件:地平线上的危机10

参考文献12

1.5 小结12

推荐阅读文献及其他信息源13

思考题13

2.1.1 过程、方法和工具15

2.1 软件工程——一种层次化技术15

第2章 过程15

2.1.2 软件工程的一般视图16

2.2 软件过程17

2.3 软件过程模型19

2.4 线性顺序模型20

2.5 原型模型22

2.6 RAD模型23

2.7.1 增量模型25

2.7 演化软件过程模型25

2.7.2 螺旋模型27

2.7.3 构件组装模型28

2.7.4 并发开发模型29

2.9 第四代技术31

2.8 形式化方法模型31

2.10 过程技术32

2.12 小结33

2.11 产品和过程33

参考文献34

推荐阅读文献及其他信息源35

思考题35

3.1 管理的范围39

第3章 项目管理的概念39

第二部分 软件项目的管理39

3.2 人员40

3.1.3 过程40

3.1.1 人员40

3.1.2 问题40

3.2.2 项目负责人41

3.2.1 项目参与者41

3.2.3 软件项目组42

3.2.4 协调和通信问题44

3.3.2 问题分解46

3.3.1 软件范围46

3.3 问题46

3.4.1 合并问题和过程47

3.4 过程47

3.4.2 过程分解48

参考文献49

3.6 小结49

3.5 项目49

思考题50

推荐阅读文献及其他信息源51

4.1 测度、度量和指标53

第4章 软件过程和项目的度量53

4.2.1 过程度量和软件过程改进54

4.2 过程和项目领域中的度量54

4.2.2 项目度量57

4.3.1 面向规模的度量58

4.3 软件测量58

4.3.2 面向功能的度量59

4.3.3 扩展的功能点度量61

4.5 软件质量度量63

4.4 调和不同的度量方法63

4.5.2 测量质量64

4.5.1 概述影响质量的因素64

4.5.3 缺陷排除效率65

4.6 在软件过程中集成度量66

参考文献67

4.7 小结67

思考题68

推荐阅读文献及其他信息源69

5.1 对估算的观察71

第5章 软件项目计划71

5.3.1 获取定义软件范围所需的信息72

5.3 软件范围72

5.2 项目计划目标72

5.3.2 一个范围定义的例子73

5.4.1 人力资源75

5.4 资源75

5.4.3 环境资源76

5.4.2 可复用软件资源76

5.6 分解技术77

5.5 软件项目估算77

5.6.2 基于问题的估算78

5.6.1 软件规模估算78

5.6.3 一个基于LOC估算的例子79

5.6.4 一个基于FP估算的例子80

5.6.5 基于过程的估算81

5.6.6 一个基于过程估算的例子82

5.7.2 COCOMO模型83

5.7.1 估算模型的结构83

5.7 经验估算模型83

5.7.3 软件方程式85

5.8 自行开发或购买的决策86

5.8.1 创建决策树87

5.10 小结88

5.9 自动估算工具88

5.8.2 外购88

思考题89

参考文献89

推荐阅读文献及其他信息源90

6.2 软件风险92

6.1 被动和主动的风险策略92

第6章 风险管理92

6.3 识别风险93

6.3.2 商业影响风险94

6.3.1 产品规模风险94

6.3.4 过程风险95

6.3.3 客户相关的风险95

6.3.5 技术风险96

6.3.7 与人员数目及经验相关的风险97

6.3.6 开发环境风险97

6.4.1 建立风险表98

6.4 风险预测98

6.3.8 风险因素和驱动因子98

6.4.3 风险评估100

6.4.2 评估风险影响100

6.5 风险缓解、监控和管理101

6.7 RMMM计划103

6.6 安全性风险和危险103

思考题104

参考文献104

6.8 小结104

推荐阅读文献及其他信息源105

7.1 基本概念107

第7章 项目进度安排及跟踪107

7.1.1 关于“延迟”的评注108

7.1.2 基本原则109

7.2.1 一个例子110

7.2 人员和工作量之间的关系110

7.3 为软件项目定义任务集合111

7.2.3 工作量分布111

7.2.2 一个经验关系111

7.3.1 严格度112

7.3.3 计算任务集合选择因子的值113

7.3.2 定义适应性准则113

7.3.4 解释TSS值并选择任务集合114

7.5 主要任务的求精115

7.4 选择软件工程任务115

7.7 进度安排118

7.6 定义任务网络118

7.7.2 跟踪进度119

7.7.1 时间表119

7.9 小结122

7.8 项目计划122

思考题123

参考文献123

推荐阅读文献及其他信息源124

8.1 质量概念125

第8章 软件质量保证125

8.1.2 质量控制126

8.1.1 质量126

8.1.4 质量的成本127

8.1.3 质量保证127

8.2 质量运动128

8.3.1 背景129

8.3 软件质量保证129

8.4 软件复审130

8.3.2 SQA活动130

8.4.2 缺陷的放大和消除131

8.4.1 软件缺陷对成本的影响131

8.5.1 复审会议133

8.5 正式技术复审133

8.5.3 复审指南134

8.5.2 复审报告和记录保存134

8.6 SQA的形式化方法135

8.7 统计质量保证136

8.8 软件可靠性137

8.8.2 软件的安全和危险的分析138

8.8.1 可靠性和可用性的度量138

8.9 SQA计划139

8.10 ISO9000质量标准140

8.10.2 ISO9001标准141

8.10.1 ISO对质量保证系统的方法141

参考文献142

8.11 小结142

思考题143

推荐阅读文献及其他信息源144

9.1 软件配置管理147

第9章 软件配置管理147

9.1.1 基线148

9.1.2 软件配置项149

9.2 SCM过程150

9.3 软件配置中对象的标识151

9.4 版本控制153

9.5 变化控制154

9.8 SCM标准157

9.7 状态报告157

9.6 配置审计157

参考文献158

9.9 小结158

推荐阅读文献及其他信息源159

思考题159

10.1 基于计算机的系统161

第10章 系统工程161

第三部分 传统软件工程方法161

10.2 系统工程层次结构163

10.2.1 系统建模164

10.2.2 信息工程:概述165

10.2.3 产品工程:概述167

10.4 信息策略计划168

10.3 信息工程168

10.4.1 企业建模169

10.4.2 业务级数据建模170

10.5 业务域分析171

10.5.1 处理建模172

10.6 产品工程173

10.5.2 信息流建模173

10.6.3 可行性研究176

10.6.2 说明客户需要176

10.6.1 系统分析176

10.6.4 经济分析177

10.6.5 技术分析179

10.7 系统体系结构建模180

10.8 系统建模和仿真182

10.9 系统规约183

10.10 小结184

思考题185

参考文献185

推荐阅读文献及其他信息源187

11.1 需求分析188

第11章 分析概念和原则188

11.2.1 过程的启动189

11.2 通信技术189

11.2.2 便利的应用规约技术190

11.2.3 质量功能部署192

11.3 分析原则193

11.3.1 信息域194

11.3.2 建模195

11.3.3 划分196

11.3.4 基本视图和实现视图197

11.4.1 选择原型方法198

11.4 软件原型198

11.5 规约199

11.4.2 原型方法和工具199

11.5.2 表示200

11.5.1 规约原则200

11.5.3 软件需求规约201

11.6 规约复审202

参考文献203

11.7 小结203

思考题204

推荐阅读文献及其他信息源205

12.1 简史206

第12章 分析建模206

12.2 分析模型的元素207

12.3.1 数据对象、属性和关系208

12.3 数据建模208

12.3.2 基数和形态210

12.3.3 实体—关系图211

12.4.1 数据流图214

12.4 功能建模和信息流214

12.4.2 针对实时系统的扩展216

12.4.3 Ward和Mellor扩展217

12.4.4 Hatley和Pirbhai扩展219

12.5 行为建模220

12.6 结构化分析的技巧222

12.6.1 创建实体—关系图223

12.6.2 创建数据流模型225

12.6.3 创建控制流模型227

12.6.4 控制规约229

12.6.5 加工规约230

12.7 数据字典231

12.8.2 Jackson系统开发233

12.8.1 数据结构化系统开发233

12.8 其他传统分析方法概述233

参考文献234

12.9 小结234

12.8.3 SADT234

思考题235

推荐阅读文献及其他信息源236

13.1 软件设计和软件工程238

第13章 设计概念和原则238

13.2.1 设计和软件质量239

13.2 设计过程239

13.3 设计原则240

13.2.2 软件设计的演化240

13.4.1 抽象241

13.4 设计概念241

13.4.3 模块化242

13.4.2 求精242

13.4.4 软件体系结构244

13.4.5 控制层次245

13.4.6 结构划分246

13.4.8 软件过程247

13.4.7 数据结构247

13.5 有效的模块设计248

13.4.9 信息隐蔽248

13.5.2 内聚249

13.5.1 功能独立性249

13.5.3 耦合250

13.6 针对有效模块化的设计启发251

13.8 设计文档253

13.7 设计模型253

参考文献254

13.9 小结254

思考题256

推荐阅读文献及其他信息源256

14.1 数据设计258

第14章 设计方法258

14.2.1 贡献者259

14.2 体系结构设计259

14.3.1 变换流260

14.3 体系结构设计过程260

14.2.2 应用域260

14.4.1 一个实例261

14.4 变换映射261

14.3.2 事务流261

14.4.2 设计步骤262

14.5.2 设计步骤268

14.5.1 一个实例268

14.5 事务映射268

14.7 体系结构设计优化272

14.6 设计的后处理272

14.9 人机界面设计273

14.8.2 用户界面设计273

14.8 接口设计273

14.8.1 内部和外部接口设计273

14.9.1 界面设计模型274

14.9.3 设计问题275

14.9.2 任务分析和建模275

14.9.5 设计评估277

14.9.4 实现工具277

14.10.1 一般交互279

14.10 界面设计指南279

14.10.3 数据输入280

14.10.2 信息显示280

14.11.2 图形设计符号281

14.11.1 结构化程序设计281

14.11 过程设计281

14.11.3 表格设计符号284

14.11.5 一个PDL实例285

14.11.4 程序设计语言285

参考文献288

14.12 小结288

思考题290

推荐阅读文献及其他信息源292

15.1 系统考虑294

第15章 实时系统的设计294

15.2.1 集成和性能问题295

15.2 实时系统295

15.2.2 中断处理296

15.2.4 实时操作系统297

15.2.3 实时数据库297

15.2.6 任务同步和通信298

15.2.5 实时语言298

15.3.1 实时系统分析的数学工具299

15.3 实时系统的分析和仿真299

15.3.2 仿真和建模技术302

15.4 实时设计306

参考文献307

15.5 小结307

推荐阅读文献及其他信息源309

思考题309

16.1.1 测试目标311

16.1 软件测试基础311

第16章 软件测试技术311

16.1.3 可测试性312

16.1.2 测试原则312

16.2 测试用例设计314

16.4.1 流图符号315

16.4 基本路径测试315

16.3 白盒测试315

16.4.3 导出测试用例318

16.4.2 环形复杂性318

16.4.4 图矩阵321

16.5.1 条件测试322

16.5 控制结构测试322

16.5.2 数据流测试324

16.5.3 循环测试325

16.6.1 基于图的测试方法326

16.6 黑盒测试326

16.6.2 等价划分328

16.6.3 边界值分析329

16.7.1 GUI测试330

16.7 针对专门环境和应用的测试330

16.6.4 比较测试330

16.7.3 测试文档和帮助设施331

16.7.2 客户/服务器体系结构的测试331

16.7.4 实时系统测试332

参考文献333

16.8 小结333

思考题334

推荐阅读文献及其他信息源335

17.1.1 验证和确认337

17.1 软件测试的策略途径337

第17章 软件测试策略337

17.1.2 软件测试的组织338

17.1.3 一种软件测试策略339

17.1.4 测试完成的标准340

17.3.1 单元测试考虑342

17.3 单元测试342

17.2 策略问题342

17.3.2 单元测试规程344

17.4 集成测试345

17.4.1 自顶向下集成346

17.4.2 自底向上集成347

17.4.3 回归测试348

17.4.5 集成测试文档349

17.4.4 关于集成测试的讨论349

17.5.1 确认测试的标准350

17.5 确认测试350

17.6 系统测试351

17.5.3 Alpha和Beta测试351

17.5.2 配置复审351

17.6.3 压力测试352

17.6.2 安全测试352

17.6.1 恢复测试352

17.7.1 调试过程353

17.7 调试的技巧353

17.6.4 性能测试353

17.7.3 调试方法354

17.7.2 心理考虑354

17.8 小结355

参考文献356

推荐阅读文献及其他信息源357

思考题357

18.1 软件质量359

第18章 软件的技术度量359

18.1.1 McCall的质量因素360

18.1.3 到量化视图的变迁362

18.1.2 FURPS362

18.2.2 测度原则363

18.2.1 技术度量的挑战363

18.2 软件技术度量框架363

18.2.3 有效软件度量的属性364

18.3.1 基于功能的度量365

18.3 分析模型的度量365

18.3.2 “撞击值”度量366

18.3.3 规约质量的度量368

18.4.1 高层设计度量369

18.4 设计模型的度量369

18.4.2 构件级设计度量371

18.4.3 界面设计度量373

18.5 源代码度量374

18.6 对测试的度量375

18.8 小结376

18.7 对维护的度量376

参考文献377

思考题378

推荐阅读文献及其他信息源379

第19章 面向对象的概念和原则381

第四部分 面向对象的软件工程381

19.1 面向对象的范型382

19.2 面向对象概念383

19.2.1 类和对象385

19.2.4 消息386

19.2.3 操作方法和服务386

19.2.2 属性386

19.2.5 封装、继承和多态388

19.3.1 标识类和对象390

19.3 标识对象模型的元素390

19.3.2 表示属性393

19.3.4 完成对象定义394

19.3.3 定义操作394

19.4.1 OO的公共过程框架395

19.4 面向对象软件项目的管理395

19.4.2 面向对象项目的度量和估算396

19.4.3 一种OO估算和进度安排方法397

19.4.4 面向对象项目的跟踪过程398

参考文献399

19.5 小结399

推荐阅读文献及其他信息源400

思考题400

20.1.1 传统方法和OO方法402

20.1 面向对象的分析402

第20章 面向对象分析402

20.1.2 OOA概述403

20.2.2 领域分析过程406

20.2.1 复用和领域分析406

20.2 领域分析406

20.3 00分析模型的类属成分408

20.4.1 使用实例409

20.4 OOA过程409

20.4.2 类—责任—协作者建模410

20.4.3 定义结构和层次414

20.4.4 定义主题和子系统415

20.5 对象—关系模型416

20.6 对象—行为模型418

20.6.2 状态表示419

20.6.1 用使用实例标识事件419

参考文献422

20.7 小结422

思考题423

推荐阅读文献及其他信息源424

21.1 面向对象系统的设计426

第21章 面向对象设计426

21.1.1 传统方法和OO方法427

21.1.2 设计问题428

21.1.3 OOD概述429

21.2 OO设计模型的类属成分432

21.3.1 划分分析模型433

21.3 系统设计过程433

21.3.3 任务管理构件434

21.3.2 并发性和子系统分配434

21.3.6 人机界面构件435

21.3.5 资源管理构件435

21.3.4 数据管理构件435

21.3.7 子系统间通信436

21.4.1 对象描述437

21.4 对象设计过程437

21.4.2 设计算法和数据结构438

21.4.3 程序构件和接口439

21.5.2 在设计中使用设计模式442

21.5.1 描述设计模式442

21.5 设计模式442

参考文献443

21.7 小结443

21.6 面向对象编程443

思考题444

推荐阅读文献及其他信息源445

22.1 扩大测试的视角447

第22章 面向对象测试447

22.2.2 OOA和OOD模型的一致性448

22.2.1 OOA和OOD模型的正确性448

22.2 测试OOA和OOD模型448

22.3 面向对象的测试策略449

22.4 OO软件的测试用例设计450

22.3.3 在OO语境中的有效性测试450

22.3.1 在OO语境中的单元测试450

22.3.2 在OO语境中的集成测试450

22.4.3 基于故障的测试451

22.4.2 传统测试用例设计方法的可用性451

22.4.1 OO概念的测试用例设计的含义451

22.4.4 OO编程对测试的影响452

22.4.6 基于场景的测试设计453

22.4.5 测试用例和类层次453

22.4.7 测试表层结构和深层结构454

22.5.2 在类级别上的划分测试455

22.5.1 对OO类的随机测试455

22.5 在类级别上可用的测试方法455

22.6.1 多个类测试456

22.6 类间测试用例设计456

22.6.2 从行为模型导出的测试457

参考文献458

22.7 小结458

推荐阅读文献及其他信息源459

思考题459

23.2.1 局部化461

23.2 区别性的特征461

第23章 面向对象系统的技术度量461

23.1 面向对象度量的目的461

23.3 对OO设计模型的度量462

23.2.5 抽象462

23.2.2 封装462

23.2.3 信息隐蔽462

23.2.4 继承462

23.4.1 CK度量套件463

23.4 面向类的度量463

23.4.2 Lorenz和Kidd建议的度量465

23.6 对面向对象测试的度量466

23.5 面向操作的度量466

23.8 小结467

23.7 对面向对象项目的度量467

思考题468

参考文献468

推荐阅读文献及其他信息源469

24.1 基本概念471

第24章 形式化方法471

第五部分 软件工程高级课题471

24.1.1 少量的形式化方法的不足472

24.1.3 形式化方法概念473

24.1.2 软件开发中的数学473

24.2.1 集合和构造性规约477

24.2 数学预备知识477

24.2.2 集合运算符478

24.2.4 序列480

24.2.3 逻辑运算符480

24.3 应用数学符号描述形式规约481

24.4 形式化规约语言482

24.5 用Z表示一个软件构件的例子483

24.6 形式化方法的十条戒律485

24.8 小结486

24.7 形式化方法——未来之路486

思考题487

参考文献487

推荐阅读文献及其他信息源488

25.1.1 净室策略490

25.1 净室方法490

第25章 净室软件工程490

25.2 功能规约492

25.1.2 什么使得净室独特?492

25.2.1 黑盒规约493

25.2.3 清晰盒规约494

25.2.2 状态盒规约494

25.3.1 设计求精和验证495

25.3 设计求精和验证的优点495

25.3.2 设计验证的优点498

25.4.1 统计的使用测试499

25.4 净室测试499

25.5 小结500

25.4.2 认证500

参考文献501

推荐阅读文献及其他信息源502

思考题502

26.1.1 复用的障碍505

26.1 管理问题505

第26章 软件复用505

26.1.2 硬件类比506

26.2 复用过程507

26.1.3 建立复用途径的一些建议507

26.2.1 可复用的软件制品508

26.3 领域工程509

26.2.2 一个过程模型509

26.3.1 领域分析过程510

26.3.3 结构建模和结构点511

26.3.2 领域特征511

26.4 建造可复用构件512

26.4.1 为了复用的分析和设计512

26.4.2 构造方法513

26.4.3 基于构件的开发514

26.5 分类和检索构件515

26.5.1 描述可复用构件515

26.5.2 复用环境517

26.6 软件复用经济学517

26.6.1 对质量、生产率和成本的影响517

26.6.2 使用结构点的成本分析518

26.6.3 复用度量519

26.7 小结519

参考文献520

思考题521

推荐阅读文献及其他信息源522

27.1 业务过程再工程524

27.1.1 业务过程524

第27章 再工程524

27.1.2 业务过程再工程的原则526

27.1.3 BPR模型527

27.2 软件再工程528

27.2.1 软件维护528

27.1.4 几句警告528

27.2.2 软件再工程过程模型529

27.3 逆向工程532

27.3.1 理解处理的逆向工程533

27.3.2 理解数据的逆向工程533

27.3.3 用户界面的逆向工程534

27.4 重构535

27.4.1 代码重构535

27.4.2 数据重构536

27.5 正向工程536

27.5.1 向客户/服务器体系结构的正向工程537

27.5.2 向面向对象体系结构的正向工程538

27.5.3 用户界面的正向工程538

27.7 小结539

参考文献539

27.6 再工程经济学539

思考题541

推荐阅读文献及其他信息源542

第28章 客户/服务器软件工程543

28.1 客户/服务器系统的结构543

28.1.1 C/S系统的软件构件544

28.1.2 软件构件的分布545

28.1.3 分布应用构件的指南545

28.1.4 连接C/S软件构件546

28.1.5 中间件和对象请求代理体系结构546

28.2 对C/S系统的软件工程547

28.4 对C/S系统的设计548

28.4.1 传统设计方法548

28.3 分析建模问题548

28.4.2 数据库设计549

28.4.3 某设计方法的概述550

28.4.4 加工设计的迭代551

28.5 测试问题552

28.5.1 整体C/S测试策略552

28.5.2 C/S测试策略553

28.6小结554

参考文献554

思考题555

推荐阅读文献及其他信息源555

29.1 什么是CASE?557

29.2 构造CASE的积木块557

第29章 计算机辅助软件工程557

29.3 CASE工具分类559

29.4 集成化CASE环境562

29.5 集成体系结构563

29.6 CASE中心库563

29.6.1 在I-CASE中中心库的角色564

29.6.2 特征和内容564

29.7 小结567

参考文献567

思考题568

推荐阅读文献及其他信息源568

第30章 未来之路570

30.1 软件的重要性——再论570

30.2 变化的范围571

30.3 人及他们建造系统的方式572

30.4 “新”的软件过程574

30.5 表示信息的新模式574

30.6 技术作为推动力576

30.7 结束语577

思考题578

推荐阅读文献及其他信息源578

参考文献578

1999《软件工程 实践者的研究方法》由于是年代较久的资料都绝版了,几乎不可能购买到实物。如果大家为了学习确实需要,可向博主求助其电子版PDF文件(由(美)(R.S.普雷斯曼)Roger S.Pressman著 1999 北京:机械工业出版社 出版的版本) 。对合法合规的求助,我会当即受理并将下载地址发送给你。

高度相关资料

软科学的崛起  软科学研究的实践(1988 PDF版)
软科学的崛起 软科学研究的实践
1988 北京:地震出版社
软件测试技术与实践研究(2020 PDF版)
软件测试技术与实践研究
2020
软件工程:方法·工具·实践 第二版(1988 PDF版)
软件工程:方法·工具·实践 第二版
1988
软件工程:方法、工具和实践( PDF版)
软件工程:方法、工具和实践
安徽微型计算机函授大学
应用软件实践教程(1986 PDF版)
应用软件实践教程
1986 西北电讯工程学院出版社
软件工程方法(1993 PDF版)
软件工程方法
1993 北京:科学出版社
软件实践指南(1991 PDF版)
软件实践指南
1991 西安:西安电子科技大学出版社
软件工程方法(1992 PDF版)
软件工程方法
1992 北京:科学出版社
软件工程(1997 PDF版)
软件工程
1997 北京:高等教育出版社
软件工程实践者的研究方法  英文版·第4版(1999 PDF版)
软件工程实践者的研究方法 英文版·第4版
1999 北京:机械工业出版社
实用软件工程(1997 PDF版)
实用软件工程
1997 北京:清华大学出版社
实用软件工程(1990 PDF版)
实用软件工程
1990 北京:科学技术文献出版社;重庆分社
计算机软件实践教程(1985 PDF版)
计算机软件实践教程
1985 西北电讯工程学院出版社
软件工程(1994 PDF版)
软件工程
1994 北京:中国铁道出版社
计算机软件质量保证的方法和实践(1999 PDF版)
计算机软件质量保证的方法和实践
1999 北京市:科学出版社