图书介绍

面向对象的软件工程 构建复杂且多变的系统2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

面向对象的软件工程 构建复杂且多变的系统
  • (美)Bernd Bruegge,(美)Allen H.Dutoit著;吴丹等译 著
  • 出版社: 北京:清华大学出版社
  • ISBN:7302059381
  • 出版时间:2002
  • 标注页数:461页
  • 文件大小:29MB
  • 文件页数:482页
  • 主题词:

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.2 什么是软件工程3

1.2.1 建模4

1.2.2 问题求解5

1.2.3 知识获取6

1.2.4 基本原理管理6

1.3 软件工程概念7

1.3.2 系统和模型8

1.3.1 参与者和角色8

1.3.3 工作产品9

1.3.4 活动、任务和资源9

1.3.5 目标、需求和约束9

1.3.6 符号、方法和方法学10

1.4 软件工程开发活动10

1.4.1 需求提出11

1.4.2 分析11

1.4.3 系统设计12

1.5.1 交流13

1.5 软件开发的管理13

1.4.5 实现13

1.4.4 对象设计13

1.5.2 基本原理管理14

1.5.3 测试14

1.5.4 软件配置管理14

1.5.5 项目管理15

1.5.6 软件生命周期15

1.6 习题15

参考文献16

2.1 介绍18

第2章 用UML建模18

2.2 UML概述19

2.2.1 用例图19

2.2.2 类图19

2.2.3 顺序图20

2.2.4 状态图21

2.2.5 活动图22

2.3 建模概念22

2.3.1 系统、模型和视图23

2.3.2 概念和现象24

2.3.3 数据类型、抽象数据类型和实例26

2.3.4 类、抽象类和对象27

2.3.5 事件类、事件和消息28

2.3.6 面向对象的建模29

2.3.7 证伪和原型化30

2.4 从更深层次看UML31

2.4.1 用例图31

2.4.2 类图36

2.4.3 顺序图41

2.4.4 状态图42

2.4.5 活动图44

2.4.6 图表组织46

2.4.7 图表扩展49

2.5 习题50

参考文献50

第3章 项目交流52

3.1 引言:一个火箭的例子52

3.2 项目交流纵览53

3.3 交流模式55

3.3.1 问题定义56

3.3.2 客户评审57

3.3.3 项目评审58

3.3.4 检查和预排59

3.3.5 状况检查59

3.3.6 集体讨论59

3.3.7 发布60

3.3.8 事后讨论60

3.3.9 需求阐明61

3.3.10 需求变更62

3.3.11 问题求解62

3.3.12 讨论63

3.4 交流机制64

3.4.1 hallway交谈65

3.4.2 调查问卷和有组织的访谈65

3.4.3 会议66

3.4.4 评审69

3.4.5 实时异地群件69

3.4.6 电子邮件69

3.4.7 新闻组70

3.4.8 万维网71

3.4.9 Lotus Notes71

3.5.1 确定交流需求73

3.5 项目交流活动73

3.4.10 讨论73

3.5.2 建立基础构架75

3.5.3 组织客户和项目评审75

3.5.4 每周组织小组会议76

3.5.5 转变问题回顾78

3.6 习题79

参考文献79

第4章 需求提出81

4.1 引言:可用性实例81

第2部分 处理复杂性81

4.2 需求提出概述83

4.3 需求提出的概念84

4.3.1 功能性需求84

4.3.2 非功能性需求和伪需求85

4.3.3 描述的层次86

4.3.4 正确性、完整性、一致性、清晰性和现实性87

4.3.5 可验证性和可追溯性88

4.3.6 greenfield工程、再工程、界面工程89

4.4 需求提出活动89

4.4.1 确定执行者90

4.4.2 确定场景91

4.4.3 确定用例93

4.4.4 改进用例94

4.4.5 确定执行者和用例之间的关系95

4.4.6 确定最初的分析对象98

4.4.7 确定非功能性需求100

4.5 管理需求提出101

4.5.1 从用户提出信息:任务的知识分析101

