图书介绍

软件工程PDF|Epub|txt|kindle电子书版本网盘下载

软件工程
  • 张海藩,吕云翔编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115326539
  • 出版时间:2013
  • 标注页数:336页
  • 文件大小:104MB
  • 文件页数:348页
  • 主题词:软件工程-高等学校-教材

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

软件工程PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1篇 软件工程与软件过程1

第1章 软件工程概述1

1.1软件危机与软件工程的起源1

1.1.1计算机系统的发展历程1

1.1.2软件危机介绍2

1.1.3产生软件危机的原因2

1.1.4消除软件危机的途径4

1.2软件工程5

1.2.1什么是软件工程5

1.2.2软件工程的基本原理5

1.3软件工程包含的领域7

小结9

习题9

第2章 软件过程11

2.1软件生命周期的基本任务11

2.2瀑布模型14

2.3快速原型模型16

2.4增量模型17

2.5螺旋模型18

2.6喷泉模型19

2.7 Rational统一过程20

2.7.1最佳实践21

2.7.2 RUP的十大要素22

2.7.3 RUP生命周期24

2.8敏捷过程与极限编程26

2.8.1敏捷过程概述26

2.8.2极限编程27

2.9能力成熟度模型29

2.9.1能力成熟度模型的结构29

2.9.2能力成熟度等级30

2.9.3关键过程域31

2.9.4应用CMM32

小结32

习题33

第2篇 传统方法学35

第3章 结构化分析35

3.1概述35

3.2与用户沟通的方法36

3.2.1访谈36

3.2.2简易的应用规格说明技术37

3.2.3软件原型38

3.3分析建模与规格说明39

3.3.1分析建模39

3.3.2软件需求规格说明39

3.4实体—关系图41

3.5数据流图42

3.5.1数据流图符号43

3.5.2例子44

3.5.3命名46

3.6状态转换图47

3.6.1状态47

3.6.2事件47

3.6.3符号48

3.6.4例子48

3.7数据字典49

3.8结构化分析实例51

3.8.1问题陈述51

3.8.2问题定义51

3.8.3可行性研究52

3.8.4需求分析57

小结62

习题63

第4章 结构化设计67

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

4.2软件设计的概念和原理68

4.2.1模块化68

4.2.2抽象70

4.2.3逐步求精70

4.2.4信息隐藏71

4.3模块独立72

4.3.1耦合72

4.3.2内聚73

4.4启发规则74

4.5表示软件结构的图形工具76

4.5.1层次图和HIPO图76

4.5.2结构图78

4.6面向数据流的设计方法79

4.6.1概念79

4.6.2变换分析80

4.6.3事务分析85

4.6.4设计优化86

4.7人—机界面设计87

4.7.1人—机界面设计问题87

4.7.2人—机界面设计过程88

4.7.3界面设计指南89

4.8过程设计91

4.9过程设计的工具92

4.9.1程序流程图93

4.9.2盒图(N-S图)93

4.9.3 PAD图94

4.9.4判定表95

4.9.5判定树96

4.9.6过程设计语言97

4.10面向数据结构的设计方法97

4.10.1 Jackson图98

4.10.2改进的Jackson图99

4.10.3 Jackson方法99

小结103

习题104

第5章 结构化实现106

5.1编码107

5.1.1选择程序设计语言107

5.1.2编码风格108

5.2软件测试基础110

5.2.1测试目标110

5.2.2黑盒测试和白盒测试110

5.2.3测试准则111

5.2.4流图111

5.3逻辑覆盖112

5.4控制结构测试115

5.4.1基本路径测试115

5.4.2条件测试117

5.4.3数据流测试119

5.4.4循环测试120

5.5黑盒测试技术121

5.5.1等价划分121

5.5.2边界值分析123

5.5.3错误推测124

5.6测试策略124

5.6.1测试步骤125

5.6.2单元测试125

5.6.3集成测试127

5.6.4确认测试130

5.7调试131

5.7.1调试过程131

5.7.2调试途径132

5.8软件可靠性133

5.8.1基本概念134

5.8.2估算平均无故障时间的方法134

小结136

习题137

第3篇 面向对象方法学140

第6章 面向对象方法学导论140

6.1面向对象程序设计实例140

6.1.1用对象分解取代功能分解140

6.1.2设计类等级142

6.1.3定义属性和服务143

6.2面向对象方法学概述144

6.2.1面向对象方法学的要点144

6.2.2面向对象的软件过程146

6.3面向对象方法学的主要优点146

6.4面向对象的概念149

6.4.1对象150

6.4.2其他概念152

6.5面向对象建模155

6.6对象模型156

6.6.1表示类的符号156

6.6.2表示关系的符号158

6.7动态模型162

6.8功能模型163

6.9 3种模型之间的关系163

小结164

习题164

第7章 面向对象分析166

7.1分析过程166

7.1.1概述166

7.1.2 3个子模型与5个层次167

7.2需求陈述168

7.2.1书写要点168

7.2.2例子168

7.3建立对象模型169

7.3.1确定类与对象170

7.3.2确定关联171

7.3.3划分主题174

7.3.4确定属性174

7.3.5识别继承关系176

7.3.6反复修改177

