|
編輯推薦: |
《软件工程》的八篇内容重构为四个部分,使教师讲授软件工程课程更加容易。每一章都有30%~40%的更新,增加了敏捷软件开发和嵌入式系统等新章,补充了模型驱动工程、开源开发、测试驱动开发、可依赖系统体系结构、静态分析和模型检查、COTS复用、服务作为软件以及敏
捷规划等新内容。着重讨论了开发可靠的分布式系统的相关主题以及敏捷方法和软件复用。反映敏捷方法先进性的同时,不忘强调传统的计划驱动软件工程的作用,阐述了两者结合构建优秀软件系统的重要性。以一个新的病人记录系统案例研究贯穿始终,系统、完整地讲解软件工程的各个方面。《软件工程》设计为“印刷/Web”相结合的方式,核心信息采用印刷版本,教辅材料及先前版本中的一些章节放在Web上,为读者提供丰富翔实的信息。
|
內容簡介: |
本书是系统介绍软件工程理论的经典教材,自1982年初版以来,随着软件工程学科的不断发展,不断更新版本,影响了一代又一代软件工程人才,对学科本身也产生了重大影响。本版保留了上一版中的软件工程的基本材料,但对各章都进行了修改和更新,并增加了很多有关其他主题的新材料。
本书包含四个部分:第一部分是对软件工程的一般性介绍,包括软件工程过程和敏捷开发,以及面向对象的设计和设计模式的使用;第二部分介绍可依赖性和信息安全性问题;第三部分介绍高级软件工程;第四部分介绍软件管理,重点介绍技术管理问题。
|
目錄:
|
出版者的话
译者序
前言
第一部分 软件工程导论
第1章 概述
1.1 专业化软件开发
1.1.1 软件工程
1.1.2 软件工程的多样性
1.1.3 软件工程和Web
1.2 软件工程人员的职业道德
1.3 案例研究
1.3.1 胰岛素泵控制系统
1.3.2 用于心理健康治疗的患者
信息系统
1.3.3 野外气象站
要点
进一步阅读材料
练习
参考书目
第2章 软件过程
2.1 软件过程模型
2.1.1 瀑布模型
2.1.2 增量式开发
2.1.3 面向复用的软件工程
2.2 过程活动
2.2.1 软件描述
2.2.2 软件设计和实现
2.2.3 软件有效性验证
2.2.4 软件进化
2.3 应对变更
2.3.1 原型构造
2.3.2 增量式交付
2.3.3 Boehm的螺旋模型
2.4 Rational统一过程
要点
进一步阅读材料
练习
参考书目
第3章 敏捷软件开发
3.1 敏捷方法
3.2 计划驱动开发和敏捷开发
3.3 极限编程
3.3.1 极限编程中的测试
3.3.2 结对编程
3.4 敏捷项目管理
3.5 扩展的敏捷方法
要点
进一步阅读材料
练习
参考书目
第4章 需求工程
4.1 功能需求和非功能需求
4.1.1 功能需求
4.1.2 非功能需求
4.2 软件需求文档
4.3 需求描述
4.3.1 自然语言描述
4.3.2 结构化描述
4.4 需求工程过程
4.5 需求导出和分析
4.5.1 需求发现
4.5.2 采访
4.5.3 脚本
4.5.4 用例
4.5.5 深入实际
4.6 需求有效性验证
4.7 需求管理
4.7.1 需求管理规划
4.7.2 需求变更管理
要点
进一步阅读材料
练习
参考书目
第5章 系统建模
5.1 上下文模型
5.2 交互模型
5.2.1 用例建模
5.2.2 时序图
5.3 结构模型
5.3.1 类图
5.3.2 泛化
5.3.3 聚合
5.4 行为模型
5.4.1 数据驱动的建模
5.4.2 事件驱动模型
5.5 模型驱动工程
5.5.1 模型驱动体系结构
5.5.2 可执行UML
要点
进一步阅读材料
练习
参考书目
第6章 体系结构设计
6.1 体系结构设计决策
6.2 体系结构视图
6.3 体系结构模式
6.3.1 分层体系结构
6.3.2 容器体系结构
6.3.3 客户机一服务器体系结构
6.3.4 管道和过滤器体系结构
6.4 应用体系结构
6.4.1 事务处理系统
6.4.2 信息系统
6.4.3 语言处理系统
要点
进一步阅读材料
练习
参考书目
第7章 设计与实现
7.1 利用UML进行面向对象设计
7.1.1 系统上下文与交互
7.1.2 体系结构的设计
7.1.3 对象类识别
7.1.4 设计模型
7.1.5 接口描述
7.2 设计模式
7.3 实现问题
7.3.1 复用
7.3.2 配置管理
7.3.3 宿主机一目标机开发
7.4 开源开发
要点
进一步阅读材料
练习
参考书目
第8章 软件测试
8.1 开发测试
8.1.1 单元测试
8.1.2 选择单元测试案例
8.1.3 组件测试
8.1.4 系统测试
8.2 测试驱动开发
8.3 发布测试
8.3.1 基于需求的测试
8.3.2 情景测试
8.3.3 性能测试
8.4 用户测试
要点
进一步阅读材料
练习
参考书目
第9章 软件进化
9.1 进化过程
9.2 程序进化的动态特性
9.3 软件维护
9.3.1 维护预测
9.3.2 软件再工程
9.3.3 通过重构进行预防性维护
9.4 遗留系统管理
要点
进一步阅读材料
练习
参考书目
第二部分 可依赖性和信息安全性
第三部分 高级软件工程
第四部分 软件管理
|
|