软件工程

软件工程
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: , , ,
2017-01
版次: 1
ISBN: 9787115446497
定价: 39.80
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 243页
正文语种: 简体中文
分类: 工程技术
45人买过
  • 教材主要包含四个部分:第一部分是对软件工程的一般性介绍,包括软件及软件工程过程等的基本概念;第二部分主要介绍面向对象的设计及设计模式的使用;第三部分介绍团队开发管理和敏捷开发方法;第四部分面向特定领域的软件工程-数字传媒工程的兴起。 第1章  软件工程概述 1
    1.1 软件及其特性 1
    1.2 软件工程的产生与发展 2
    1.2.1 软件危机 2
    1.2.2 软件工程的发展 3
    1.3 软件工程的基本概念 4
    1.3.1 什么是软件工程 4
    1.3.2 软件工程的基本要素 5
    1.3.3 软件工程的基本原理 7
    1.4 软件工程的现状与发展趋势 8
    1.4.1 敏捷开发 8
    1.4.2 开放计算 9
    1.4.3 云计算 10
    习题一 11
    第2章 软件过程 12
    2.1 软件过程概述 12
    2.2 软件过程模型 14
    2.2.1 瀑布模型 15
    2.2.2 原型法模型 16
    2.2.3 迭代式开发 16
    2.2.4 可转换模型 18
    2.3 敏捷开发过程 18
    2.3.1 敏捷方法的由来 19
    2.3.2 计划驱动开发和敏捷开发 20
    2.3.3 敏捷方法 21
    习题二 23
    第3章 对象模型 24
    3.1 面向对象基础 24
    3.1.1 面向对象的基本概念 25
    3.1.2 对象、属性与方法 26
    3.2 面向对象方法的要素 27
    3.2.1 对象元素的访问控制 30
    3.2.2 对象职责 32
    3.2.3 通过继承和组合实现重用和扩展 32
    3.3 统一建模语言UML 33
    3.3.1 UML的基本实体 33
    3.3.2 UML图的使用实例 34
    习题三 37
    第4章 需求获取 38
    4.1 需求分析与用户故事 38
    4.2 需求及其分类 41
    4.2.1 需求的定义 41
    4.2.2 需求的内容 41
    4.2.3 需求的分类 42
    4.3 需求获取技术 44
    4.4 需求分析方法 47
    4.4.1 结构化分析 47
    4.4.2 面向对象分析 50
    4.4.3 面向问题域的分析 51
    4.5 需求分析的工具 62
    4.5.1 SADT 62
    4.5.2 PSL/PSA 63
    4.6 传统的软件建模 64
    4.6.1 软件建模 64
    4.6.2 数据模型的建立 65
    4.6.3 功能模型、行为模型的建立及数据
    字典 66
    习题四 68
    第5章 用例建模 69
    5.1 用例模型的基本概念 69
    5.1.1 系统 69
    5.1.2 参与者 70
    5.1.3 用例 71
    5.1.4 关系 71
    5.2 用例建模过程 73
    5.2.1 寻找参与者 74
    5.2.2 寻找用例 75
    5.3 用例建模技巧 77
    5.3.1 用例定义与功能分解 77
    5.3.2 关联关系的确定 78
    5.3.3 详细的用例规约 79
    5.4 行为建模 80
    5.4.1 顺序图建模 81
    5.4.2 状态建模 83
    习题五 85
    第6章 软件体系结构 86
    6.1 软件体系结构的概念 86
    6.1.1 体系结构的由来 86
    6.1.2 软件体系结构的内容 86
    6.1.3 软件体系结构的目标 87
    6.1.4 软件体系结构的发展 87
    6.1.5 体系结构风格、设计模式与软件
    框架 88
    6.2 系统设计 89
    6.2.1 问题架构 89
    6.2.2 软件设计原则 91
    6.3 软件体系结构风格 94
    6.3.1 管道/过滤器风格 94
    6.3.2 调用/返回风格 95
    6.3.3 基于事件的隐式调用风格 98
    6.3.4 仓库风格 99
    6.3.5 体系结构风格的选择 100
    6.4 软件设计过程 100
    习题六 103
    第7章 面向对象设计 104
    7.1 “好的”软件设计 104
    7.1.1 对象职责分配 104
    7.1.2 GRASP职责分配原则 106
    7.2 SOLID设计原则 109
    7.3 类图建模 113
    7.3.1 类的定义 113
    7.3.2 类关系 115
    7.3.3 类图建模 118
    7.4 CRC卡片分拣法 119
    7.5 设计模式 121
    7.5.1 桥梁模式 122
    7.5.2 其他常用GOF模式 125
    习题七 127
    第8章 编写高质量代码 129
    8.1 程序设计语言 129
    8.1.1 程序设计语言的发展及分类 129
    8.1.2 程序设计语言的选择 130
    8.2 良好的编程风格 131
    8.2.1 源程序文档化 132
    8.2.2 数据说明的方法 133
    8.2.3 表达式和语句结构 133
    8.2.4 输入/输出方面 133
    8.3 程序的复杂性及度量 134
    8.3.1 程序的复杂性 134
    8.3.2 McCabe 度量法 134
    8.3.3 Halstead方法 135
    8.4 代码审查与代码优化 136
    8.4.1 代码审查 136
    8.4.2 代码优化 137
    8.5 结对编程实践 138
    习题八 140
    第9章 测试驱动的实现 141
    9.1 软件测试的目的与准则 141
    9.1.1 软件测试的目标 141
    9.1.2 软件测试的准则 142
    9.2 软件测试的类型 143
    9.3 软件测试的方法 145
    9.3.1 测试用例 145
    9.3.2 测试通过率和测试覆盖率 146
    9.3.3 黑盒测试方法 146
    9.3.4 白盒测试方法 149
    9.3.5 测试方法的选择 152
    9.4 软件测试过程 153
    9.4.1 单元测试 153
    9.4.2 集成测试 155
    9.4.3 确认测试 157
    9.4.4 系统测试 158
    9.5 回归测试 159
    9.6 本章小结 159
    习题九 160
    第10章 团队开发管理 161
    10.1 团队组织与管理 161
    10.1.1 人力资源规划 162
    10.1.2 开发团队 163
    10.1.3 团队建设 164
    10.1.4 团队管理 166
    10.2 项目沟通管理 167
    10.3 项目估算 169
    10.3.1 项目计划 169
    10.3.2 项目估算方法 170
    习题十 173
    第11章 敏捷开发与配置管理 174
    11.1 敏捷开发之Scrum 174
    11.1.1 Scrum框架之角色 174
    11.1.2 Scrum框架之制品 175
    11.1.3 Scrum框架之活动 177
    11.2 用户故事与估算 177
    11.2.1 用户故事 178
    11.2.2 构造好的用户故事 178
    11.2.3 用户故事的划分 179
    11.2.4 故事点估算 180
    11.2.5 策划扑克估算 182
    11.3 软件配置管理 183
    11.4 配置管理工具Git 185
    11.4.1 版本控制系统 186
    11.4.2 版本库操作 187
    11.4.3 分支管理 188
    习题十一 189
    第12章 数字传播工程 190
    12.1 数字出版概述 190
    12.1.1 数字出版及特征 190
    12.1.2 数字出版与数字传播 192
    12.1.3 数字出版传播的现状 193
    12.2 数字出版ERP选题系统设计与
    实现 194
    12.2.1 系统概述 194
    12.2.2 选题系统的需求分析 195
    12.2.3 选题系统的概要设计 201
    12.2.4 选题详细功能设计 208
    12.2.5 选题系统的测试 215
    12.3 数字出版技术发展趋势 219
    习题十二 221
    第13章 软件开发实践 222
    13.1 敏捷开发实践之结对编程 222
    13.1.1 待解决问题描述——生命游戏 222
    13.1.2 若干结对编程实战 223
    13.2 UML建模 228
    13.2.1 待解决问题描述——网上选课
    系统 228
    13.2.2 用例建模 228
    13.2.3 行为建模 231
    13.2.4 对象建模 234
    13.3 Git开发实践 237
    13.3.1 安装配置Git 237
    13.3.2 Git基本操作 238
    13.3.3 Eclipse中使用Git进行版本
    控制 240
    参考文献 242
  • 内容简介:
    教材主要包含四个部分:第一部分是对软件工程的一般性介绍,包括软件及软件工程过程等的基本概念;第二部分主要介绍面向对象的设计及设计模式的使用;第三部分介绍团队开发管理和敏捷开发方法;第四部分面向特定领域的软件工程-数字传媒工程的兴起。
  • 目录:
    第1章  软件工程概述 1
    1.1 软件及其特性 1
    1.2 软件工程的产生与发展 2
    1.2.1 软件危机 2
    1.2.2 软件工程的发展 3
    1.3 软件工程的基本概念 4
    1.3.1 什么是软件工程 4
    1.3.2 软件工程的基本要素 5
    1.3.3 软件工程的基本原理 7
    1.4 软件工程的现状与发展趋势 8
    1.4.1 敏捷开发 8
    1.4.2 开放计算 9
    1.4.3 云计算 10
    习题一 11
    第2章 软件过程 12
    2.1 软件过程概述 12
    2.2 软件过程模型 14
    2.2.1 瀑布模型 15
    2.2.2 原型法模型 16
    2.2.3 迭代式开发 16
    2.2.4 可转换模型 18
    2.3 敏捷开发过程 18
    2.3.1 敏捷方法的由来 19
    2.3.2 计划驱动开发和敏捷开发 20
    2.3.3 敏捷方法 21
    习题二 23
    第3章 对象模型 24
    3.1 面向对象基础 24
    3.1.1 面向对象的基本概念 25
    3.1.2 对象、属性与方法 26
    3.2 面向对象方法的要素 27
    3.2.1 对象元素的访问控制 30
    3.2.2 对象职责 32
    3.2.3 通过继承和组合实现重用和扩展 32
    3.3 统一建模语言UML 33
    3.3.1 UML的基本实体 33
    3.3.2 UML图的使用实例 34
    习题三 37
    第4章 需求获取 38
    4.1 需求分析与用户故事 38
    4.2 需求及其分类 41
    4.2.1 需求的定义 41
    4.2.2 需求的内容 41
    4.2.3 需求的分类 42
    4.3 需求获取技术 44
    4.4 需求分析方法 47
    4.4.1 结构化分析 47
    4.4.2 面向对象分析 50
    4.4.3 面向问题域的分析 51
    4.5 需求分析的工具 62
    4.5.1 SADT 62
    4.5.2 PSL/PSA 63
    4.6 传统的软件建模 64
    4.6.1 软件建模 64
    4.6.2 数据模型的建立 65
    4.6.3 功能模型、行为模型的建立及数据
    字典 66
    习题四 68
    第5章 用例建模 69
    5.1 用例模型的基本概念 69
    5.1.1 系统 69
    5.1.2 参与者 70
    5.1.3 用例 71
    5.1.4 关系 71
    5.2 用例建模过程 73
    5.2.1 寻找参与者 74
    5.2.2 寻找用例 75
    5.3 用例建模技巧 77
    5.3.1 用例定义与功能分解 77
    5.3.2 关联关系的确定 78
    5.3.3 详细的用例规约 79
    5.4 行为建模 80
    5.4.1 顺序图建模 81
    5.4.2 状态建模 83
    习题五 85
    第6章 软件体系结构 86
    6.1 软件体系结构的概念 86
    6.1.1 体系结构的由来 86
    6.1.2 软件体系结构的内容 86
    6.1.3 软件体系结构的目标 87
    6.1.4 软件体系结构的发展 87
    6.1.5 体系结构风格、设计模式与软件
    框架 88
    6.2 系统设计 89
    6.2.1 问题架构 89
    6.2.2 软件设计原则 91
    6.3 软件体系结构风格 94
    6.3.1 管道/过滤器风格 94
    6.3.2 调用/返回风格 95
    6.3.3 基于事件的隐式调用风格 98
    6.3.4 仓库风格 99
    6.3.5 体系结构风格的选择 100
    6.4 软件设计过程 100
    习题六 103
    第7章 面向对象设计 104
    7.1 “好的”软件设计 104
    7.1.1 对象职责分配 104
    7.1.2 GRASP职责分配原则 106
    7.2 SOLID设计原则 109
    7.3 类图建模 113
    7.3.1 类的定义 113
    7.3.2 类关系 115
    7.3.3 类图建模 118
    7.4 CRC卡片分拣法 119
    7.5 设计模式 121
    7.5.1 桥梁模式 122
    7.5.2 其他常用GOF模式 125
    习题七 127
    第8章 编写高质量代码 129
    8.1 程序设计语言 129
    8.1.1 程序设计语言的发展及分类 129
    8.1.2 程序设计语言的选择 130
    8.2 良好的编程风格 131
    8.2.1 源程序文档化 132
    8.2.2 数据说明的方法 133
    8.2.3 表达式和语句结构 133
    8.2.4 输入/输出方面 133
    8.3 程序的复杂性及度量 134
    8.3.1 程序的复杂性 134
    8.3.2 McCabe 度量法 134
    8.3.3 Halstead方法 135
    8.4 代码审查与代码优化 136
    8.4.1 代码审查 136
    8.4.2 代码优化 137
    8.5 结对编程实践 138
    习题八 140
    第9章 测试驱动的实现 141
    9.1 软件测试的目的与准则 141
    9.1.1 软件测试的目标 141
    9.1.2 软件测试的准则 142
    9.2 软件测试的类型 143
    9.3 软件测试的方法 145
    9.3.1 测试用例 145
    9.3.2 测试通过率和测试覆盖率 146
    9.3.3 黑盒测试方法 146
    9.3.4 白盒测试方法 149
    9.3.5 测试方法的选择 152
    9.4 软件测试过程 153
    9.4.1 单元测试 153
    9.4.2 集成测试 155
    9.4.3 确认测试 157
    9.4.4 系统测试 158
    9.5 回归测试 159
    9.6 本章小结 159
    习题九 160
    第10章 团队开发管理 161
    10.1 团队组织与管理 161
    10.1.1 人力资源规划 162
    10.1.2 开发团队 163
    10.1.3 团队建设 164
    10.1.4 团队管理 166
    10.2 项目沟通管理 167
    10.3 项目估算 169
    10.3.1 项目计划 169
    10.3.2 项目估算方法 170
    习题十 173
    第11章 敏捷开发与配置管理 174
    11.1 敏捷开发之Scrum 174
    11.1.1 Scrum框架之角色 174
    11.1.2 Scrum框架之制品 175
    11.1.3 Scrum框架之活动 177
    11.2 用户故事与估算 177
    11.2.1 用户故事 178
    11.2.2 构造好的用户故事 178
    11.2.3 用户故事的划分 179
    11.2.4 故事点估算 180
    11.2.5 策划扑克估算 182
    11.3 软件配置管理 183
    11.4 配置管理工具Git 185
    11.4.1 版本控制系统 186
    11.4.2 版本库操作 187
    11.4.3 分支管理 188
    习题十一 189
    第12章 数字传播工程 190
    12.1 数字出版概述 190
    12.1.1 数字出版及特征 190
    12.1.2 数字出版与数字传播 192
    12.1.3 数字出版传播的现状 193
    12.2 数字出版ERP选题系统设计与
    实现 194
    12.2.1 系统概述 194
    12.2.2 选题系统的需求分析 195
    12.2.3 选题系统的概要设计 201
    12.2.4 选题详细功能设计 208
    12.2.5 选题系统的测试 215
    12.3 数字出版技术发展趋势 219
    习题十二 221
    第13章 软件开发实践 222
    13.1 敏捷开发实践之结对编程 222
    13.1.1 待解决问题描述——生命游戏 222
    13.1.2 若干结对编程实战 223
    13.2 UML建模 228
    13.2.1 待解决问题描述——网上选课
    系统 228
    13.2.2 用例建模 228
    13.2.3 行为建模 231
    13.2.4 对象建模 234
    13.3 Git开发实践 237
    13.3.1 安装配置Git 237
    13.3.2 Git基本操作 238
    13.3.3 Eclipse中使用Git进行版本
    控制 240
    参考文献 242
