图书目录

第1章软件工程基础概述1

1.1软件工程的发展1

1.1.1软件危机概述1

1.1.2软件工程的发展过程3

1.2软件及软件工程概述5

1.2.1软件的概念特点和分类5

1.2.2软件工程的概念及特点7

1.2.3软件工程学及其主要内容8

1.2.4软件过程及开发过程13

1.2.5软件工程基本原理及原则16

1.3软件生存周期17

1.3.1软件生存周期的有关概念17

1.3.2软件生存周期的阶段划分17

1.3.3软件生存周期各阶段的任务18

1.4软件开发模型19

1.4.1瀑布模型概述19

1.4.2快速原型模型概述21

1.4.3增量模型概述21

1.4.4螺旋模型概述22

1.4.5喷泉模型概述22

1.4.6基于面向对象的模型24

*1.4.7其他软件开发模型24

1.4.8软件开发模型的选定27

1.5实验一软件开发准备及Visio应用28

1.5.1任务一软件开发前准备工作28

1.5.2任务二Microsoft Visio 2013应用29\软\件\工\程\与\实\践\(第2版)\/目录/ 1.6本章小结32

1.7练习与实践一32

第2章可行性分析及开发计划34

2.1软件问题的提出和定义34

2.1.1软件问题的提出34

2.1.2软件问题初步调研35

2.1.3软件问题定义的内容36

2.2可行性分析及立项39

2.2.1可行性分析的概念及目的39

2.2.2可行性分析的任务及内容40

2.2.3可行性分析的过程44

2.3软件立项及合同签订45

2.3.1软件立项方法及文档46

2.3.2签订合同的方法与文档46

2.3.3任务下达的方式及文档48

2.4系统流程图48

2.4.1系统流程图基本符号48

2.4.2系统流程图主要用途49

2.5软件开发计划51

2.5.1软件开发计划的目的及分类51

2.5.2软件开发计划的内容及制订51

2.5.3软件开发计划书55

2.6实验二软件可行性分析报告59

2.6.1实验目的59

2.6.2实验任务及要求59

2.6.3实验内容及步骤59

2.7本章小结61

2.8练习与实践二61

第3章软件需求分析64

3.1软件需求分析概述64

3.1.1软件需求分析的概念及特点64

3.1.2软件需求分析的目的和原则66

3.2软件需求分析的任务及过程67

3.2.1软件需求分析的任务67

3.2.2软件需求分析的过程70

3.3软件需求分析描述工具71

3.3.1软件需求描述工具概述71

3.3.2业务流程图72

3.3.3数据流图及数据字典73

3.3.4处理过程描述81

3.4软件需求分析方法83

3.4.1软件需求分析方法的种类83

3.4.2结构化分析方法84

3.4.3面向流程分析方法85

3.5软件需求分析文档88

3.5.1软件需求文档概述88

3.5.2软件需求文档编写90

3.6实验三需求分析文档与PowerDesigner建模93

3.6.1实验目的93

3.6.2实验要求94

3.6.3实验内容和步骤94

3.6.4实验报告要求94

3.7本章小结95

3.8练习与实践三96

第4章软件设计98

4.1软件设计概述98

4.1.1软件设计的概念和目标98

4.1.2软件设计的过程99

4.2软件总体设计100

4.2.1软件总体设计的任务100

4.2.2总体设计的原则和过程100

4.2.3软件总体设计的方法104

4.3软件详细设计108

4.3.1详细设计的任务和原则109

4.3.2详细设计的方法和工具109

4.4数据库设计概述111

4.4.1数据库设计的任务及步骤111

4.4.2概念数据模型设计112

4.4.3逻辑结构及物理结构设计112

4.5网络系统设计概述113

4.5.1网络技术及结构设计113

4.5.2网络站点及接入设计114

4.5.3网络性能及安全性设计115

4.6用户界面设计118

4.6.1界面设计的意义及任务118

4.6.2用户界面设计的原则118

4.6.3对话设计基本方法119

4.6.4数据输入界面设计120

4.6.5数据输出界面设计122

4.6.6控制界面的设计124

4.7软件设计文档125

4.7.1系统/子系统设计(结构设计)说明(SSDD)125

4.7.2详细设计文档及设计评审131

4.8实验四编写详细设计文档132

4.8.1实验目的132

4.8.2实验内容及步骤132

4.8.3实验结果133

4.9本章小结133

4.10练习与实践四134

第5章面向对象开发技术135

5.1面向对象的相关概念135

5.1.1对象与类136

5.1.2继承及多态性137

5.1.3消息与方法138

5.2面向对象方法概述138

5.2.1面向对象方法的概念138

5.2.2面向对象方法的特点139

5.2.3面向对象开发过程及范型139

5.2.4面向对象开发方法140

5.3面向对象分析143

5.3.1面向对象分析的任务143