4.5.2 与客户协商系统说明:联合应用设计102

4.5.3 确定需求:可用性测试104

4.5.4 记者需求的提出106

4.6 习题108

参考文献109

第5章 分析111

5.1 引言:幻觉111

5.2 分析概述112

5.3 分析的概念113

5.3.1 实体对象、边界对象和控制对象114

5.3.2 回顾关系重数114

5.3.3 受限关系116

5.3.4 归纳117

5.4.1 标识实体对象118

5.4 分析活动:从用例到对象118

5.4.2 标识边界对象121

5.4.3 标识控制对象122

5.4.4 对对象之间的交互进行建模:顺序图123

5.4.5 标识关系126

5.4.6 标识属性128

5.4.7 对单个对象的重要行为进行建模129

5.4.8 对对象间的归纳关系建模130

5.4.9 检查分析模型130

5.4.10 分析总结131

5.5.1 记录分析133

5.5 管理分析133

5.5.2 分配责任134

5.5.3 对分析的交流135

5.5.4 分析模型的循环136

5.5.5 客户签字认可137

5.6 习题139

参考文献140

第6章 系统设计142

6.1 介绍:一个楼层设计的例子142

6.2 系统设计概况145

6.3.1 子系统和类147

6.3 系统设计的概念147

6.3.2 服务和子系统接口148

6.3.3 耦合度与相关性148

6.3.4 分层和分区151

6.3.5 软件体系结构155

6.3.6 UML配置图160

6.4 系统设计活动:从对象到子系统162

6.4.1 起点:路线设计系统的分析模型162

6.4.2 确定设计目标164

6.4.3 确定子系统167

6.4.4 将子系统映射到处理器和组件169

6.4.5 定义连续数据的存储173

6.4.6 定义访问控制176

6.4.7 设计全局控制流180

6.4.8 确定边界条件183

6.4.9 预期变化185

6.4.10 系统设计综述187

6.5 系统设计的管理188

6.5.1 记录系统设计188

6.5.2 分配任务190

6.5.3 与系统设计相关的交流191

6.5.4 系统设计的不断反复192

6.6 习题193

参考文献194

第7章 对象设计196

7.1 介绍:电影示例196

7.2 对象设计概况198

7.3 对象设计概念201

7.3.1 应用域对象和解决域对象回顾201

7.3.2 类型、声明和可见性回顾201

7.3.3 合约:不变量、前提条件和后续条件202

7.3.4 UML对象约束语言204

7.4 对象设计活动205

7.4.1 确定遗漏的属性和操作209

7.4.2 指定类型、声明和可见性212

7.4.3 指定约束条件213

7.4.4 指定异常情况215

7.4.5 确定并调整类库216

7.4.6 确定并调整应用程序框架218

7.4.7 框架的例子:Web对象219

7.4.8 实现关系221

7.4.9 提高可复用性227

7.4.10 消除实现的依赖性228

7.4.11 回顾访问路径231

7.4.12 退化对象:将对象转变成属性232

7.4.13 存储高开销计算的结果233

7.4.14 推迟离开销计算233

7.5 对象设计的管理233

7.5.1 用文档记录对象设计234

7.5.2 分配职责239

7.6 习题240

参考文献241

第8章 基本原理管理244

第3部分 管理变化244

8.1 介绍:火腿的例子245

8.2 基本原理概况246

8.3 基本原理概念248

8.3.1 集中交通管制248

8.3.2 定义难题(Problem):问题249

8.3.3 研究求解空间:提议250

8.3.4 评估求解空间:标准和讨论251

8.3.5 破解求解空间:解决方案253

8.3.7 基于问题的模型和系统的例子255

8.3.6 解决方案的实现:活动项255

8.4.1 CTC系统设计258

8.4 基本原理活动:从问题到决策258

8.4.2 记录会议中的基本原理259

8.4.3 异步记录基本原理266

8.4.4 记录讨论变化时的基本原理268

8.4.5 重组基本原理271