查看详情
12
系列丛书 / 更多
软件工程
MySQL数据库基础与实例教程(工业和信息化普通高等教育“十二五”规划教材)
孔祥盛 编
软件工程
TCP/IP协议及其应用/21世纪高等教育计算机规划教材
林成浴 著;林成浴 编
软件工程
MATLAB实用教程(第2版)
张磊、郭莲英、丛滨 著
软件工程
Access数据库实用教程(第2版)/21世纪高等教育计算机规划教材
郑小玲、张宏、卢山 著
软件工程
嵌入式系统设计大学教程(第2版)
许大琴、万福、谢佑波 著
软件工程
数据结构(Java语言描述)
罗福强 杨剑 刘英 著
软件工程
Access 2010数据库教程 微课版
苏林萍、谢萍、周蓉 著
软件工程
21世纪高等教育计算机规划教材:Oracle 11g数据库管理与开发基础教程
杨艳华 著;袁鹏飞 编
软件工程
多媒体技术及应用
李小英 著
软件工程
计算机网络技术与应用教程(第2版)
张基温、张展赫 著
软件工程
计算机网络技术基础(第2版)
周舸、李昕昕 著
软件工程
JavaScript程序设计基础教程
李源 著
相关图书 / 更多
软件工程
软件工程:经典、现代和前沿
孙艳春 主编, 黄罡,邓水光 编著
软件工程
软件利润流 英文限量版
(美)杰森·坦纳(Jason Tanner)
软件工程
软件逆向分析技术及应用
鲁宏伟 陈凯 邓贤君 许雷永
软件工程
软件性能测试实战教程(LoadRunner与JMeter)
周百顺 主编;张伟
软件工程
软件工程专业英语(第2版)
宋晓涛 谢红薇 郭晓红
软件工程
软件工程--理论与实践
毛新军 董威
软件工程
软件需求分析(微课版)
李美蓉 何中海
软件工程
软件自动化测试入门攻略
杨定佳
软件工程
软件工程(第4版 英文版)
(美) 莎丽·劳伦斯·弗里格(Shari Lawrence Pfleeger)
软件工程
软件性能测试、分析与调优实践之路(第2版)
张永清
软件工程
软件灵活性设计:如何避免陷入编程困境 [美]克里斯·汉森
(美)克里斯·汉森 (美)杰拉尔德·杰伊·萨斯曼
软件工程
软件开发珠玑:穿越50年软件往事的60条戒律
(美)Karl Wiegers(卡尔·魏格斯)
您可能感兴趣 / 更多
软件工程
智能方法及应用
钟珞、袁景凌、李琳、钟忺 著
软件工程
软件工程(第二版)/普通高等教育“十二五”规划教材·计算机类主干课程系列教材
钟珞、袁景凌 编
软件工程
人工神经网络及其融合应用技术
钟珞、饶文碧、邹承明 著