图书目录

目录

第一部分软件工程理论基础

第1章软件工程概述

1.1关于软件

1.1.1软件的概念与特性

1.1.2软件开发技术演化

1.2关于软件工程

1.2.1软件危机的出现

1.2.2解决软件危机的途径

1.2.3软件工程概念

1.3软件工程基本原理与原则

1.3.1基本原理

1.3.2基本原则

1.4软件工程范型

1.4.1结构化开发范型

1.4.2面向对象开发范型

1.5软件工程基本活动

1.6小结

习题

第2章软件过程与模型

2.1软件生存周期

2.2软件过程与框架

2.3软件过程选择与评估

2.3.1软件过程选择

2.3.2软件过程评估

2.3.3个人软件过程与团队软件过程

2.4软件能力成熟度模型

2.4.1什么是CMM

2.4.2CMM基本内容

2.4.3能力成熟度模型集成

2.5软件过程模型

2.6传统的软件过程模型

2.6.1瀑布模型

2.6.2增量模型

2.6.3螺旋模型

2.7面向对象过程模型

2.7.1构件集成模型

2.7.2统一过程模型

2.8小结

习题

目录

第3章敏捷软件工程方法

3.1敏捷软件工程过程

3.1.1敏捷过程

3.1.2敏捷开发原则

3.2Scrum软件开发过程

3.2.1Scrum思想

3.2.2Scrum术语与过程

3.3极限编程

3.3.1什么是极限编程

3.3.2极限编程的要素

3.4结对编程

3.4.1什么是结对编程

3.4.2结对编程方式

3.5小结

习题

第4章需求获取

4.1关于用户需求和软件需求

4.2需求获取过程

4.3基于会谈的需求获取方法

4.4基于调查的需求获取方法

4.5基于场景的需求获取方法

4.6基于用例的需求获取方法

4.6.1用例分析

4.6.2构建活动图或泳道图

4.6.3用例详细描述

4.7小结

习题

第二部分结构化软件工程范型

第5章结构化分析

5.1结构化分析概述

5.2结构化分析模型

5.3数据流分析方法

5.3.1数据流图

5.3.2数据字典

5.3.3数据流分析方法的步骤

5.4数据建模分析方法

5.5状态分析方法

5.6结构化分析过程

5.7软件需求规格说明文档

5.8小结

习题

第6章结构化设计

6.1结构化设计概述

6.2软件设计过程

6.2.1概要设计

6.2.2详细设计

6.3结构化设计原理

6.4模块独立性度量

6.5软件结构化设计

6.5.1软件结构描述

6.5.2数据流模型

6.5.3软件结构化设计方法

6.6软件详细设计

6.6.1详细设计任务

6.6.2详细设计方法

6.7小结

习题

第7章结构化软件测试

7.1软件测试概述

7.1.1软件测试的目的

7.1.2验证和确认

7.1.3软件测试的原则

7.2软件测试的基本过程

7.2.1单元测试

7.2.2集成测试

7.2.3验证测试

7.2.4确认测试

7.3测试用例设计

7.4黑盒测试方法

7.4.1等价类划分

7.4.2边界值分析

7.4.3错误推测

7.5白盒测试方法

7.5.1逻辑覆盖

7.5.2路径覆盖

7.5.3循环路径测试策略

7.6集成测试方法

7.6.1集成策略

7.6.2性能测试

7.7小结

习题

第三部分面向对象软件工程范型

第8章面向对象分析

8.1面向对象分析模型

8.1.1逻辑模型

8.1.2交互模型

8.1.3实现模型

8.1.4部署模型

8.2面向对象建模语言

8.2.1UML的组成

8.2.2UML的视图

8.3面向对象分析过程

8.4业务建模

8.4.1识别业务类和领域类

8.4.2构建业务类图

8.4.3识别属性和操作

8.4.4构建协作图

8.4.5构建包图

8.4.6构建软件的逻辑架构

8.5软件的交互行为分析

8.5.1建立软件顺序图

8.5.2建立操作契约

8.5.3建立顺序图

8.5.4建立系统状态图

8.6小结

习题

第9章面向对象设计

9.1面向对象设计概述

9.1.1面向对象设计过程

9.1.2面向对象设计原则

9.2构件设计

9.3确定并发性

9.4面向对象详细设计

9.4.1模型精化

9.4.2逻辑架构精化与设计模式

9.4.3类详细设计

9.5部署设计

9.6小结

习题

第10章面向对象实现与测试

10.1面向对象实现

10.2面向对象测试基础

10.2.1面向对象分析阶段的测试

10.2.2面向对象设计阶段的测试

10.2.3面向对象编程阶段的测试

10.3面向对象测试过程

10.3.1类方法测试

10.3.2类测试

10.3.3类簇测试

10.3.4系统测试

10.4小结

习题

第四部分软件维护与项目管理

第11章软件维护

11.1软件维护概述

11.2软件的可维护性

11.3软件维护活动的类型

11.4软件维护技术与过程

11.4.1软件维护技术

11.4.2软件维护过程

11.5提高软件的可维护性

11.6小结

习题

第12章软件项目管理

12.1软件项目管理概述

12.2软件工程管理度量

12.2.1软件过程度量

12.2.2软件项目度量

12.3软件风险管理

12.3.1风险识别

12.3.2风险预测

12.3.3风险管理

12.4软件配置管理

12.4.1基本概念

12.4.2软件配置管理活动

12.4.3版本管理

12.5软件项目规模估算

12.5.1软件项目资源

12.5.2软件项目规模度量

12.6软件项目估算的分解技术

12.6.1基于问题分解的估算

12.6.2基于过程分解的估算

12.6.3中级COCOMO估算模型

12.7软件质量管理

12.8软件项目进度管理

12.8.1进度计划

12.8.2进度安排

12.8.3进度跟踪

12.9小结

习题

参考文献