标题：软件工程：原理、方法与应用
图书信息
出版社: 高等教育出版社; 第3版 (2009年3月1日)
丛书名: 普通高等教育“十一五”国家级规划教材
平装: 372页
正文语种: 简体中文
开本: 16
ISBN: 9787040261462
条形码: 9787040261462
尺寸: 23.2 x 18.6 x 1.6 cm
重量: 522 g
作者简介
史济民，教授，毕业于上海交通大学电机工程系，在原成都科技大学历任教研室主任、副教授和教授，现为华东理工大学计算中心顾问、全国高校计算机基础教育研究会荣誉副会长。长期从事计算机软件的教学与研究。近20年来先后编写高校计算机教材近30种，发行逾300万册，有6种教材获得教育部或上海市普通高校优秀教材一、二等奖等奖励，其中《软件工程——原理、方法与应用》（第1、2版）在17年内发行量沂30万册。
内容简介
《软件工程:原理、方法与应用(第3版)(2010改版)》作为一本注重能力培养的实践型教材，第3版继承并保持了“注重实践”的风格，将全书分编为绪论和上、中、下3篇，共14章。内容分别为：上篇为传统软件工程，包括软件生存周期与软件过程、结构化分析与设计；中篇为面向对象软件工程，包括面向对象与UML、需求工程与需求分析、面向对象分析、面向对象设计、编码与测试；下篇为软件工程的近期进展、管理与环境，包括软件维护、软件复用、软件工程管理、软件质量管理、软件工程环境、软件工程高级课题。与第2版相比，本版将“并行介绍传统的和面向对象的软件工程”改变为“重点介绍面向对象的软件工程”，并在“面向对象分析”和“面向对象设计”两章分别给出案例；通过“软件工程高级课题”，对Web工程及基于体系结构的软件开发等热门课题集中进行了简要的讲解。
《软件工程:原理、方法与应用(第3版)(2010改版)》结构合理、文字通俗、例题丰富、可读性强，主要面向计算机及相关专业本科生，亦可供软件开发人员作为参考。
目录
第1章 绪论
1.1 软件和软件危机
1.1.1 软件的定义
1.1.2 软件的特征
1.1.3 软件危机
1.2 软件工程学的范畴
1.2.1 软件开发方法学
1.2.2 软件工具
1.2.3 软件工程环境
1.2.4 软件工程管理
1.3 软件工程的发展
1.3.1 3种编程范型
1.3.2 3代软件工程
1.4 软件工程的应用
1.4.1 在各种规模软件开发中的应用
1.4.2 软件工程的成就与发展展望
1.5 软件工程的教学：本书导读
小结
习题
上篇 传统软件工程
第2章 软件生存周期与软件过程
2.1 软件生存周期
2.1.1 软件生存周期的主要活动
2.1.2 生存周期与软件过程的关系
2.2 传统的软件过程
2.2.1 瀑布模型
2.2.2 快速原型模型
2.3 软件演化模型
2.3.1 增量模型
2.3.2 螺旋模型
2.3.3 构件集成模型
2.4 形式化方法模型
2.4.1 转换模型
2.4.2 净室模型
2.5 统一过程和敏捷过程
2.5.1 统一过程
2.5.2 敏捷过程
2.5.3 极限编程
2.6 软件可行性研究
2.6.1 可行性研究的内容与步骤
2.6.2 软件风险分析
2.6.3 项目实施计划
小结
习题
第3章 结构化分析与设计
3.1 概述
3.1.1 结构化分析与设计的由来
3.1.2 SA模型的组成与描述
3.1.3 SD模型的组成与描述
3.2 结构化系统分析
3.2.1 画分层数据流图
3.2.2 确定数据定义与加工策略
3.2.3 需求分析的复审
3.3 结构化系统设计
3.3.1 SD概述
3.3.2 SD的步骤：从DFD图到SC图
3.3.3 变换映射
3.3.4 事务映射
3.3.5 优化初始SC图的指导规则
3.3.6 教材购销系统的总体结构
3.4 模块设计
3.4.1 目的与任务
3.4.2 模块设计的原则与方法
3.4.3 常用的表达工具
小结
习题
中篇 面向对象软件工程
第4章 面向对象与uML
4.1 面向对象概述
4.1.1 对象和类
4.1.2 面向对象的基本特征
4.1.3 面向对象开发的优点
4.2 uML简介
4.2.1 UML的组成
4.2.2 UML的特点
4.2.3 UML的应用
4.3 静态建模
4.3.1 用例图与用例模型
4.3.2 类图和对象图
4.3.3 包
4.4 动态建模
4.4.1 消息
4.4.2 状态图
4.4.3 时序图和协作图
4.4.4 活动图
4.5 物理架构建模
4.5.1 物理架构
4.5.2 构件图和部署图
4.6 UML工具
4.6.1 RationalRose
4.6.2 StarUML
小结
习题
第5章 需求工程与需求分析
5.1 软件需求工程
5.1.1 软件需求的定义
5.1.2 软件需求的特性
5.1.3 需求工程的由来
5.2 需求分析与建模
5.2.1 需求分析的步骤
5.2.2 需求分析是迭代过程
5.3 需求获取的常用方法
5.3.1 常规的需求获取方法
5.3.2 用快速原型法获取需求
5.4 需求模型
5.4.1 需求模型概述
5.4.2 面向对象的需求建模
5.5 软件需求描述
5.6 需求管理
5.6.1 需求管理的内容
5.6.2 需求变更控制
5.6.3 需求管理工具
5.7 需求建模示例
5.7.1 问题陈述
5.7.2 用例模型
5.7.3 补充规约
5.7.4 术语表
小结
习题
第6章 面向对象分析
6.1 软件分析概述
6.1.1 面向对象软件分析
6.1.2 面向对象分析模型
6.2 面向对象分析建模
6.2.1 识别与确定分析类
6.2.2 建立对象一行为模型
6.2.3 建立对象一关系模型
6.3 面向对象分析示例
6.3.1 注册
6.3.2 维护个人信息
6.3.3 维护购物车
6.3.4 生成订单
6.3.5 管理订单
小结
习题
第7章 面向对象设计
7.1 软件设计概述
7.1.1 软件设计的概念
7.1.2 软件设计的任务
7.1.3 模块化设计
7.2 面向对象设计建模
7.2.1 面向对象设计模型
7.2.2 面向对象设计的任务
7.2.3 模式的应用
7.3 系统架构设计
7.3.1 系统高层结构设计
7.3.2 确定设计元素
7.3.3 任务管理策略
7.3.4 分布式实现机制
7.3.5 数据存储设计
7.3.6 人机交互设计
7.4 系统元素设计
7.4.1 子系统设计
7.4.2 分包设计
7.4.3 类/对象设计
7.5 面向对象设计示例
7.5.1 关联关系的具体化
7.5.2 网上购物系统的架构设计
7.5.3 网上购物系统的类/对象设计
小结
习题
第8章 编码与测试
8.1 编码概述
8.1.1 编码的目的
8.1.2 编码的风格
8.2 编码语言与编码工具
8.2.1 编码语言的发展
8.2.2 常用的编程语言
8.2.3 编码语言的选择
8.2.4 编码工具
8.3 编码示例
8.3.1 注册功能编码实现
8.3.2 维护购物车功能编码实现
8.4 测试的基誉概念
8.4.1 目的与任务
8.4.2 测试的特性
8.4.3 测试的种类
8.4.4 测试的文档
8.4.5 软件测试过程
8.5 黑盒测试和白盒测试
8.5.1 黑盒测试
8.5.2 白盒测试
8.6 测试用例设计
8.6.1 黑盒测试用例设计
8.6.2 白盒测试用例设计
8.7 多模块程序的测试策略
8.7.1 测试的层次性
8.7.2 单元测试
8.7.3 集成测试
8.7.4 确认测试
8.7.5 系统测试
8.7.6 终止测试的标准
8.8 面向对象系统的测试
8.8.1 OO软件的测试策略
8.8.2 OO软件测试用例设计
小结
习题
下篇 软件工程的近期进展、管理与环境
第9章 软件维护
第10章 软件复用
第11章 软件工程管理
第12章 软件质量管理
第13章 软件工程环境
第14章 软件工程高级课题
附录 缩略语中英文对照表
主要参考文献