图书介绍

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

软件工程
  • 齐治昌等编著 著
  • 出版社: 北京:高等教育出版社
  • ISBN:7040059444
  • 出版时间:1997
  • 标注页数:360页
  • 文件大小:24MB
  • 文件页数:371页
  • 主题词:暂缺

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.2 软件的特点2

1.1.3 软件的分类3

1.1.4 软件的发展4

1.1.5 软件危机5

1.2 软件工程的概念7

1.2.1 软件工程的定义7

1.2.2 软件工程的目标7

1.2.3 软件工程的原则9

1.3 软件生存周期10

1.3.1 软件定义10

1.3.2 软件开发11

1.3.3 软件使用、维护和退役13

1.4 软件开发模型13

1.4.1 瀑布模型14

1.4.2 原型模型14

1.4.3 螺旋模型15

1.4.4 基于四代技术的模型16

1.4.5 变换模型17

1.4.6 组合模型17

1.5 CASE工具及环境19

1.5.1 计算机辅助软件工程19

1.5.2 CASE工具19

1.5.3 集成化的CASE环境20

小结21

习题21

第二章 软件项目管理23

2.1 软件度量23

2.1.1 度量、测量和估算23

2.1.2 面向规模的度量25

2.1.3 面向功能的度量26

2.1.4 代码行度量与功能点度量的比较28

2.2 软件项目估算28

2.2.1 代码行、功能点和工作量估算29

2.2.2 经验估算模型之一:CoCoMo模型30

2.2.3 经验估算模型之二:Putnam模型33

2.3 软件质量度量34

2.3.1 软件质量定义及三层次度量模型34

2.3.2 软件质量要素35

2.3.3 软件质量要素评价准则36

2.4 软件复杂性度量39

2.4.1 软件复杂性及度量原则39

2.4.2 控制结构的复杂性度量40

2.4.3 文本复杂性度量41

2.5 软件可靠性度量42

2.5.1 软件可靠性的概念42

2.5.2 软件修复和软件有效性43

2.5.3 软件可靠性估算44

2.6 软件开发过程的管理46

2.6.1 风险分析47

2.6.2 进度安排50

2.6.3 软件开发标准52

2.6.4 软件质量保证54

2.6.5 软件开发人员的组织与分工55

2.6.6 软件项目的开发过程管理56

2.7 软件项目管理中的CASE工具57

小结57

习题57

第三章 计算机系统工程59

3.1 计算机系统工程59

3.1.1 硬件和硬件工程60

3.1.2 软件和软件工程61

3.1.3 人机工程63

3.1.4 数据库工程63

3.2 可行性研究64

3.2.1 引言64

3.2.2 经济可行性65

3.2.3 技术可行性67

3.2.4 方案选择67

3.3 系统模型与模拟69

3.3.1 系统模型69

3.3.2 系统建模和模拟70

3.4 系统规格说明及评审72

3.4.1 系统规格说明72

3.4.2 系统规格说明评审72

小结73

习题73

第四章 需求分析基础74

4.1 分析的任务与原则74

4.2 初步需求获取技术75

4.2.1 访谈与会议75

4.2.2 观察用户工作流程75

4.2.3 用户和开发人员共同组成联合小组76

4.2.4 实例分析76

4.3 需求建模77

4.4 问题抽象、问题分解与多视点分析77

4.5 支持需求分析的快速原型技术78

4.6 需求规格说明与评审79

4.6.1 需求规格说明书的目标与内容79

4.6.2 需求评审81

小结82

习题82

第五章 面向数据流的分析方法85

5.1 数据流图与数据字典85

5.2 实体-关系图87

5.2.1 数据对象、属性与关系87

5.2.2 实体-关系图88

5.3 数据流图的实时系统扩充*89

5.3.1 Ward&Mellor扩充90

5.3.2 Hatley&Pirhai扩充91

5.4 基于数据流的分析方法94

5.4.1 创建数据流模型94

5.4.2 创建控制流模型*96

5.4.3 过程规格说明97

5.5 基于数据流图的需求分析CASE工具*97

5.5.1 核心思想98

5.5.2 语言机制99

5.5.3 动态分析104

5.5.4 基于CASE工具的需求分析105

小结105

习题106

第六章 面向对象的需求分析107

6.1 面向对象的概念与思想107

6.2 面向对象的分析方法108

6.2.1 识别对象108

6.2.2 标识对象的属性110

6.2.3 识别对象的行为111

6.2.4 识别对象所属的类115

6.2.5 定义主题词117

6.2.6 多视点需求分析118

