软件工程导论(双语版)

软件工程导论(双语版)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: 编著
2017-09
版次: 1
ISBN: 9787121324772
定价: 48.00
装帧: 其他
开本: 16开
纸张: 胶版纸
36人买过
  • 本书按照典型的软件开发过程来组织内容,旨在培养学生具备软件工程思想及实际软件开发的能力。全书共10章,主要内容包括软件工程的起源,软件工程相关概念,软件工程方法、过程和工具,软件可行性研究及需求分析,软件设计,软件编码及实现,软件测试与维护,面向对象的软件工程,软件工程中涉及的管理方面的内容,如软件规模估算、进度计划、人员组织、软件开发风险管理等,以及课程设计方面的内容。本书可以作为普通高校计算机相关专业“软件工程”课程的教材,也可以供学习软件工程(包括参加计算机等级考试或相关专业自学考试)的读者使用参考。   吕云翔,任职于北京航空航天大学,具有多年的软件开发、项目管理、计算机教学经验。 目    录

     

    第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.3  软件工程5

    1.3.1  软件工程的概念5

    1.3.2  软件工程研究的内容5

    1.3.3  软件工程目标和原则6

    1.3.4  软件工程知识体系7

    1.3.5  软件工程的发展8

    1.4  软件过程概述9

    1.5  软件生命周期10

    1.5.1  软件生命周期的概念10

    1.5.2  传统软件生命周期的各个阶段10

    1.6  软件过程模型11

    1.6.1  瀑布模型12

    1.6.2  快速原型模型12

    1.6.3  增量模型13

    1.6.4  螺旋模型14

    1.6.5  喷泉模型14

    1.6.6  基于组件的开发模型15

    1.6.7  统一软件开发过程模型16

    1.6.8  敏捷过程与极限编程17

    1.6.9  几种模型之间的关系19

    1.6.10  选择软件过程模型20

    1.7  软件过程模型实例20

    1.8  软件开发方法22

    1.9  软件工程工具23

    小结25

    习题26

    第2章  可行性研究及需求分析28

    2.1  可行性研究28

    2.1.1  项目立项概述28

    2.1.2  可行性研究的内容28

    2.1.3  可行性研究的步骤29

    2.2  需求分析30

    2.2.1  需求分析的任务30

    2.2.2  需求分析的步骤31

    2.2.3  需求管理33

    2.2.4  需求分析的常用方法34

    2.3  结构化分析概述34

    2.4  结构化分析方法35

    2.4.1  功能建模36

    2.4.2  数据建模39

    2.4.3  行为建模40

    2.4.4  数据字典42

    2.4.5  加工规格说明43

    2.5  结构化分析图形工具44

    2.5.1  层次方框图44

    2.5.2  Warnier图45

    2.5.3  IPO图46

    2.6  结构化分析实例46

    2.7  软件开发计划书编写指南49

    2.8  需求规格说明书编写指南54

    小结59

    习题59

    第3章  软件设计62

    3.1  软件设计的基本概念62

    3.1.1  软件设计的意义和目标62

    3.1.2  软件设计的原则62

    3.1.3  软件设计的分类66

    3.2  结构化软件设计概述67

    3.3  结构化设计与结构化分析的关系67

    3.4  体系结构设计68

    3.4.1  表示软件结构的图形工具68

    3.4.2  面向数据流的设计方法70

    3.4.3  面向数据结构的设计方法72

    3.5  接口设计77

    3.5.1  接口设计概述77

    3.5.2  界面设计78

    3.6  数据设计79

    3.7  过程设计81

    3.7.1  程序流程图81

    3.7.2  N-S图82

    3.7.3  PAD图83

    3.7.4  结构化语言84

    3.8  结构化设计实例85

    3.9  软件设计说明书编写指南88

    小结92

    习题93

    第4章  软件编程95

    4.1  编程语言95

    4.1.1  编程语言的发展与分类95

    4.1.2  选择编程语言需考虑的因素98

    4.2  编程风格99

    4.3  软件编程实例103

    小结105

    习题105

    第5章  软件测试与维护107

    5.1  软件测试的基本概念107

    5.1.1  软件测试的原则107

    5.1.2  软件测试模型108

    5.2  软件测试的分类110

    5.3  测试用例112

    5.3.1  测试用例编写112

    5.3.2  测试用例设计112

    5.3.3  测试用例场景112

    5.4  软件测试方法113

    5.5  黑盒测试113

    5.5.1  等价类划分法114

    5.5.2  边界值分析法116

    5.5.3  错误推测法116

    5.5.4  因果图法117

    5.5.5  决策表法119

    5.5.6  场景法120

    5.5.7  黑盒测试选择122

    5.6  白盒测试122

    5.6.1  代码检查法122

    5.6.2  静态结构分析法123

    5.6.3  程序插桩技术123

    5.6.4  逻辑覆盖法123

    5.6.5  基本路径法125

    5.6.6  白盒测试方法选择127

    5.6.7  白盒测试与黑盒测试比较127

    5.7  软件测试的一般步骤128

    5.8  单元测试128

    5.8.1  单元测试概述128

    5.8.2  单元测试内容129

    5.8.3  单元测试方法129

    5.9  集成测试130

    5.9.1  集成测试概述130

    5.9.2  集成测试分析130

    5.9.3  集成测试策略131

    5.10  系统测试134

    5.10.1  系统测试概述134

    5.10.2  系统测试类型134

    5.11  验收测试136

    5.11.1  验收测试概述136

    5.11.2  验收测试内容136

    5.11.3  α测试和β测试136

    5.12  回归测试137

    5.13  软件调试138

    5.13.1  调试过程138

    5.13.2  调试途径138

    5.14  软件测试实例138

    5.15  测试分析报告编写指南144

    5.16  软件维护147

    5.16.1  软件维护的过程147

    5.16.2  软件维护的分类149

    5.16.3  软件的可维护性150

    5.16.4  软件维护的副作用151

    5.16.5  软件再工程技术152

    小结153

    习题154

    第6章  面向对象方法与UML157

    6.1  面向对象的软件工程方法157

    6.1.1  面向对象的基本概念157

    6.1.2  面向对象的软件工程方法的特征与优势158

    6.1.3  面向对象的实施步骤159

    6.2  统一建模语言(UML)160

    6.2.1  UML简述160

    6.2.2  UML的特点160

    6.2.3  UML的应用范围161

    6.2.4  UML的图161

    6.2.5  UML“4 1”视图162

    6.3  静态建模机制163

    6.3.1  用例图163

    6.3.2  类图和对象图165

    6.3.3  包图169

    6.4  动态建模机制170

    6.4.1  顺序图170

    6.4.2  协作图171

    6.4.3  状态图172

    6.4.4  活动图173

    6.5  描述物理架构的机制174

    6.5.1  构件图174

    6.5.2  部署图175

    小结175

    习题176

    第7章  面向对象分析179

    7.1  面向对象分析方法179

    7.1.1  面向对象分析过程179

    7.1.2  面向对象分析原则180

    7.2  面向对象建模181

    7.2.1  建立对象模型182

    7.2.2  建立动态模型186

    7.2.3  建立功能模型189

    7.2.4  3种模型之间的关系190

    7.3  面向对象分析实例190

    小结195

    习题195

    第8章  面向对象设计与实现197

    8.1  面向对象设计与结构化设计197

    8.2  面向对象设计与面向对象分析的关系197

    8.3  面向对象设计的过程与规则197

    8.3.1  面向对象设计的过程197

    8.3.2  面向对象设计的原则199

    8.4  面向对象设计的启发规则200

    8.5  系统设计200

    8.5.1  系统分解201

    8.5.2  问题域子系统的设计202

    8.5.3  人机交互子系统的设计205

    8.5.4  任务管理子系统的设计208

    8.5.5  数据管理子系统的设计209

    8.6  对象设计211

    8.6.1  设计类中的服务211

    8.6.2  设计类的关联213

    8.6.3  对象设计优化214

    8.7  面向对象设计实例217

    8.8  面向对象实现221

    8.9  面向对象的软件测试221

    小结224

    习题224

    第9章  软件工程管理226

    9.1  软件估算226

    9.1.1  软件估算的概念226

    9.1.2  软件估算的方法227

    9.1.3  软件估算的原则与技巧228

    9.2  软件开发进度计划229

    9.2.1  Gantt图229

    9.2.2  PERT图229

    9.3  软件开发人员组织230

    9.3.1  民主制程序员组230

    9.3.2  主程序员组230

    9.3.3  现代程序员组231

    9.4  软件开发风险管理231

    9.4.1  软件开发风险231

    9.4.2  软件开发风险管理232

    9.5  软件质量保证233

    9.5.1  软件质量的基本概念233

    9.5.2  软件质量保证的措施235

    9.6  软件配置管理概述235

    9.6.1  软件配置管理术语235

    9.6.2  配置管理的过程238

    9.6.3  配置管理的角色划分239

    9.7  软件工程标准与软件文档240

    9.7.1  软件工程标准240

    9.7.2  软件文档241

    9.8  软件过程能力成熟度模型243

    9.9  软件项目管理244

    9.9.1  软件项目管理概述244

    9.9.2  软件项目管理与软件工程的关系245

    9.10  软件复用245

    小结247

    习题248

    第10章  课程设计250

    10.1  课程设计指导250

    10.2  案例——“Web Publishing System”255

    10.2.1  Software Project Plan255

    10.2.2  Software Requirements Specification263

    10.2.3  Software Design Specification284

    10.2.4  Software Testing Report313

    小结324

    习题324

    附录A  词汇与缩略语325

    附录B  案例——Web Publishing System(通过扫描二维码获取中文文档和源代码)330

    附录C  部分习题参考答案331

    参考文献349
  • 内容简介:
    本书按照典型的软件开发过程来组织内容,旨在培养学生具备软件工程思想及实际软件开发的能力。全书共10章,主要内容包括软件工程的起源,软件工程相关概念,软件工程方法、过程和工具,软件可行性研究及需求分析,软件设计,软件编码及实现,软件测试与维护,面向对象的软件工程,软件工程中涉及的管理方面的内容,如软件规模估算、进度计划、人员组织、软件开发风险管理等,以及课程设计方面的内容。本书可以作为普通高校计算机相关专业“软件工程”课程的教材,也可以供学习软件工程(包括参加计算机等级考试或相关专业自学考试)的读者使用参考。
  • 作者简介:
      吕云翔,任职于北京航空航天大学,具有多年的软件开发、项目管理、计算机教学经验。
  • 目录:
    目    录

     

    第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.3  软件工程5

    1.3.1  软件工程的概念5

    1.3.2  软件工程研究的内容5

    1.3.3  软件工程目标和原则6

    1.3.4  软件工程知识体系7

    1.3.5  软件工程的发展8

    1.4  软件过程概述9

    1.5  软件生命周期10

    1.5.1  软件生命周期的概念10

    1.5.2  传统软件生命周期的各个阶段10

    1.6  软件过程模型11

    1.6.1  瀑布模型12

    1.6.2  快速原型模型12

    1.6.3  增量模型13

    1.6.4  螺旋模型14

    1.6.5  喷泉模型14

    1.6.6  基于组件的开发模型15

    1.6.7  统一软件开发过程模型16

    1.6.8  敏捷过程与极限编程17

    1.6.9  几种模型之间的关系19

    1.6.10  选择软件过程模型20

    1.7  软件过程模型实例20

    1.8  软件开发方法22

    1.9  软件工程工具23

    小结25

    习题26

    第2章  可行性研究及需求分析28

    2.1  可行性研究28

    2.1.1  项目立项概述28

    2.1.2  可行性研究的内容28

    2.1.3  可行性研究的步骤29

    2.2  需求分析30

    2.2.1  需求分析的任务30

    2.2.2  需求分析的步骤31

    2.2.3  需求管理33

    2.2.4  需求分析的常用方法34

    2.3  结构化分析概述34

    2.4  结构化分析方法35

    2.4.1  功能建模36

    2.4.2  数据建模39

    2.4.3  行为建模40

    2.4.4  数据字典42

    2.4.5  加工规格说明43

    2.5  结构化分析图形工具44

    2.5.1  层次方框图44

    2.5.2  Warnier图45

    2.5.3  IPO图46

    2.6  结构化分析实例46

    2.7  软件开发计划书编写指南49

    2.8  需求规格说明书编写指南54

    小结59

    习题59

    第3章  软件设计62

    3.1  软件设计的基本概念62

    3.1.1  软件设计的意义和目标62

    3.1.2  软件设计的原则62

    3.1.3  软件设计的分类66

    3.2  结构化软件设计概述67

    3.3  结构化设计与结构化分析的关系67

    3.4  体系结构设计68

    3.4.1  表示软件结构的图形工具68

    3.4.2  面向数据流的设计方法70

    3.4.3  面向数据结构的设计方法72

    3.5  接口设计77

    3.5.1  接口设计概述77

    3.5.2  界面设计78

    3.6  数据设计79

    3.7  过程设计81

    3.7.1  程序流程图81

    3.7.2  N-S图82

    3.7.3  PAD图83

    3.7.4  结构化语言84

    3.8  结构化设计实例85

    3.9  软件设计说明书编写指南88

    小结92

    习题93

    第4章  软件编程95

    4.1  编程语言95

    4.1.1  编程语言的发展与分类95

    4.1.2  选择编程语言需考虑的因素98

    4.2  编程风格99

    4.3  软件编程实例103

    小结105

    习题105

    第5章  软件测试与维护107

    5.1  软件测试的基本概念107

    5.1.1  软件测试的原则107

    5.1.2  软件测试模型108

    5.2  软件测试的分类110

    5.3  测试用例112

    5.3.1  测试用例编写112

    5.3.2  测试用例设计112

    5.3.3  测试用例场景112

    5.4  软件测试方法113

    5.5  黑盒测试113

    5.5.1  等价类划分法114

    5.5.2  边界值分析法116

    5.5.3  错误推测法116

    5.5.4  因果图法117

    5.5.5  决策表法119

    5.5.6  场景法120

    5.5.7  黑盒测试选择122

    5.6  白盒测试122

    5.6.1  代码检查法122

    5.6.2  静态结构分析法123

    5.6.3  程序插桩技术123

    5.6.4  逻辑覆盖法123

    5.6.5  基本路径法125

    5.6.6  白盒测试方法选择127

    5.6.7  白盒测试与黑盒测试比较127

    5.7  软件测试的一般步骤128

    5.8  单元测试128

    5.8.1  单元测试概述128

    5.8.2  单元测试内容129

    5.8.3  单元测试方法129

    5.9  集成测试130

    5.9.1  集成测试概述130

    5.9.2  集成测试分析130

    5.9.3  集成测试策略131

    5.10  系统测试134

    5.10.1  系统测试概述134

    5.10.2  系统测试类型134

    5.11  验收测试136

    5.11.1  验收测试概述136

    5.11.2  验收测试内容136

    5.11.3  α测试和β测试136

    5.12  回归测试137

    5.13  软件调试138

    5.13.1  调试过程138

    5.13.2  调试途径138

    5.14  软件测试实例138

    5.15  测试分析报告编写指南144

    5.16  软件维护147

    5.16.1  软件维护的过程147

    5.16.2  软件维护的分类149

    5.16.3  软件的可维护性150

    5.16.4  软件维护的副作用151

    5.16.5  软件再工程技术152

    小结153

    习题154

    第6章  面向对象方法与UML157

    6.1  面向对象的软件工程方法157

    6.1.1  面向对象的基本概念157

    6.1.2  面向对象的软件工程方法的特征与优势158

    6.1.3  面向对象的实施步骤159

    6.2  统一建模语言(UML)160

    6.2.1  UML简述160

    6.2.2  UML的特点160

    6.2.3  UML的应用范围161

    6.2.4  UML的图161

    6.2.5  UML“4 1”视图162

    6.3  静态建模机制163

    6.3.1  用例图163

    6.3.2  类图和对象图165

    6.3.3  包图169

    6.4  动态建模机制170

    6.4.1  顺序图170

    6.4.2  协作图171

    6.4.3  状态图172

    6.4.4  活动图173

    6.5  描述物理架构的机制174

    6.5.1  构件图174

    6.5.2  部署图175

    小结175

    习题176

    第7章  面向对象分析179

    7.1  面向对象分析方法179

    7.1.1  面向对象分析过程179

    7.1.2  面向对象分析原则180

    7.2  面向对象建模181

    7.2.1  建立对象模型182

    7.2.2  建立动态模型186

    7.2.3  建立功能模型189

    7.2.4  3种模型之间的关系190

    7.3  面向对象分析实例190

    小结195

    习题195

    第8章  面向对象设计与实现197

    8.1  面向对象设计与结构化设计197

    8.2  面向对象设计与面向对象分析的关系197

    8.3  面向对象设计的过程与规则197

    8.3.1  面向对象设计的过程197

    8.3.2  面向对象设计的原则199

    8.4  面向对象设计的启发规则200

    8.5  系统设计200

    8.5.1  系统分解201

    8.5.2  问题域子系统的设计202

    8.5.3  人机交互子系统的设计205

    8.5.4  任务管理子系统的设计208

    8.5.5  数据管理子系统的设计209

    8.6  对象设计211

    8.6.1  设计类中的服务211

    8.6.2  设计类的关联213

    8.6.3  对象设计优化214

    8.7  面向对象设计实例217

    8.8  面向对象实现221

    8.9  面向对象的软件测试221

    小结224

    习题224

    第9章  软件工程管理226

    9.1  软件估算226

    9.1.1  软件估算的概念226

    9.1.2  软件估算的方法227

    9.1.3  软件估算的原则与技巧228

    9.2  软件开发进度计划229

    9.2.1  Gantt图229

    9.2.2  PERT图229

    9.3  软件开发人员组织230

    9.3.1  民主制程序员组230

    9.3.2  主程序员组230

    9.3.3  现代程序员组231

    9.4  软件开发风险管理231

    9.4.1  软件开发风险231

    9.4.2  软件开发风险管理232

    9.5  软件质量保证233

    9.5.1  软件质量的基本概念233

    9.5.2  软件质量保证的措施235

    9.6  软件配置管理概述235

    9.6.1  软件配置管理术语235

    9.6.2  配置管理的过程238

    9.6.3  配置管理的角色划分239

    9.7  软件工程标准与软件文档240

    9.7.1  软件工程标准240

    9.7.2  软件文档241

    9.8  软件过程能力成熟度模型243

    9.9  软件项目管理244

    9.9.1  软件项目管理概述244

    9.9.2  软件项目管理与软件工程的关系245

    9.10  软件复用245

    小结247

    习题248

    第10章  课程设计250

    10.1  课程设计指导250

    10.2  案例——“Web Publishing System”255

    10.2.1  Software Project Plan255

    10.2.2  Software Requirements Specification263

    10.2.3  Software Design Specification284

    10.2.4  Software Testing Report313

    小结324

    习题324

    附录A  词汇与缩略语325

    附录B  案例——Web Publishing System(通过扫描二维码获取中文文档和源代码)330

    附录C  部分习题参考答案331

    参考文献349