8.5 管理基本原理273

8.5.1 建立基本原理文档273

8.5.2 分配任务275

8.5.4 问题建模和协商276

8.5.3 有关基本原理交流的试探法276

8.5.5 冲突解决策略277

8.6 习题278

参考文献279

第9章 测试281

9.1 介绍281

9.2 测试概况283

9.2.1 质量控制技术284

9.2.2 错误避免技术284

9.2.3 检错技术286

9.2.4 容错技术288

9.3 测试概念288

9.3.1 错误(fault)、误差(error)和故障(failure)289

9.3.2 测试实例292

9.3.3 测试存根和驱动程序294

9.3.4 改正294

9.4 测试活动295

9.4.1 检查组件295

9.4.2 单元测试296

9.4.3 集成测试303

9.4.4 系统测试307

9.5 测试的管理312

9.5.1 规划测试312

9.5.2 记录测试313

9.5.3 分配职责316

9.6 习题316

参考文献317

第10章 软件配置管理319

10.1 介绍:飞机的例子319

10.2 配置管理概述321

10.3 配置管理概念322

10.3.1 配置项和CM聚集323

10.3.2 版本和配置324

10.3.3 变化请求325

10.3.4 宣传版本和发布版本325

10.3.5 仓库和工作区326

10.3.6 版本识别方案326

10.3.7 变化和变化集合328

10.3.8 配置管理工具330

10.4 配置管理活动330

10.4.1 配置项和CM聚集确认332

10.4.2 宣传版本管理333

10.4.3 发布版本管理336

10.4.4 分支管理337

10.4.5 不同版本管理341

10.4.6 变化管理343

10.5 管理配置管理345

10.5.1 记录配置管理345

10.5.2 分配配置管理任务346

10.5.3 计划配置管理活动346

10.6 习题347

参考文献348

11.1 介绍:STS-SIL发射决定349

第11章 项目管理349

11.2 项目管理概述351

11.3 管理的概念354

11.3.1 小组355

11.3.2 角色360

11.3.3 工作产品362

11.3.4 任务362

11.3.5 进度表363

11.4.1 智能办公建筑366

11.4 项目管理活动366

11.4.2 项目启动367

11.4.3 项目监督378

11.4.4 风险管理379

11.4.5 项目协议382

11.4.6 用户验收测试382

11.4.7 安装383

11.4.8 事后总结383

11.5 项目管理模型和活动的管理383

11.5.1 记录项目管理383

11.5.2 分配职责385

11.5.3 交流项目管理386

11.6 习题387

参考文献388

第4部分 尾声390

第12章 软件生命周期390

12.1 引言390

12.2 IEEE1074:开发生命周期过程的标准393

12.2.1 过程和活动393

12.2.3 项目管理394

12.2.2 生命周期建模394

12.2.4 前期开发396

12.2.5 开发397

12.2.6 后期开发398

12.2.7 整体过程(交叉开发)399

12.3 评价软件生命周期模型的成熟度400

12.4 生命周期模型402

12.4.1 瀑布模型404

12.4.2 V模型406

12.4.3 Boehm的螺旋模型406

12.4.4 锯齿模型408

12.4.5 鲨齿模型410

12.4.6 统一软件开发过程411

12.4.7 基于问题的生命周期模型413

12.5 管理活动和产品415

12.5.1 例1:历时4个月在一个地点进行的项目415

12.5.2 例2:历时8个月在两个地点进行的项目418

12.6 习题420

参考文献421

第5部分 附录422

附录A 设计模式422

A.1 抽象Factory:封装平台422

A.2 Adapter:包装遗留代码423

A.3 Bridge:允许备选实现424

A.4 Command:封装控制425

A.5 Composite:表示递归的层次结构426

A.6 Facade:封装子系统427

A.7 Observer:将实体与视图分离428

A.8 Proxy:封装昂贵的对象429

A.9 Strategy: 封装算法430

参考文献430

附录B 术语表432

附录C 参考文献452

热门推荐