6.3 面向对象的需求分析CASE工具119

6.3.1 概述119

6.3.2 对象及消息传递图119

6.3.3 类结构图121

6.3.4 对象状态转换图122

6.3.5 主题词结构图122

6.3.6 基于CASE工具的需求分析122

小结123

习题123

第七章 面向数据的分析方法与形式化方法125

7.1 面向数据结构的系统开发方法125

7.1.1 Warnier图125

7.1.2 DSSD方法126

7.2 Jackson系统开发方法128

7.2.1 标识实体与行为128

7.2.2 生成实体结构图128

7.2.3 创建软件系统模型129

7.3 形式化方法*131

7.3.1 主要思想131

7.3.2 形式化规格说明语言简介132

7.3.3 形式化需求描述134

7.3.4 形式化方法的现状与发展趋势138

小结139

习题139

第八章 软件设计基础140

8.1 软件设计过程140

8.2 软件设计基本概念141

8.2.1 抽象与逐步求精141

8.2.2 模块化与信息隐藏143

8.2.3 软件总体结构设计145

8.2.4 数据结构设计147

8.2.5 软件过程设计148

8.3 过程设计技术和工具149

8.3.1 结构化程序设计149

8.3.2 图形表示法150

8.3.3 判定表151

8.3.4 过程设计语言(PDL)152

8.3.5 过程设计工具之比较154

8.4 设计规格说明与评审155

小结157

习题157

第九章 面向数据流的设计方法159

9.1 基本概念和设计过程159

9.2 变换分析160

9.3 事务分析166

9.4 启发式设计策略169

9.5 设计优化原则170

9.6 实时系统设计171

9.6.1 实时系统性能要求171

9.6.2 实时系统设计要素171

9.6.3 实时系统设计方法172

9.6.4 设计实例173

小结176

习题177

第十章 面向对象的设计方法179

10.1 面向对象设计的概念179

10.1.1 对象、操作和消息180

10.1.2 类、实例和继承180

10.1.3 对象描述181

10.2 面向对象的设计方法181

10.2.1 主体部件(PDC)的设计182

10.2.2 用户界面部件(HIC)的设计185

10.2.3 任务管理部件(TMC)的设计188

10.2.4 数据管理部件(DMC)的设计189

10.3 基于对象的设计方法190

10.3.1 设计步骤190

10.3.2 详细设计193

小结193

习题194

第十一章 面向数据的设计方法195

11.1 面向数据设计195

11.2 Jackson系统开发方法196

11.2.1 JSD分析技术回顾196

11.2.2 扩充功能性过程196

11.2.3 施加时间约束200

11.2.4 实现与JSP技术201

11.2.5 产生过程表示202

11.3 基于结构化数据的系统开发(DSSD)方法203

11.3.1 DSSD设计步骤204

11.3.2 推导输出数据的逻辑结构204

11.3.3 推导处理过程的逻辑结构205

11.3.4 复杂过程逻辑的描述206

小结208

习题208

第十二章 人机界面设计209

12.1 人的因素209

12.1.1 人类感知基础209

12.1.2 用户的技能210

12.1.3 任务与用户的特殊要求210

12.2 人机界面风格210

12.3 人机界面设计过程211

12.3.1 界面设计的有关模型212

12.3.2 任务分析与建模212

12.3.3 界面设计的一般问题212

12.3.4 实现工具213

12.4 人机界面实现的原则214

12.4.1 一般可交互性214

12.4.2 信息显示214

12.4.3 数据输入214

12.5 人机界面标准215

12.6 支持界面设计的CASE工具215

小结219

习题219

第十三章 程序设计语言和编码220

13.1 程序设计语言220

13.1.1 程序设计语言的特性220

13.1.2 程序设计语言的基本机制221

13.1.3 程序设计语言的演变和分类222

13.1.4 程序设计语言的选择224

13.2 程序设计过程224

13.2.1 面向对象语言对OOD的支持225

13.2.2 基于对象语言对OOD的支持227

13.2.3 过程式语言对OOD的支持229

13.3 编程标准230

13.4 编程风格231

13.5 程序设计支持环境(PSE)233

小结235

习题235

第十四章 软件测试236

14.1 基本概念236

14.1.1 软件测试的目标236

14.1.2 测试阶段的信息流程236

14.1.3 测试用例和场景的设计237

14.1.4 软件测试的步骤238

14.2 软件测试技术239

14.2.1 白盒测试239

14.2.2 黑盒测试246

14.3 软件测试策略248

14.3.1 单元测试248

14.3.2 综合测试250

