《实用软件工程(第3版)》是普通高等教育“十一五”国家级规划教材的修订版,根据教学反馈和学时要求,对内容做了较大的调整,以期更好地适应教学的需要。本书面向工程实践,按照IT企业工作流程安排章节顺序,新版教材共10章,包括软件工程的内容与方法、软件生命周期与开发模型、软件立项与合同、软件需求、软件策划、软件建模、软件设计、软件测试、软件实施与维护和软件管理。本书为任课老师免费提供电子课件,并出版有配套实践教材《软件工程实践教程》。
第1章 软件工程的内容与方法
1.1 软件的定义
1.2 软件工程的定义
1.3 软件工程在软件行业中的作用
1.4 软件工程方法论
1.4.1 软件工程方法论的提出
1.1.4.2 面向过程的方法
1.4.3 面向对象的方法
1.4.4 面向元数据的方法.
1.4.5 形式化方法
1.4.6 面向业务基础平台的方法
1.4.7 软件工程方法论小结
1.5 软件工程实践论
1.5.1 软件工程实践论的提出
1.5.2 面向流程分析
1.5.3 面向元数据设计
1.5.4 面向对象实现
1.5.5 面向功能测试
1.5.6 面向过程管理
1.5.7 软件工程实践论小结
1.6软件支持过程
1.7 软件管理过程
1.8 实例分析--某港口信息系统建设案例
1.9 本章小结
习题1
第2章 软件生命周期与开发模型
2.1 软件生命周期模型概论
2.2 瀑布模型
2.3 增量模型
2.4 原型模型
2.5 迭代模型
2.6 螺旋模型
2.7 喷泉模型
2.8 XP模型
2.9 各种模型之间的关系
2.10 本章小结
习题2
第3章 软件立项与合同
3.1 软件立项方法与文档
3.2 签订合同的方法与文档
3.3 软件招标与投标
3.4 下达任务的方法与文档
3.5 本章小结
习题3
第4章 软件需求分析
4.1 需求分析的基本概念
4.2 需求分析的任务
4.3 需求分析的方法
4.4 需求描述工具
4.4.1 描述工具概述.
4.4.2 面向元数据的需求描述工具
4.4.3 面向过程的需求描述工具
4.4.4 面向对象的需求描述工具
4.5 需求过程管理
4.6 需求分析文档
4.7 本章小结
习题4
第5章 软件策划
5.1 软件策划概论
5.2 软件规模估计方法
5.3 软件费用与资源估计方法
5.4 软件策划文档
5.5 本章小结
习题5
第6章 软件建模
6.1 三个模型的建模思想
6.2 数据模型设计概论
6.3 数据库设计的理论与方法
6.4 数据模型建模实例分析--“混凝土公司信息管理系统”建模案例”
6.5 三个模型建模实例分析--“某省级新华书店信息管理系统”建模案
6.6 三个模型建模思想总结
6.7 本章小结
习题6
第7章 软件设计
7.1 软件设计概论
7.2 软件设计原理
7.3 面向过程设计
7.3.1 面向过程的概要设计
7.3.2 面向过程的详细设计
7.4 面向对象设计
7.4.1 面向对象设计描述工具
7.4.2 面向对象设计的步骤
7.5 面向元数据设计
7.6 软件设计方法总结
7.7 软件设计文档
7.8 本章小结
习题7
第8章 软件测试
8.1 软件测试概论
8.2 软件测试模型
8.3 黑盒测试方法
8.3.1 等价类划分法
8.3.2 边界值分析法
8.3.3 错误推测法
8.3.4 因果图分析法
8.3.5 场景分析法
8.3.6 黑盒测试用例设计
8.3.7 黑盒测试的优缺点
8.4 白盒测试方法
8.5 灰盒测试方法
8.6 测试过程与测试文档
8.7 本章小结
习题8
第9章 软件实施与维护
9.1 软件产品的分类
9.2 软件产品的发布
9.3 软件产品的实施
9.4 软件维护的传统方法
9.5 软件维护的最新方法
9.6 软件维护文档
9.7 本章小结
习题9
第1 O 章软件管理
10.1 软件过程改进模型cMMI
10.1.1 cMMI内容简介
10.1.2 CMMI实施思路
10.1.3 成熟度等级2过程域的解释
10.2 敏捷文化现象.
10.3 软件配置管理
10.3.1 配置管理的基本概念
10.3.2 配置管理员的职责
10.3.3 配置管理工具VSS的工作原理
10.4 软件质量保证
10.4.1 软件质量保证基本概念
10.4.2 软件质量保证文档
10.5 软件项目管理
10.5.1 项目与项目管理的定义
10.5.2 项目经理的七项职责及十项工作程序
10.5.3 项目经理对程序员的八项要求
10.5.4 从大学生到项目经理
10.5.5 软件企业人才管理策略
10.5.6 软件企业架构及工作流
10.6 本章小结
习题10
参考文献
软件开发与维护;管理文档主要由软件工程管理部门书写,用于指导软件管理和决策。两类文档的标准、规范和编制模板,全公司范围内要统一,这一工作由软件工程管理部门完成。开发文档是指导软件开发与维护的文档,开发与维护中所有的程序,都是按照开发文档的要求编写与实现的。软件工程规定:文档必须指挥程序,而决不允许程序指挥文档;文档与程序必须保持高度一致,而决不允许程序脱离开文档。
开发文档本身具有严格的层次关系和依赖关系,这种关系反映在如下的覆盖关系之中,即有
(1)《目标程序》覆盖《源程序》
(2)《源程序》覆盖《详细设计说明书》
(3)《详细设计说明书》覆盖《概要设计说明书》
(4)《概要设计说明书》覆盖《需求分析规格说明书》
(5)《需求分析规格说明书》覆盖《用户需求报告》
(6)《用户需求报告》覆盖《软件合同》/《软件任务书》
管理文档本身具有严格的时序关系,这种时序关系反映在如下的软件过程之中,而过程由一系列的时间序列所组成:
(1)需求分析过程管理文档;
(2)软件策划过程管理文档;
(3)软件设计过程管理文档;
(4)软件实现过程管理文档:
(5)软件测试过程管理文档;
(6)软件维护过程管理文档;
(7)软件过程改进管理文档。
成熟的软件企业,都有一套自己的开发文档和管理文档编写标准或编写模板,在企业内部严格执行。
4.软件的最新定义
软件=知识+程序+数据+文档
定义中增加了“知识”。对这一定义的讨论正在进行。正方认为:因为软件是知识在网络上的体现,所以这个定义非常好。反方认为:程序、数据、文档本身就是知识的载体与表现,所以这个定义有些画蛇添足的意味。
……