标题：实用软件工程教程
版权信息
书 名: 实用软件工程教程
作　者：阎菲
出版社： 中国水利水电出版社
出版时间： 2006
ISBN: 9787508439303
开本： 16
定价: 28.00 元
内容简介
《实用软件工程教程》强调软件工程的理论与实践相结合、技术与管理相结合、方法和设计工具相结合的理念，并以应用性极强的系统为例，全面地阐述了软件工程的内涵；同时自始至终贯穿反映学科最新发展方向的新内容，加强了计算机网络、面向对象软件技术实用技术的编写。
全书内容主要包括：软件工程的基础知识，软件过程、软件工程项目管理，计算机系统工程，需求分析，总体设计，编码与测试，软件维护，面向对象技术，快速原型技术，软件重用技术等。《实用软件工程教程》努力做到内容精练，重点突出，概念清楚，针对性和实际操作性强。
编辑推荐
本书是一部关于软件工程的高校教材，内容主要包括软件工程的基础知识，软件过程，软件工程项目管理，计算机系统工程，需求分析，总体设计，详细设计，编码与测试，软件维护，面向对象技术，快速原型技术，软件重用技术等。本书努力做到内容精练，重点突出,概念清楚，针对性和实际操作性强。
目录
前言
第1章软件工程概述
1．1软件工程中的常见问题
1．1．1软件
1．1．2软件危机
1．2软件工程
1．2．1软件工程的定义与原理
1．2．2软件工程与计算机科学
1．2．3软件工程目标
1．2．4软件工程面临的挑战
1．3软件过程和软件生命周期
1．3．1软件过程
1．3．2软件生命周期
1．4软件开发模型
1．4．1瀑布模型
1．4．2演化模型
1．4．3原型模型
l．4．4螺旋模型
1．4．5喷泉模型及面向对象的开发过程
1．4．6基于四代技术的模型
1．4．7智能模型
1．5职业道德
1．6本章小结
习题
第2章软件项目管理
2．1软件项目管理概述
2．1．l软件项目管理的概念
2．1．2软件项目管理的特点
2．1．3软件项目管理的内容
2．1．4项目的组织模式
2．1．5项目的人员管理
2．1．6软件配置管理
2．2软件项目规划
2．2．1项目规划的基本概念
2．2．2项目规划的步骤
2．2．3项目规划的原则
2．2．4项目规划的形成文件
2．2．5项目规划过程之间的相互联系
2．3软件项目风险管理
2．3．1风险管理概述
2．3．2软件项目的风险策略
2．3．3软件风险
2．3．4风险管理的过程
2．3．5软件风险的总结
2．4软件项目进度管理
2．4．1项目进度的基本概念
2．4．2制定进度计划
2．4．3面向网络化管理
2．4．4建立里程碑事件
2．4．5实施保证
2．5软件项目质量管理
2．5．1基本定义
2．5．2质量管理主要内容
2．5．3技术与方法
2．5．4质量管理实施
2．6本章小结
习题
第3章软件系统及可行性研究一
3．1用户中心设计——UCD方法
3．2计算机系统
3．2．1硬件和硬件工程
3．2．2软件和软件工程
3．2．3人机工程
3．2．4数据库和数据库工程
3．3可行性研究．
3．3．1可行性研究的任务
3．3．2技术可行性
3．3．3操作可行性
3．3．4经济可行性
3．3．5可行性研究的步骤
3．3．6方案选择
3．4系统开发过程的新体系结构——快速原型与面向对象
3．5本章小结
习题
第4章需求分析
4．1需求分析基础
4．1．1分析的任务与原则
4．1．2需求建模
4．1．3开发原型系统
4．2结构化分析方法
4．2．1结构化分析的策略
4．2．2数据流图
4．2．3数据字典
4．2．4小说明
4．2．5结构化分析实施步骤
4．3其他分析方法与图形工具
4．4实体一关系图
4．4．1数据对象、属性与关系
4．4．2E-R方法和实体模型
4．4．3数据结构的规范化
4．5需求规格说明与评审
4．5．1需求规格说明书的目标与内容
4．5．2需求评审
4．6本章小结
习题
第5章总体设计
5．l总体设计的任务及过程
5．1．1设计供选择的方案
5．1．2功能解剖和设计软件结构
5．1．3数据库设计
5．1．4制定测试计划
5．1．5文档的编写
5．1．6进行审查和复查
5．2软件设计基本原理
5．2．1模块化
5．2．2抽象
5．2．3信息隐蔽
5．2．4模块独立性
5．3设计准则
5．4总体设计的图形描述工具
5．4．1层次图
5．4．2HIPO图
5．4．3结构图．
5．5结构化设计方法
5．5．1数据流图的类型
5．5．2设计步骤
5．5．3变换设计
5．5．4事务设计
5．5．5设计的后处理
5．6本章小结
习题
第6章详细设计．
6．1结构化程序设计
6．2详细设计工具
6．2．1程序流程图
6．2．2盒图(N-S图)．
6．2．3PAD图
6．2．4过程设计语言(PDL)
6．2．5判定表．
6．2．6判定树
6．3Jackson程序设计方法
6．3．1Jackson方法
6．3．2Jackson图
6．3．3Jackson程序设计方法
6．4Warnier程序设计方法简介
6．4．1Wamier图
6．4．2Wamier程序设计方法的步骤
6．5人机界面设计
6．5．1人机界面设计概述
6．5．2人机界面风格
6．5．3人机界面实现的原则
6．5．4人机界面的设计过程
6．6本章小结
习题
第7章软件编码
7．1程序设计语言
7．1．1程序设计语言概述
7．1．2程序设计语言的分类
7．1．3程序设计语言的特点
7．1．4程序设计语言的选择
……
第8章软件测试
第9章软件维护
第10章软件过程改进
第11章面向对象概念
第12章面向对象的分析
第13章面向对象设计
第14章面向对象测试
第15章软件重用技术
第16章软件工程的深入研究
附录1可行性研究报告规范
附录2项目开发计划规范
附录3需求规格说明书规范
附录4概要设计说明书规范
附录5详细设计说明规范
附录6项目开发总结报告规范
附录7用Word撰写文档规范
参考文献
……
中国铁道出版社出版图书
基本信息书名：  实用软件工程教程实用软件工程教程　
书号：7-113-12723
作者：郭清宇 等
定价：33.80元
出版日期：2011年5月
适用专业：计算机软件工程、计算机应用技术
适合层次：高等院校
课程类别：专业课
课程分类：软件工程
出版单位：中国铁道出版社
内容简介本书结合实际软件项目开发讲解软件工程的关键概念，使学生加深对软件工程理论的理解，指导软件工程的实践活动。本书内容包含项目启动、项目计划、需求工程、系统设计、编码及代码审查、软件测试、项目交付和培训、项目实战等部分。
本书以实际项目为主线，并提供源码为参照，适合作为高校本科计算机软件工程、计算机应用技术等专业或软件职业技术学院软件工程和软件实训的教材，也可作为软件开发人员和软件项目管理人员的参考书。本书配有教学课件和习题答案。[1]
图书目录第1章 概论 1
1.1 软件和软件危机 1
1.1.1 软件的概念和特点 1
1.1.2 软件的发展历程 2
1.1.3 软件危机 3
1.2 软件工程 4
1.2.1 软件工程定义 4
1.2.2 软件工程的发展历史 4
1.2.3 软件生命周期模型 5
1.2.4 软件过程 6
小结 10
第2章 项目启动 11
2.1 项目开发流程与管理方式 11
2.1.1 软件项目形式 11
2.1.2 项目开发流程 12
2.1.3 精简并行过程 14
2.2 项目组织结构 15
2.2.1 项目角色 16
2.2.2 项目组织 16
2.3 项目里程碑 17
2.3.1 检查点、里程碑和基线 17
2.3.2 里程碑计划与验收 18
2.4 案例分析及描述 20
2.4.1 项目介绍 20
2.4.2 项目组织结构 21
2.4.3 项目里程碑 21
小结 22
习题 22
第3章 项目计划 23
3.1 项目估计 23
3.1.1 项目范围 23
3.1.2 软件规模度量 24
3.1.3 项目资源估算 25
3.1.4 成本估算 25
3.2 项目计划管理 26
3.2.1 项目进度计划管理 27
3.2.2 项目质量保证 29
3.2.3 项目配置管理 30
3.2.4 项目测试计划 32
3.2.5 风险管理 33
3.2.6 能力成熟度模型 34
3.3 案例分析及描述 35
3.3.1 项目估算 35
3.3.2 项目计划管理 36
小结 38
习题 38
第4章 需求工程 39
4.1 需求捕获 39
4.1.1 需求开发计划和目标 39
4.1.2 实地收集需求 40
4.1.3 软件需求 41
4.2 需求分析 43
4.2.1 原型分析法 43
4.2.2 结构化分析方法 44
4.2.3 用例分析方法 46
4.2.4 RUP业务建模 47
4.2.5 用例分析 49
4.2.6 系统建模 52
4.2.7 相关案例分析 53
4.3 需求定义 56
4.3.1 需求报告 56
4.3.2 需求规格说明书编写指南 56
4.4 需求管理 59
4.4.1 需求变更控制 59
4.4.2 版本控制 62
4.4.3 需求跟踪 63
4.5 需求验证 64
4.5.1 需求验证的目的和任务 64
4.5.2 需求评审 65
4.5.3 需求测试 66
小结 67
习题 67
第5章 系统设计 68
5.1 设计概述 68
5.1.1 设计要素 68
5.1.2 设计原理 69
5.1.3 设计目标 69
5.1.4 软件设计方法 69
5.1.5 面向对象方法的设计原则 70
5.2 体系结构设计 71
5.2.1 软件体系结构建模 71
5.2.2 软件构架文档 72
5.2.3 MVC架构 74
5.2.4 软件体系结构风格 75
5.2.5 Web服务体系结构 79
5.3 数据库设计 79
5.3.1 数据库设计过程 79
5.3.2 数据库设计技巧 80
5.4 界面设计 82
5.4.1 界面设计原则 82
5.4.2 用户界面设计的工作流程 83
5.4.3 界面设计规范 84
5.5 案例分析及描述 84
5.5.1 系统架构风格设计 84
5.5.2 设计方法 84
5.5.3 数据库设计 84
5.5.4 界面设计 85
小结 85
习题 85
第6章 编码及代码审查 86
6.1 程序设计语言 86
6.1.1 程序设计语言的分类 86
6.1.2 程序设计语言的特性 88
6.1.3 编码语言的选择 90
6.2 编码规约 91
6.2.1 编码规约的目标 91
6.2.2 编码规约的一般性原则 91
6.3 代码审查 92
6.3.1 代码审查的目的和形式 92
6.3.2 代码审查小组和代码审查内容 93
6.3.3 代码审查过程 93
6.3.4 结对编程 95
6.4 案例分析与描述 95
6.4.1 编码语言选择及开发环境 95
6.4.2 编码规约 96
6.4.3 代码审查 103
小结 108
习题 108
第7章 软件测试 109
7.1 概述 109
7.1.1 软件测试的目的 110
7.1.2 软件测试原则 110
7.1.3 软件测试的基本过程 112
7.1.4 软件测试方法 112
7.1.5 软件测试人员的素质要求 116
7.2 软件测试过程 117
7.2.1 软件测试步骤 117
7.2.2 软件测试流程 121
7.2.3 单元测试 121
7.2.4 集成测试 123
7.2.5 确认测试 127
7.3 测试技术 128
7.3.1 白盒测试技术 128
7.3.2 黑盒测试技术 130
7.4 测试用例设计与执行 132
7.4.1 测试用例的基本要素 133
7.4.2 测试用例设计过程 134
7.4.3 基于场景的测试用例设计 135
7.4.4 基于补充规约生成的测试用例 136
7.4.5 测试用例执行过程 138
7.4.6 测试用例管理和维护 139
小结 140
习题 140
第8章 项目交付和培训 141
8.1 项目培训 141
8.1.1 培训需求确定 141
8.1.2 培训计划制定 141
8.1.3 培训计划实施 142
8.1.4 培训效果评估 142
8.2 项目实施 143
8.2.1 项目实施准备 143
8.2.2 模拟运行及用户化 143
8.2.3 制定工作准则与工作规程 143
8.2.4 系统运行 143
8.3 项目验收 143
8.3.1 项目验收准备 144
8.3.2 验收测试 144
8.3.3 项目交付 144
8.4 案例描述 145
8.4.1 项目培训 145
8.4.2 项目实施 145
8.4.3 项目验收 146
小结 146
习题 146
第9章 职业安全与健康法规标准管理系统 147
9.1 项目描述 147
9.1.1 项目背景 147
9.1.2 捕获需求 148
9.1.3 项目计划 148
9.2 需求分析 149
9.2.1 参与者 149
9.2.2 用例 149
9.2.3 系统用例图 150
9.2.4 用例规约 151
9.2.5 分析类 165
9.3 系统设计 172
9.3.1 体系结构设计 172
9.3.2 实体类设计 173
9.3.3 数据库设计 174
9.3.4 界面设计 178
9.4 系统实现 179
9.4.1 开发环境及配置 179
9.4.2 功能模块概要 180
9.4.3 项目测试 201
9.4.4 系统变更 216
9.5 项目交付 220
9.5.1 系统交付 220
9.5.2 用户手册 222
9.5.3 培训 225
小结 226
第10章 河流根石探测管理系统 227
10.1 项目描述 227
10.1.1 项目背景 227
10.1.2 业务描述 227
10.1.3 用户描述 231
10.1.4 项目计划 231
10.2 需求分析 234
10.2.1 需求描述 235
10.2.2 用例规约 236
10.2.3 用例图 263
10.3 系统分析与设计 266
10.3.1 领域模型 266
10.3.2 顺序图 269
10.3.3 设计类 286
10.3.4 数据库设计 289
10.3.5 界面设计 296
10.4 系统实现 300
10.4.1 环境配置 300
10.4.2 代码实现 301
10.4.3 测试 316
10.5 发布运行 322
10.5.1 项目发布运行 322
10.5.2 安装说明 325
10.6 河道整治工程根石探测管理系统使用说明 326
小结 339
附录A UML入门及Rose的使用 341
参考文献 349