查看详情
12
相关图书 / 更多
软件工程导论(双语版)
软件工程(第7版微课版十三五职业教育国家规划教材)
高树芳 主编
软件工程导论(双语版)
软件测试技术任务驱动式教程(第2版)
吴伶琳、王明珠 编
软件工程导论(双语版)
软件工程实践教程:基于开源和群智的方法
毛新军;王涛;余跃
软件工程导论(双语版)
软件测试
崔义 主编;任淑艳
软件工程导论(双语版)
软件性能测试实战教程(LoadRunner与JMeter)
周百顺 主编;张伟
软件工程导论(双语版)
软件测试基础教程 软硬件技术 高尚兵,高丽主编 新华正版
高尚兵,高丽主编
软件工程导论(双语版)
软件工程--理论与实践
毛新军 董威
软件工程导论(双语版)
软件文化基础(第二版)
覃征;党璇;易建山;王国龙;张紫欣;徐树皓;吴浔
软件工程导论(双语版)
软件安全
邹德清
软件工程导论(双语版)
软件需求工程方法与实践
金芝、刘璘、陈小红、李童
软件工程导论(双语版)
软件工程原理与实践 沈备军 万成城 陈昊鹏 陈雨亭
沈备军 万成城 陈昊鹏 陈雨亭
软件工程导论(双语版)
软件化雷达模型重构与数据流仿真技术
王磊
您可能感兴趣 / 更多
软件工程导论(双语版)
计算机导论(第3版·题库·微课视频版)
吕云翔 李沛伦
软件工程导论(双语版)
云计算与大数据技术(第2版·微课视频·题库版)
吕云翔 钟巧灵 柏燕峥 许鸿智 张璐 王佳玮 韩雪婷 仇善召 杜宸洋
软件工程导论(双语版)
数据结构(Python版)(第2版·微课视频版)
吕云翔;郭颖美;孟爻;吴宜航;杨壮
软件工程导论(双语版)
Python网络爬虫:从入门到精通(附微课)
吕云翔
软件工程导论(双语版)
数据结构(Java版)(第2版·微课视频版)
吕云翔 郭颖美 王子豪
软件工程导论(双语版)
Python爬虫案例实战(微课视频版)
吕云翔 韩延刚 张扬 主编;谢吉力 杨壮 王渌汀 王志鹏 杨瑞翌 副主编
软件工程导论(双语版)
Python数据分析与可视化案例实战(项目实战·源码解读·微课视频版)
吕云翔;王志鹏;许丽华;王肇一;朱英豪;闫坤;仇善召;唐佳伟;冯凯文;陈唯;陈天异;洪振东;杨云飞;谢谨蔓;姚泽良;韩延刚;吴宜航
软件工程导论(双语版)
Python网络爬虫技术与实践
吕云翔 张扬 杨壮 编著
软件工程导论(双语版)
大数据可视化技术(微课视频+题库版)
吕云翔 姚泽良 主编;谢吉力 朱英豪 仇善召 韩延刚 黄泽桓 副主编
软件工程导论(双语版)
云计算导论(第3版·题库·微课视频版)
吕云翔 柏燕峥 许鸿智 杜宸洋 张璐 王佳玮
软件工程导论(双语版)
软件工程项目化教程(微课视频版)
吕云翔;黎可为;张中基
软件工程导论(双语版)
大数据可视化技术与应用
吕云翔 姚泽良 谢吉力 编著