5.3.2面向对象分析的过程143

5.3.3对象建模技术144

5.3.4UML概述147

5.4面向对象设计151

5.4.1面向对象设计的准则及任务152

5.4.2系统设计的过程153

5.4.3对象设计的过程156

5.4.4类设计的目标及方法157

5.5面向对象分析和设计实例159

5.5.1图书管理信息系统OOA实例159

5.5.2图书管理信息系统OOD实例162

5.6实验五Rational Rose应用165

5.6.1用Rational Rose绘制用例图165

5.6.2用Rational Rose绘制类图167

5.7本章小结172

5.8练习与实践五173

第6章软件实现174

6.1软件实现概述174

6.1.1软件实现的任务及过程174

6.1.2软件实现的准则175

6.1.3软件实现策略与管理176

6.2编程语言与编码技术179

6.2.1编程语言概述179

6.2.2编程语言的选择183

6.2.3常用编程方法186

6.2.4编程规范及风格188

6.3常用编程工具与环境192

6.3.1常用集成开发环境193

6.3.2编码管理系统及编译程序194

6.3.3软件生成技术195

6.4软件实现的文档196

6.4.1实现文档的组成及要求196

6.4.2软件用户手册编写197

6.5实验六应用软件编程实现199

6.6本章小结200

6.7练习与实践六200

第7章软件测试与维护202

7.1软件测试概述202

7.1.1软件测试的概念及内容202

7.1.2软件测试的目的和原则204

7.2软件测试的特点及过程205

7.2.1软件测试的特点205

7.2.2软件测试的过程206

7.3软件测试阶段及任务209

7.3.1单元测试及任务209

7.3.2集成测试与软件集成209

7.3.3有效性测试及内容212

7.3.4系统测试及验收213

7.4软件测试策略及面向对象测试214

7.4.1软件测试策略214

7.4.2面向对象软件测试 216

7.5软件测试方法、用例及标准217

7.5.1软件测试方法217

7.5.2软件测试用例设计及方法222

7.5.3软件测试标准和工具225

7.5.4软件测试文档228

7.6软件调试与发布229

7.6.1软件调试的特点及过程229

7.6.2软件调试的方法230

7.6.3软件调试的原则231

7.6.4软件推广及发布232

7.7软件维护233

7.7.1软件维护概述233

7.7.2软件维护策略及方法234

7.7.3软件维护过程及任务234

*7.7.4软件再工程技术235

7.8实验七软件测试与调试应用236

7.9本章小结237

7.10练习与实践七238

第8章软件项目管理240

8.1软件项目管理概述240

8.1.1软件项目管理的概念及特点240

8.1.2软件项目管理的过程及内容242

8.2软件项目的启动与组织管理243

8.2.1软件项目的启动过程及任务243

8.2.2软件项目组织管理245

8.3软件项目进度管理248

8.3.1软件项目进度估算248

8.3.2软件项目进度安排251

8.4软件项目的过程管理255

8.4.1软件项目需求管理255

8.4.2软件项目质量管理256

8.4.3软件配置管理259

8.4.4软件项目风险管理261

8.5软件项目监控与验收265

8.5.1软件项目监控过程265

8.5.2软件项目监控内容及方法266

8.5.3软件项目评审268

8.5.4软件项目收尾与验收269

8.6实验八软件项目管理应用271

8.7本章小结273

8.8练习与实践八274

第9章软件工程新技术及体系277

9.1软件工程新技术277

9.1.1面向服务的计算277

9.1.2云计算技术281

9.1.3大数据技术285

*9.2能力成熟度集成模型287

9.2.1CMMI概述287

9.2.2CMMI能力成熟度级别288

9.2.3CMMI的评估及应用289

*9.3软件工程新体系291

9.3.1IBM Rational软件工程体系291

9.3.2微软软件工程体系293

9.3.3敏捷软件工程体系297

*9.4形式化方法及其软件工程体系301

9.4.1形式化方法301

*9.4.2净室软件工程体系303

9.5本章小结307

9.6练习与实践九308

第10章WebApp开发综合案例310

10.1WebApp项目开发概述310

10.1.1WebApp的特点及类型311

10.1.2WebApp的开发任务、过程和方法312

10.1.3WebApp需求分析315

10.1.4WebApp设计方法318

10.1.5WebApp测试技术和方法322

10.1.6WebApp项目管理325

10.2Web商品进销存信息系统327

10.2.1系统需求分析327

10.2.2系统设计333

10.2.3系统实现338

10.3Web图书商城信息系统343

10.3.1可行性分析343

10.3.2软件需求分析344

10.3.3软件设计348

10.3.4软件实现352

10.4课程设计任务书及评价356

10.4.1课程设计任务书356

10.4.2课程设计报告评价358

10.5本章小结360

附录A练习与实践习题部分参考答案361

附录B软件工程部分文档编写指南365

参考文献379