7.4建立动态模型179

7.4.1编写脚本179

7.4.2设想用户界面180

7.4.3画事件跟踪图181

7.4.4画状态图182

7.4.5审查动态模型184

7.5建立功能模型184

7.6定义服务186

7.7面向对象分析实例186

7.7.1需求陈述187

7.7.2建立对象模型187

7.7.3建立动态模型188

7.7.4建立功能模型190

7.7.5进一步完善190

小结191

习题192

第8章 面向对象设计194

8.1面向对象设计的准则194

8.2启发规则196

8.3系统分解197

8.3.1子系统之间的两种交互方式198

8.3.2组织系统的两种方案199

8.3.3设计系统的拓扑结构199

8.4设计问题域子系统199

8.5设计人—机交互子系统201

8.5.1设计人—机交互界面的准则201

8.5.2设计人—机交互子系统的策略202

8.6设计任务管理子系统203

8.6.1分析并发性203

8.6.2设计任务管理子系统204

8.7设计数据管理子系统205

8.7.1选择数据存储管理模式205

8.7.2设计数据管理子系统206

8.7.3例子207

8.8设计类中的服务208

8.8.1确定类中应有的服务208

8.8.2设计实现服务的方法208

8.9设计关联209

8.10设计优化210

8.10.1确定优先级210

8.10.2提高效率的几项技术211

8.10.3调整继承关系212

8.11面向对象分析与设计实例213

8.11.1面向对象分析214

8.11.2面向对象设计215

小结220

习题220

第9章 面向对象实现222

9.1程序设计语言222

9.1.1面向对象语言的优点222

9.1.2面向对象语言的技术特点223

9.1.3选择面向对象语言226

9.2程序设计风格226

9.2.1提高可重用性227

9.2.2提高可扩充性228

9.2.3提高健壮性229

9.3测试策略229

9.3.1面向对象的单元测试230

9.3.2面向对象的集成测试230

9.3.3面向对象的确认测试230

9.4设计测试用例230

9.4.1测试类的方法231

9.4.2集成测试方法232

小结234

习题234

第10章 统一建模语言236

10.1概述236

10.1.1 UML的产生和发展236

10.1.2 UML的系统结构237

10.1.3 UML的图238

10.1.4 UML的应用领域239

10.2静态建模机制240

10.2.1用例240

10.2.2类图和对象图244

10.3动态建模机制245

10.3.1消息245

10.3.2状态图246

10.3.3顺序图247

10.3.4协作图248

10.3.5活动图249

10.4描述物理架构的机制249

10.4.1逻辑架构和物理架构250

10.4.2构件图250

10.4.3部署图250

10.5使用和扩展UML252

10.5.1使用UML的准则252

10.5.2扩展UML的机制253

小结253

习题254

第4篇 软件项目管理257

第11章 计划257

11.1度量软件规模257

11.1.1代码行技术257

11.1.2功能点技术258

11.2 工作量估算260

11.2.1静态单变量模型260

11.2.2动态多变量模型260

11.2.3 COCOMO2模型261

11.3进度计划263

11.3.1基本原则264

11.3.2估算软件开发时间264

11.3.3 Gantt图265

11.3.4 工程网络266

11.3.5估算进度267

11.3.6关键路径269

11.3.7机动时间269

小结270

习题271

第12章 组织273

12.1民主制程序员组273

12.2主程序员组274

12.3现代程序员组276

12.4软件项目组277

12.4.1 3种组织方式277

12.4.2 4种组织范型279

小结279

习题279

第13章 控制281

13.1风险管理281

13.1.1软件风险分类281

13.1.2风险识别282

13.1.3风险预测286

13.1.4处理风险的策略287

13.2质量保证289

13.2.1软件质量289

13.2.2软件质量保证措施290

13.3配置管理292

13.3.1软件配置292

13.3.2软件配置管理过程294

小结299

习题299

第14章 软件维护与软件文档301

14.1软件维护301

14.1.1软件维护的过程301

14.1.2软件维护的分类303

14.1.3软件的可维护性303

14.1.4软件维护的副作用304

14.2软件文档305

小结307

习题307

第5篇 高级课题309

第15章 形式化方法309

15.1概述309

15.1.1非形式化方法的缺点309

15.1.2软件开发过程中的数学310

15.1.3应用形式化方法的准则310

15.2有穷状态机311

15.2.1基本概念311

15.2.2电梯问题312

15.2.3评论314

15.3 Petri网315

15.3.1基本概念315

15.3.2应用实例316

15.4 Z语言317

15.4.1简介318

15.4.2评论319

小结320

习题320

第16章 软件重用322

16.1可重用的软件成分322

16.2软件重用过程323

16.2.1构件组装模型323

16.2.2类构件324

16.2.3重用过程模型325

16.3领域工程326

16.3.1分析过程326

16.3.2领域特征327

16.3.3结构建模和结构点328

16.4开发可重用的构件328

16.4.1为了重用的分析与设计328

16.4.2基于构件的开发329

16.5分类和检索构件330

16.5.1描述可重用的构件330

16.5.2重用环境332

16.6软件重用的效益333

小结334

习题334

参考文献335

热门推荐