软件工程——原理、方法与应用(第3版)
作者: 史济民,顾春华等
出版时间:2009-03-24
出版社:高等教育出版社
普通高等教育“十一五”国家级规划教材
- 高等教育出版社
- 9787040261462
- 3
- 112716
- 46242757-6
- 平装
- 异16开
- 2009-03-24
- 500
- 372
- 工学
- 软件工程
- TP311.5
- 计算机科学与技术
- 本科
作为一本注重能力培养的实践型教材,第3版继承并保持了“注重实践”的风格,将全书分编为绪论和上、中、下3篇,共14章。内容分别为:上篇为传统软件工程,包括软件生存周期与软件过程、结构化分析与设计;中篇为面向对象软件工程,包括面向对象与UML、需求工程与需求分析、面向对象分析、面向对象设计、编码与测试;下篇为软件工程的近期进展、管理与环境,包括软件维护、软件复用、软件工程管理、软件质量管理、软件工程环境、软件工程高级课题。与第2版相比,本版将“并行介绍传统的和面向对象的软件工程”改变为“重点介绍面向对象的软件工程”,并在“面向对象分析”和“面向对象设计”两章分别给出案例;通过“软件工程高级课题”,对Web工程及基于体系结构的软件开发等热门课题集中进行了简要的讲解。
本书结构合理、文字通俗、例题丰富、可读性强,主要面向计算机及相关专业本科生,亦可供软件开发人员作为参考。
前言
第1章 绪论
11 软件和软件危机
111 软件的定义
112 软件的特征
113 软件危机
12 软件工程学的范畴
121 软件开发方法学
122 软件工具
123 软件工程环境
124 软件工程管理
13 软件工程的发展
131 3 种编程范型
132 3 代软件工程
14 软件工程的应用
141 在各种规模软件开发中的应用
142 软件工程的成就与发展展望
15 软件工程的教学:本书导读
小结
习题
上篇 传统软件工程
第2章 软件生存周期与软件过程
21 软件生存周期
211 软件生存周期的主要活动
212 生存周期与软件过程的关系
22 传统的软件过程
221 瀑布模型
222 快速原型模型
23 软件演化模型
231 增量模型
232 螺旋模型
233 构件集成模型
24 形式化方法模型
241 转换模型
242 净室模型
25 统一过程和敏捷过程
251 统一过程
252 敏捷过程
253 极限编程
26 软件可行性研究
261 可行性研究的内容与步骤
262 软件风险分析
263 项目实施计划
小结
习题
第3章 结构化分析与设计
31 概述
311 结构化分析与设计的由来
312 SA 模型的组成与描述
313 SD 模型的组成与描述
32 结构化系统分析
321 画分层数据流图
322 确定数据定义与加工策略
323 需求分析的复审
33 结构化系统设计
331 SD 概述
332 SD 的步骤:从DFD 图到SC 图
333 变换映射
334 事务映射
335 优化初始SC 图的指导规则
336 教材购销系统的总体结构
34 模块设计
341 目的与任务
342 模块设计的原则与方法
343 常用的表达工具
小结
习题
中篇 面向对象软件工程
第4章 面向对象与UML
41 面向对象概述
411 对象和类
412 面向对象的基本特征
413 面向对象开发的优点
42 UML 简介
421 UML 的组成
422 UML 的特点
423 UML 的应用
43 静态建模
431 用例图与用例模型
432 类图和对象图
433 包
44 动态建模
441 消息
442 状态图
443 时序图和协作图
444 活动图
45 物理架构建模
451 物理架构
452 构件图和部署图
46 UML 工具
461 Rational Rose
462 StarUML
小结
习题
第5章 需求工程与需求分析
51 软件需求工程
511 软件需求的定义
512 软件需求的特性
513 需求工程的由来
52 需求分析与建模
521 需求分析的步骤
522 需求分析是迭代过程
53 需求获取的常用方法
531 常规的需求获取方法
532 用快速原型法获取需求
54 需求模型
541 需求模型概述
542 面向对象的需求建模
55 软件需求描述
56 需求管理
561 需求管理的内容
562 需求变更控制
563 需求管理工具
57 需求建模示例
571 问题陈述
572 用例模型
573 补充规约
574 术语表
小结
习题
第6章 面向对象分析
61 软件分析概述
611 面向对象软件分析
612 面向对象分析模型
62 面向对象分析建模
621 识别与确定分析类
622 建立对象-行为模型
623 建立对象-关系模型
63 面向对象分析示例
631 注册
632 维护个人信息
633 维护购物车
634 生成订单
635 管理订单
小结
习题
第7章 面向对象设计
71 软件设计概述
711 软件设计的概念
712 软件设计的任务
713 模块化设计
72 面向对象设计建模
721 面向对象设计模型
722 面向对象设计的任务
723 模式的应用
73 系统架构设计
731 系统高层结构设计
732 确定设计元素
733 任务管理策略
734 分布式实现机制
735 数据存储设计
736 人机交互设计
74 系统元素设计
741 子系统设计
742 分包设计
743 类/对象设计
75 面向对象设计示例
751 关联关系的具体化
752 网上购物系统的架构设计
753 网上购物系统的类/对象设计
小结
习题
第8章 编码与测试
81 编码概述
811 编码的目的
812 编码的风格
82 编码语言与编码工具
821 编码语言的发展
822 常用的编程语言
823 编码语言的选择
824 编码工具
83 编码示例
831 注册功能编码实现
832 维护购物车功能编码实现
84 测试的基本概念
841 目的与任务
842 测试的特性
843 测试的种类
844 测试的文档
845 软件测试过程
85 黑盒测试和白盒测试
851 黑盒测试
852 白盒测试
86 测试用例设计
861 黑盒测试用例设计
862 白盒测试用例设计
87 多模块程序的测试策略
871 测试的层次性
872 单元测试
873 集成测试
874 确认测试
875 系统测试
876 终止测试的标准
88 面向对象系统的测试
881 OO 软件的测试策略
882 OO 软件测试用例设计
小结
习题
下篇 软件工程的近期进展、管理与环境
第9章 软件维护
91 软件维护的种类
92 软件可维护性
93 软件维护的实施
94 软件维护的管理
95 软件配置管理
96 软件再工程
小结
习题
第10章 软件复用
101 软件复用的基本概念
1011 软件复用的定义
1012 软件复用的措施
1013 软件复用的粒度
102 领域工程
1021 横向复用和纵向复用
1022 实施领域分析
1023 开发可复用构件
1024 建立可复用构件库
103 基于构件的软件开发
1031 构件集成模型
1032 应用系统工程
104 面向对象与软件复用
1041 OO 方法对软件复用的支持
1042 复用技术对OO方法的支持
1043 基于构件软件开发的现状与问题
小结
习题
第11章 软件工程管理
111 管理的目的与内容
112 软件估算模型
1121 资源估算模型
1122 COCOMO 模型
113 软件成本估计
114 人员的分配与组织
115 项目进度安排
小结
习题
第12章 软件质量管理
121 从质量保证到质量认证
122 质量保证
1221 软件的质量属性
1222 质量保证的活动内容
123 软件可靠性
1231 可靠性的定义和分级
1232 可靠性模型
1233 软件容错技术
124 程序正确性证明
125 CMM 软件能力成熟度模型
1251 CMM 的基本概念
1252 软件能力成熟度等级
1253 CMM 的应用
1254 CMM 评估的实施
1255 软件过程评估的SPICE 国际标准
126 ISO 9000 国际标准
1261 ISO 9001 和ISO 9000-3
1262 ISO 9000 标准对软件企业的重要性
1263 在软件企业中实施ISO 9000 标准
127 软件度量
1271 项目度量
1272 过程度量
小结
习题
第13 章 软件工程环境
131 什么是软件工程环境
1311 软件开发环境的特点
1312 理想环境的模型
1313 CASE 环境
132 CASE 环境的组成与结构
1321 CASE 的组成构件
1322 CASE 的一般结构
133 CASE 环境实例
1331 Rational SUITE Enterprise Studio
1332 青鸟系统
小结
习题
第14 章 软件工程高级课题
141 Web 工程
1411 Web 工程与软件工程
1412 Web 开发
142 基于体系结构的软件开发
1421 应用软件的体系结构
1422 编程范型对体系结构的影响
1423 编程范型对复用粒度的影响
1424 软件体系结构技术仍在发展
143 面向方面的软件开发
1431 面向方面编程
1432 AOP 语言规范
1433 AOP 与OOP 比较
1434 面向方面软件开发
144 形式化的软件开发
1441 形式化方法的定义
1442 形式化的软件开发
小结
习题
附录 缩略语中英文对照表
主要参考文献
版权