14.3.3 确认测试253

14.3.4 系统测试254

14.3.5 排错255

14.4 基于CASE工具的软件测试和排错256

14.4.1 自动测试工具256

14.4.2 调试器257

小结258

习题258

第十五章 软件维护261

15.1 软件维护的分类261

15.2 维护过程261

15.2.1 结构化与非结构化的维护262

15.2.2 维护的成本263

15.2.3 可能存在的问题263

15.3 可维护性264

15.3.1 影响可维护性的因素264

15.3.2 若干量化的测度264

15.3.3 保证可维护性的复审264

15.4 维护活动265

15.4.1 维护组织265

15.4.2 维护的报告与评估266

15.4.3 维护活动的事件流266

15.4.4 保存维护记录267

15.4.5 评价维护活动268

15.5 维护的副作用268

15.6 逆向工程与重构工程269

15.6.1 恢复信息的级别270

15.6.2 恢复信息的方法270

小结271

习题271

第十六章 软件配置管理272

16.1 软件配置管理272

16.1.1 基线技术272

16.1.2 软件配置项273

16.2 软件配置管理任务274

16.2.1 标识配置对象274

16.2.2 版本控制275

16.2.3 系统建立276

16.2.4 修改控制276

16.2.5 配置审计277

16.2.6 配置状况报告278

16.3 软件配置管理标准278

16.4 配置管理的CASE工具278

小结280

习题280

第十七章 软件重用技术281

17.1 软件重用281

17.1.1 软件重用的概念281

17.1.2 软件重用的过程与意义282

17.1.3 重用项目的管理282

17.2 软部件库的构造283

17.2.1 域分析283

17.2.2 软部件的开发285

17.2.3 软部件库的组织287

17.3 软部件的重用289

17.3.1 检索与提取软部件289

17.3.2 理解与评价软部件290

17.3.3 修改软部件291

17.3.4 软部件的合成291

17.4 面向对象的软件重用技术292

17.4.1 类库的构造292

17.4.2 类库的检索293

17.4.3 面向对象的合成293

17.5 软件重用项目的管理296

17.5.1 组织机构296

17.5.2 软件重用的考核指标297

17.5.3 创造重用氛围297

17.6 支持软件重用的CASE工具298

17.6.1 软件重用对CASE工具的需求298

17.6.2 类库的组织与检索工具299

小结300

习题301

第十八章 快速原型技术302

18.1 瀑布模型的缺陷302

18.2 快速原型方法304

18.2.1 原型及其作用304

18.2.2 快速原型的构造过程305

18.3 基于快速原型的进化式软件开发306

18.3.1 螺旋模型306

18.3.2 螺旋模型的评价308

18.4 快速原型的技术支持309

18.4.1 用户界面自动生成工具309

18.4.2 面向数据库应用的开发工具312

18.4.3 四代语言315

18.4.4 可重用工具316

18.4.5 程序设计环境316

小结318

习题318

第十九章 集成化CASE环境319

19.1 概述319

19.2 CASE工具的集成形式320

19.2.1 信息交换320

19.2.2 公共界面320

19.2.3 公共信息管理与信息共享320

19.2.4 高度集成321

19.3 集成化CASE环境的总体结构322

19.3.1 界面集成322

19.3.2 工具集成322

19.3.3 信息集成323

19.3.4 软件工程信息库324

19.4 可移植的通用工具环境PCTE326

19.4.1 基本机制326

19.4.2 用户接口327

19.4.3 分布式机制327

小结328

习题328

第二十章 新型软件开发技术*329

20.1 Internet与Java简介329

20.1.1 Internet简介329

20.1.2 Java的发展历史330

20.1.3 Java的特征331

20.1.4 Java的语法机制332

20.1.5 Java的意义337

20.2 Java与Internet环境下的软件开发337

20.2.1 基于Java的软件开发过程338

20.2.2 Java与多媒体主页的制作338

20.2.3 Java与交互式主页的制作343

20.2.4 Java与图形界面344

20.2.5 Java与网络程序设计346

20.3 对象链接与嵌入(OLE)技术348

20.3.1 OLE简介348

20.3.2 构件对象模型348

20.3.3 结构化存储与复合文件349

20.3.4 数据对象传送350

20.3.5 复合文档351

20.3.6 OLE自动化352

20.3.7 OLE控件352

20.4 CORBA与分布计算技术353

20.4.1 分布计算环境353

20.4.2 分布计算技术353

20.4.3 CORBA概述354

20.4.4 Internet环境下的分布式软件开发355

小结356

习题357

参考文献358

热门推荐