软件工程基础PDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:胡思康编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2012
- ISBN:9787302283171
- 页数:314 页
第1章 软件工程概述 1
1.1软件工程的发展历程 1
1.1.1软件危机 1
1.1.2软件危机出现的原因 3
1.1.3软件工程的发展 4
1.2软件工程的概念 5
1.2.1软件工程的定义 5
1.2.2软件工程的目标 6
1.2.3软件工程的实施原则 8
1.2.4软件工程的基本原理 9
1.3软件与软件过程 11
1.3.1软件的概念 11
1.3.2软件的分类 13
1.3.3软件生命周期 14
1.3.4软件过程 15
1.4软件过程模型 17
1.4.1瀑布模型 17
1.4.2原型模型 18
1.4.3增量模型 19
1.4.4螺旋模型 20
1.4.5喷泉模型 21
1.4.6敏捷过程模型 22
1.4.7基于四代技术的过程模型 23
1.4.8微软解决框架过程模型 24
1.4.9组合模型的开发 25
1.5软件开发方法 25
1.5.1结构化开发方法 26
1.5.2面向对象开发方法 26
1.6案例描述 27
1.6.1简历信息自动获取和查询系统 27
1.6.2试卷自动生成系统 28
1.7小结 29
习题 31
第2章 软件需求工程 32
2.1软件需求的基本概念 32
2.1.1需求分析的任务 32
2.1.2需求分析的原则 33
2.1.3需求分析的内容 34
2.2需求工程的过程 36
2.2.1需求工程中的参与人员 36
2.2.2需求工程过程中的活动 36
2.2.3需求工程的管理 38
2.3需求获取技术 39
2.4结构化需求分析和建模 41
2.4.1结构化分析概述 42
2.4.2面向数据的数据建模 42
2.4.3面向数据流的功能建模 44
2.4.4面向状态转换的行为建模 48
2.4.5数据字典 49
2.4.6加工逻辑 51
2.5案例——简历自动获取和查询系统的需求建模 52
2.5.1数据建模——ER图描述 53
2.5.2功能建模——数据流图 53
2.5.3行为建模——状态转换图 55
2.5.4数据字典 55
2.5.5加工逻辑——PDL语言的描述 56
2.6需求评审 56
2.6.1软件需求规格说明文档 57
2.6.2需求评审标准 60
2.7小结 61
习题 61
第3章 软件设计基础 63
3.1软件设计概述 63
3.1.1软件设计与软件需求 63
3.1.2软件设计的任务 64
3.1.3软件设计的原则 66
3.2软件体系结构设计 67
3.2.1体系结构设计概述 67
3.2.2以数据为中心的数据仓库模型 68
3.2.3客户端服务器模式的分布式结构 69
3.2.4层次模型 71
3.3模块化设计 72
3.3.1软件模块化与分解 72
3.3.2抽象 73
3.3.3信息隐藏 73
3.3.4模块独立性 74
3.3.5启发式规则 76
3.4界面设计 79
3.4.1界面设计的任务 79
3.4.2界面设计的原则 80
3.4.3界面设计的特性 81
3.4.4 MVC模型 81
3.5软件设计评审 83
3.5.1软件设计规格说明文档 83
3.5.2软件设计评审标准 86
3.6小结 88
习题 88
第4章结构化设计方法 90
4.1结构化设计方法概述 90
4.2面向数据流的设计方法 91
4.2.1层次图和结构图 91
4.2.2变换分析法 93
4.2.3事务分析法 97
4.2.4混合分析法 98
4.3面向数据的设计方法 99
4.3.1 Jackson图 99
4.3.2 Jackson系统开发方法 100
4.4案例 简历自动获取和查询系统的数据流设计方法 102
4.4.1用变换分析法进行设计 103
4.4.2用事务分析法进行设计 104
4.4.3两种方法的比较 105
4.5结构化详细设计的工具 106
4.5.1程序流程图 106
4.5.2盒图(NS图) 107
4.5.3问题分析图 108
4.5.4判定树 110
4.5.5判定表 110
4.5.6详细设计工具的比较 111
4.6小结 112
习题 113
第5章 软件实现 114
5.1程序设计语言 114
5.1.1程序设计语言的分类 114
5.1.2程序设计语言的特性 115
5.1.3选择程序设计语言 116
5.2程序设计风格 118
5.2.1程序编排和组织的准则 118
5.2.2程序设计的效率 122
5.3代码复用 124
5.4代码评审 125
5.5小结 129
习题 129
第6章 软件测试 131
6.1软件测试基础 131
6.1.1软件测试的概念 131
6.1.2软件测试过程模型 132
6.1.3软件测试原则 134
6.1.4软件测试在软件开发各阶段的工作流程 137
6.1.5软件测试信息流 138
6.1.6软件测试技术分类 139
6.2白盒测试 140
6.2.1逻辑覆盖 141
6.2.2循环测试 144
6.2.3路径测试 145
6.3黑盒测试 148
6.3.1等价类划分 148
6.3.2边界值分析 150
6.3.3错误推测法 150
6.3.4因果图法 151
6.4白盒测试和黑盒测试的比较 153
6.5软件测试策略 154
6.5.1单元测试 155
6.5.2集成测试 157
6.5.3确认测试 159
6.5.4系统测试 160
6.6调试 162
6.6.1软件调试过程 162
6.6.2软件调试方法 163
6.7软件测试报告 164
6.7.1软件测试说明 164
6.7.2软件测试报告 166
6.8小结 167
习题 167
第7章UML统一建模语言 169
7.1 UML的发展 169
7.1.1 UML的产生 169
7.1.2 UML的构成 170
7.1.3 UML的特点 171
7.2面向对象的基本概念 171
7.3 UML视图 177
7.4 UML的图和模型元素 178
7.4.1用例图 179
7.4.2类图 180
7.4.3包图 182
7.4.4状态图 183
7.4.5活动图 183
7.4.6顺序图 185
7.4.7协作图 186
7.4.8构件图 187
7.4.9配置图 187
7.5 UML的关系 188
7.5.1关联关系 188
7.5.2泛化关系 191
7.5.3依赖关系 195
7.5.4实现关系 196
7.6 UML的通用机制 196
7.6.1修饰 196
7.6.2注释 197
7.6.3规格说明 197
7.6.4扩展机制 197
7.7基于UML的软件过程 199
7.8小结 201
习题 202
第8章 面向对象分析 203
8.1面向对象分析概述 203
8.1.1传统软件过程中的不足 203
8.1.2面向对象的特点 204
8.1.3面向对象分析的基本过程 205
8.1.4面向对象分析的3类模型 205
8.1.5静态模型的5个层次 206
8.2建立功能模型 207
8.2.1识别参与者 208
8.2.2识别用例 209
8.2.3识别用例间关系 210
8.2.4用例描述文档 211
8.3建立静态模型(对象模型) 212
8.3.1识别类与对象 213
8.3.2划分主题 215
8.3.3确定结构 215
8.3.4确定属性 216
8.3.5确定服务 217
8.3.6类图描述文档 218
8.3.7包图描述文档 219
8.4建立动态模型 220
8.4.1建立顺序图及其描述文档 220
8.4.2建立状态图及其描述文档 221
8.4.3建立协作图及其描述文档 223
8.4.4建立活动图及其描述文档 224
8.5小结 226
习题 226
第9章 面向对象设计 228
9.1面向对象设计概述 228
9.1.1面向对象分析与设计的关系 228
9.1.2面向对象设计原则 229
9.2精化类及类间关系 230
9.2.1设计类的属性 230
9.2.2设计类的方法 231
9.2.3设计类间泛化关系 232
9.2.4设计关联类 234
9.3数据设计 234
9.3.1基于关系数据库的数据设计 234
9.3.2基于其他方式的数据设计 237
9.4人机交互设计 237
9.5建立实现模型 239
9.5.1构件图及其描述文档 239
9.5.2配置图及其描述文档 240
9.6设计模式简介 242
9.6.1概述 242
9.6.2 Singleton模式 243
9.6.3 Abstract Factory模式 244
9.6.4 Mediator模式 245
9.6.5 Adapter模式 247
9.7面向对象的测试 248
9.7.1面向对象测试概述 249
9.7.2面向对象的单元测试 249
9.8小结 251
习题 252
第10章 软件维护 254
10.1软件维护概述 254
10.1.1软件维护的任务 254
10.1.2软件维护的特点 255
10.1.3软件维护的分类 255
10.2软件维护过程 257
10.2.1软件维护方式 257
10.2.2软件维护管理的基本内容 258
10.2.3维护中存在的问题 263
10.2.4维护活动记录 264
10.3软件的可维护性 264
10.3.1可维护性因素 265
10.3.2提高软件的可维护性 265
10.4逆向工程 268
10.5小结 270
习题 271
第11章 软件项目管理 272
11.1软件项目管理概述 272
11.1.1软件项目管理的特点和内容 272
11.1.2软件项目管理目标 273
11.1.3软件项目管理的4P观点 274
11.2软件项目规模度量 275
11.2.1代码行技术 276
11.2.2功能点计算 277
11.2.3代码行与功能点间的转换 280
11.3软件项目估算 280
11.3.1代码行和功能点的其他估算模型 281
11.3.2专家估算模型 281
11.3.3 Putnam模型 282
11.3.4 COCOMO模型 282
11.3.5项目估算模型的小结 285
11.4项目进度管理 285
11.4.1项目进度控制 285
11.4.2甘特图 286
11.4.3工程网络图 287
11.5项目风险管理 288
11.5.1软件风险概念 289
11.5.2风险管理过程 289
11.6项目质量管理 293
11.6.1软件质量因素 293
11.6.2软件质量保证活动 297
11.6.3软件质量保证计划 298
11.7软件配置管理 300
11.7.1软件配置项 300
11.7.2配置管理过程 301
11.7.3软件配置管理计划 304
11.8项目人员组织管理 305
11.8.1团队组织 305
11.8.2团队组织方式 306
11.9软件能力成熟度模型 308
11.9.1基本概念 308
11.9.2软件能力成熟度模型等级 309
11.9.3关键过程域 310
11.10小结 311
习题 312
参考文献 314
- 《市政工程基础》杨岚编著 2009
- 《零基础学会素描》王金著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《生物质甘油共气化制氢基础研究》赵丽霞 2019
- 《工程静力学》王科盛主编 2019
- 《花时间 我的第一堂花艺课 插花基础技法篇》(日)花时间编辑部编;陈洁责编;冯莹莹译 2020
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《Photoshop CC 2018基础教程》温培利,付华编著 2019
- 《看视频零基础学英语口语》宋德伟 2019
- 《化学反应工程》许志美主编 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019