软件工程(第2版) / 高职高专计算机任务驱动模式教材
¥29.00定价
作者: 吴文国
出版时间:2017年7月
出版社:清华大学出版社
- 清华大学出版社
- 9787302473039
- 2-1
- 193063
- 16开
- 2017年7月
- 工学
- 软件工程
- TP311.5
- 计算机类
- 高职高专
内容简介
本书从实用、够用的角度出发,以学生信息管理系统为主线,采用任务驱动案例教学的方式,详细讲述了软件工程的基本原理、概念、技术和方法。本书共9个项目,内容包括: 项目的市场调研、需求分析、软件项目的总体设计、软件项目的详细设计、软件项目的实现、软件项目的测试、软件维护、软件项目的管理、软件项目的开发总结。
本书适合计算机专业的本科生、专科生和专升本学生作为教材使用,也适合从事研发工作的软件工作者和广大计算机用户参考或自学使用。
本书适合计算机专业的本科生、专科生和专升本学生作为教材使用,也适合从事研发工作的软件工作者和广大计算机用户参考或自学使用。
目录
项目1项目的市场调研1
任务1.1系统的研发背景1
1.1.1学生信息管理问题的提出1
1.1.2国内外研发现状2
任务1.2系统研发的理论基础3
1.2.1软件的定义及其特点3
1.2.2软件危机4
1.2.3软件工程的提出5
任务1.3制订软件计划6
1.3.1问题的定义6
1.3.2可行性研究7
1.3.3系统的开发计划9
任务1.4实验实训10
小结11
习题11
项目2需求分析13
任务2.1需求分析概述13
2.1.1需求分析的任务14
2.1.2需求分析应注意的问题15
2.1.3需求分析的原则16
2.1.4需求分析的过程16
任务2.2需求分析的方法18
2.2.1结构化分析方法18
2.2.2面向对象的分析方法22
任务2.3统一建模语言UML27
2.3.1UML的基本概念27
2.3.2UML语言概述28
2.3.3静态建模30
任务2.4需求分析规格说明书36
2.4.1需求分析规格说明书的作用36
2.4.2需求分析规格说明书的格式及内容36
任务2.5实验实训36
小结37
习题37
项目3软件项目的总体设计39
任务3.1总体设计的基本内容39
3.1.1软件设计的定义39
3.1.2总体设计的目标40
3.1.3总体设计的步骤40
3.1.4总体设计的基本任务40
3.1.5总体设计的准则41
任务3.2结构化的软件设计43
3.2.1结构化设计的基本概念43
3.2.2结构化的设计方法45
3.2.3总体结构设计48
3.2.4运行环境的设计49
任务3.3面向对象的软件设计50
3.3.1面向对象的设计方法50
3.3.2类图53
3.3.3子系统清单56
3.3.4功能模块清单56
3.3.5模块(部件)功能分配58
任务3.4数据库设计60
3.4.1数据结构设计60
3.4.2设计检查列表63
3.4.3设计模型65
3.4.4软件建模66
任务3.5实验实训67
小结68
习题68
项目4软件项目的详细设计70
任务4.1系统详细设计的基本内容70
4.1.1详细设计概述70
4.1.2详细设计的基本任务71
4.1.3详细设计的方法72
任务4.2系统详细设计方案75
4.2.1对象模型76
4.2.2对象模型映射为关系模型77
任务4.3用户界面设计80
4.3.1用户界面设计的特点80
4.3.2用户界面设计的基本类型和基本原则81
4.3.3案例分析82
任务4.4实验实训85
小结85
习题85
项目5软件项目的实现87
任务5.1结构化程序设计87
5.1.1结构化程序的提出87
5.1.2结构化程序的三种基本结构88
5.1.3NS流程图90
5.1.4结构化程序的设计方法91
任务5.2面向对象的程序设计91
5.2.1数据的抽象和封装92
5.2.2继承93
5.2.3多态93
任务5.3程序设计语言93
5.3.1计算机语言与程序设计语言93
5.3.2程序语言的分类94
任务5.4程序的复杂度96
5.4.1时间复杂度96
5.4.2空间复杂度96
任务5.5实验实训97
小结97
习题98
项目6软件项目的测试101
任务6.1软件测试的目的101
任务6.2软件测试的方法和步骤102
6.2.1黑盒测试和白盒测试102
6.2.2信息管理系统的测试105
6.2.3软件的测试步骤106
任务6.3软件调试技术107
6.3.1软件调试技术概述107
6.3.2软件调试技术的分类107
任务6.4测试报告108
6.4.1软件测试报告概述108
6.4.2软件测试报告模板109
任务6.5实验实训114
小结114
习题115
项目7软件维护117
任务7.1软件维护的目的117
7.1.1软件维护的原因117
7.1.2软件维护的定义117
7.1.3软件维护的策略118
任务7.2软件维护的成本119
7.2.1影响软件维护的因素119
7.2.2软件维护成本的分析119
任务7.3软件维护的方法120
7.3.1维护组织120
7.3.2维护报告121
7.3.3维护的事件流121
7.3.4保存维护记录122
7.3.5评价维护活动123
任务7.4软件可维护性123
7.4.1软件可维护性的定义123
7.4.2提高软件可维护性的方法125
任务7.5实验实训125
小结125
习题126
项目8软件项目的管理127
任务8.1项目管理127
8.1.1项目管理的定义127
8.1.2项目管理的要素128
8.1.3项目管理的特性129
8.1.4项目管理的流程130
任务8.2软件项目管理133
8.2.1软件项目管理概述134
8.2.2软件项目管理的人员配备135
8.2.3软件项目管理的组织模式135
任务8.3风险管理137
8.3.1风险识别138
8.3.2风险估计138
8.3.3风险评价138
8.3.4风险控制139
8.3.5风险管理措施140
任务8.4人力资源管理141
8.4.1项目人员的管理141
8.4.2人力资源的风险管理143
任务8.5进度计划管理144
8.5.1软件项目计划书144
8.5.2软件项目时间管理145
8.5.3项目进度计划工具147
任务8.6质量管理149
8.6.1软件的质量因素149
8.6.2软件的质量保证150
任务8.7实验实训152
小结152
习题152
项目9软件项目的开发总结153
任务9.1软件项目的经验和教训153
9.1.1软件项目的经验153
9.1.2软件开发的教训及建议155
任务9.2软件项目存在的问题159
9.2.1软件项目自身的问题159
9.2.2软件开发者的问题160
9.2.3软件开发中需要注意的问题161
任务9.3建议及展望162
9.3.1业务基础软件平台162
9.3.2给软件开发者的建议163
9.3.3对学生信息管理系统的展望163
任务9.4实验实训164
小结164
习题165
参考文献166
任务1.1系统的研发背景1
1.1.1学生信息管理问题的提出1
1.1.2国内外研发现状2
任务1.2系统研发的理论基础3
1.2.1软件的定义及其特点3
1.2.2软件危机4
1.2.3软件工程的提出5
任务1.3制订软件计划6
1.3.1问题的定义6
1.3.2可行性研究7
1.3.3系统的开发计划9
任务1.4实验实训10
小结11
习题11
项目2需求分析13
任务2.1需求分析概述13
2.1.1需求分析的任务14
2.1.2需求分析应注意的问题15
2.1.3需求分析的原则16
2.1.4需求分析的过程16
任务2.2需求分析的方法18
2.2.1结构化分析方法18
2.2.2面向对象的分析方法22
任务2.3统一建模语言UML27
2.3.1UML的基本概念27
2.3.2UML语言概述28
2.3.3静态建模30
任务2.4需求分析规格说明书36
2.4.1需求分析规格说明书的作用36
2.4.2需求分析规格说明书的格式及内容36
任务2.5实验实训36
小结37
习题37
项目3软件项目的总体设计39
任务3.1总体设计的基本内容39
3.1.1软件设计的定义39
3.1.2总体设计的目标40
3.1.3总体设计的步骤40
3.1.4总体设计的基本任务40
3.1.5总体设计的准则41
任务3.2结构化的软件设计43
3.2.1结构化设计的基本概念43
3.2.2结构化的设计方法45
3.2.3总体结构设计48
3.2.4运行环境的设计49
任务3.3面向对象的软件设计50
3.3.1面向对象的设计方法50
3.3.2类图53
3.3.3子系统清单56
3.3.4功能模块清单56
3.3.5模块(部件)功能分配58
任务3.4数据库设计60
3.4.1数据结构设计60
3.4.2设计检查列表63
3.4.3设计模型65
3.4.4软件建模66
任务3.5实验实训67
小结68
习题68
项目4软件项目的详细设计70
任务4.1系统详细设计的基本内容70
4.1.1详细设计概述70
4.1.2详细设计的基本任务71
4.1.3详细设计的方法72
任务4.2系统详细设计方案75
4.2.1对象模型76
4.2.2对象模型映射为关系模型77
任务4.3用户界面设计80
4.3.1用户界面设计的特点80
4.3.2用户界面设计的基本类型和基本原则81
4.3.3案例分析82
任务4.4实验实训85
小结85
习题85
项目5软件项目的实现87
任务5.1结构化程序设计87
5.1.1结构化程序的提出87
5.1.2结构化程序的三种基本结构88
5.1.3NS流程图90
5.1.4结构化程序的设计方法91
任务5.2面向对象的程序设计91
5.2.1数据的抽象和封装92
5.2.2继承93
5.2.3多态93
任务5.3程序设计语言93
5.3.1计算机语言与程序设计语言93
5.3.2程序语言的分类94
任务5.4程序的复杂度96
5.4.1时间复杂度96
5.4.2空间复杂度96
任务5.5实验实训97
小结97
习题98
项目6软件项目的测试101
任务6.1软件测试的目的101
任务6.2软件测试的方法和步骤102
6.2.1黑盒测试和白盒测试102
6.2.2信息管理系统的测试105
6.2.3软件的测试步骤106
任务6.3软件调试技术107
6.3.1软件调试技术概述107
6.3.2软件调试技术的分类107
任务6.4测试报告108
6.4.1软件测试报告概述108
6.4.2软件测试报告模板109
任务6.5实验实训114
小结114
习题115
项目7软件维护117
任务7.1软件维护的目的117
7.1.1软件维护的原因117
7.1.2软件维护的定义117
7.1.3软件维护的策略118
任务7.2软件维护的成本119
7.2.1影响软件维护的因素119
7.2.2软件维护成本的分析119
任务7.3软件维护的方法120
7.3.1维护组织120
7.3.2维护报告121
7.3.3维护的事件流121
7.3.4保存维护记录122
7.3.5评价维护活动123
任务7.4软件可维护性123
7.4.1软件可维护性的定义123
7.4.2提高软件可维护性的方法125
任务7.5实验实训125
小结125
习题126
项目8软件项目的管理127
任务8.1项目管理127
8.1.1项目管理的定义127
8.1.2项目管理的要素128
8.1.3项目管理的特性129
8.1.4项目管理的流程130
任务8.2软件项目管理133
8.2.1软件项目管理概述134
8.2.2软件项目管理的人员配备135
8.2.3软件项目管理的组织模式135
任务8.3风险管理137
8.3.1风险识别138
8.3.2风险估计138
8.3.3风险评价138
8.3.4风险控制139
8.3.5风险管理措施140
任务8.4人力资源管理141
8.4.1项目人员的管理141
8.4.2人力资源的风险管理143
任务8.5进度计划管理144
8.5.1软件项目计划书144
8.5.2软件项目时间管理145
8.5.3项目进度计划工具147
任务8.6质量管理149
8.6.1软件的质量因素149
8.6.2软件的质量保证150
任务8.7实验实训152
小结152
习题152
项目9软件项目的开发总结153
任务9.1软件项目的经验和教训153
9.1.1软件项目的经验153
9.1.2软件开发的教训及建议155
任务9.2软件项目存在的问题159
9.2.1软件项目自身的问题159
9.2.2软件开发者的问题160
9.2.3软件开发中需要注意的问题161
任务9.3建议及展望162
9.3.1业务基础软件平台162
9.3.2给软件开发者的建议163
9.3.3对学生信息管理系统的展望163
任务9.4实验实训164
小结164
习题165
参考文献166