当前位置:首页 > 工业技术
软件设计和体系结构
软件设计和体系结构

软件设计和体系结构PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:秦航主编;张健,夏浩波,邱林,徐杏芳,胡森森副主编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2014
  • ISBN:9787302346968
  • 页数:338 页
图书介绍:本书全面系统地讲述了软件设计和体系结构的相关思想、理论和方法,并提供来自业界最新的内容和进展。本书正文共14章,第1章是概述,第2章至第14章讲述了软件模型和描述、软件体系结构建模和UML、软件设计过程、软件体系结构风格、面向对象的软件设计方法、面向数据流的软件设计方法、用户界面设计、设计模式、Web服务体系结构、基于分布构件的体系结构、软件体系结构评估、软件设计的进化、云计算体系结构。
《软件设计和体系结构》目录

第1章 软件工程和软件设计概述 1

1.1软件 1

1.1.1软件的本质 1

1.1.2软件神话 6

1.2软件工程 7

1.2.1软件工程基础知识 7

1.2.2软件过程和软件工程实践 9

1.2.3网络环境带来的影响 11

1.3软件设计 14

1.3.1软件工程中的设计 14

1.3.2设计过程和设计质量 15

1.3.3软件设计原则 16

1.4软件体系结构 20

1.4.1什么是软件体系结构 20

1.4.2软件体系结构的内容 25

1.4.3设计阶段的软件体系结构 29

1.5小结 33

1.6思考题 33

第2章 软件模型和描述 34

2.1什么是软件模型 34

2.2软件模型的发展历程 35

2.3软件模型解析 35

2.3.1功能模型 36

2.3.2对象模型 40

2.3.3组件模型 42

2.3.4配置型组件模型 46

2.3.5服务模型 49

2.3.6抽象模型 51

2.4深入认识软件模型 55

2.4.1软件体系结构的描述 55

2.4.2软件体系结构的设计 58

2.5体系结构描述语言 59

2.5.1 ADL简介 59

2.5.2几种典型ADL的比较 61

2.5.3描述体系结构行为 62

2.6小结 63

2.7思考题 63

第3章 软件体系结构建模和UML 64

3.1软件体系结构建模概述 64

3.2基于软件体系结构的开发 65

3.3 UML概述 66

3.3.1 UML的发展历程 66

3.3.2 UML的特点和用途 67

3.3.3 UML 2.0的建模机制 67

3.4面向对象方法 67

3.4.1面向对象方法中的基本概念 68

3.4.2面向对象方法的优势 70

3.5 UML 2.0中的结构建模 70

3.5.1类图 71

3.5.2对象图 74

3.5.3构件图 74

3.5.4部署图 75

3.6 UML 2.0中的行为建模 75

3.6.1用例图 76

3.6.2顺序图 77

3.6.3通信图 78

3.6.4交互概览图 78

3.6.5时序图 79

3.6.6状态图 79

3.6.7活动图 80

3.7小结 80

3.8思考题 81

第4章 软件设计过程 82

4.1软件设计基础 82

4.2软件体系结构设计 86

4.3高可信软件设计 90

4.3.1可信软件的特点 90

4.3.2容错设计 90

4.3.3软件失效模式和影响分析 91

4.3.4软件故障树分析 92

4.3.5形式化方法 93

4.3.6净室方法 93

4.4软件设计规格说明 94

4.5软件设计评审 94

4.6小结 95

4.7思考题 95

第5章 软件体系结构风格 96

5.1软件体系结构风格概述 96

5.2软件体系结构基本风格解析 97

5.2.1管道-过滤器 97

5.2.2数据抽象和面向对象风格 100

5.2.3基于事件的隐式调用风格 100

5.2.4分层系统风格 101

5.2.5仓库风格和黑板风格 103

5.2.6模型-视图-控制器风格 106

5.2.7解释器风格 107

5.2.8 C2风格 108

5.3案例分析 109

5.3.1案例1:上下文关键字 109

5.3.2案例2:仪器软件 112

5.4 C/S风格 115

5.5三层C/S结构风格 117

5.5.1三层C/S结构的优点 119

5.5.2案例:某石油管理局劳动管理信息系统 120

5.6 B/S风格 123

5.7 C/S与B/S混合结构风格 124

5.8正交软件体系结构风格 125

5.8.1正交软件体系结构的概念 125

5.8.2正交软件体系结构的优点 126

5.8.3正交软件体系结构的实例 126

5.9异构结构风格 129

5.9.1使用异构结构的原因 129

5.9.2异构体系结构的实例 130

5.9.3异构组合匹配问题 133

5.10小结 134

5.11思考题 134

第6章 面向对象的软件设计方法 135

6.1面向对象方法概述 135

6.2面向对象的分析与设计 136

6.2.1面向对象的系统开发过程概述 136

6.2.2面向对象分析 137

6.2.3面向对象设计 137

6.3面向对象的分析与设计过程案例:图书管理系统 146

6.3.1用例分析与设计 146

6.3.2静态建模 150

6.3.3系统设计 151

6.3.4对象设计 152

6.3.5部署模型设计 153

6.4小结 153

6.5思考题 154

第7章 面向数据流的软件设计方法 155

7.1数据流图与数据字典 155

7.1.1数据流图 155

7.1.2数据字典 162

7.2实体-关系图 163

7.3状态迁移图 164

7.4案例分析:教材购销系统 166

7.4.1数据流图的建立 166

7.4.2数据字典的建立 168

7.5面向数据流的需求分析方法 172

7.5.1自顶向下逐层分解 174

7.5.2描述方式 175

7.5.3步骤 175

7.6面向数据流的设计方法 175

7.6.1信息流的类型 175

7.6.2变换分析 177

7.6.3事务分析 181

7.6.4启发式设计策略 182

7.6.5设计优化 183

7.7小结 184

7.8思考题 184

第8章 用户界面分析与设计 186

8.1人性因素 186

8.2设计良好界面的主要途径 187

8.2.1分析用户类型 187

8.2.2运用黄金规则 188

8.3用户界面分析 189

8.3.1用户分析 189

8.3.2任务分析和建模 189

8.3.3内容展示分析 190

8.3.4工作环境分析 190

8.4用户界面设计 190

8.4.1设计过程 190

8.4.2界面对象、动作和布局的定义 192

8.4.3设计用户界面需考虑的问题 193

8.5用户界面原型 194

8.5.1设计用户界面原型需考虑的问题 194

8.5.2实施用户界面原型 196

8.5.3获得有关用户界面原型的反馈 197

8.5.4如何展示原型 198

8.6界面设计的评估 198

8.7小结 199

8.8思考题 199

第9章 设计模式 200

9.1设计模式与体系结构描述 200

9.2设计模式的主要作用 202

9.3常用设计模式解析 202

9.3.1创建型设计模式 202

9.3.2结构型设计模式 206

9.3.3行为型设计模式 215

9.4深入认识设计模式 221

9.5小结 223

9.6思考题 223

第10章 Web服务体系结构 224

10.1 Web服务概述 224

10.2 Web服务体系结构模型 226

10.3 Web服务的核心技术 227

10.4面向服务软件体系结构 234

10.5 Web服务的应用实例 237

10.5.1 Web服务的创建 237

10.5.2 Web服务的发布 238

10.5.3 Web服务的调用 238

10.6小结 238

10.7思考题 239

第11章 基于分布构件的体系结构 240

11.1 EJB分布构件框架 240

11.1.1 EJB技术 240

11.1.2 EJB的规范介绍 242

11.1.3 EJB的体系结构 243

11.2 DCOM分布构件框架 247

11.2.1 DCOM的使用 247

11.2.2 DCOM的特点 248

11.2.3 DCOM的灵活配置与扩展机制 250

11.2.4在应用间共享连接管理 252

11.2.5 DCOM的安全性设置 254

11.3 COBRA分布构件框架 258

11.3.1 COBRA的基本原理 258

11.3.2 CORBA的体系结构 261

11.3.3 CORBA规范 265

11.3.4 CORBA产品概述 266

11.3.5讨论 269

11.4小结 270

11.5思考题 270

第12章 软件体系结构评估 271

12.1软件体系结构评估的定义 271

12.1.1质量属性 271

12.1.2评估的必要性 274

12.1.3基于场景的评估方法 275

12.2 SAAM体系结构分析方法 276

12.2.1 SAAM的一般步骤 277

12.2.2场景的形成 278

12.2.3描述软件体系结构 278

12.2.4场景的分类和优先级划分 278

12.2.5间接场景的单独评估 279

12.2.6评估场景交互 279

12.2.7形成总体评估 280

12.3 ATAM体系结构权衡分析方法 280

12.3.1 ATAM参与人员 280

12.3.2 ATAM结果 281

12.3.3 ATAM的一般过程 282

12.3.4 ATAM评估阶段 284

12.4评估方法比较 285

12.4.1场景的生成方式不同 285

12.4.2风险承担者商业动机的表述方式不同 285

12.4.3软件体系结构的描述方式不同 286

12.5小结 286

12.6思考题 287

第13章 软件设计的进化 288

13.1软件演化概述 288

13.2软件需求演化 290

13.3软件演化的分类 291

13.4软件的进化策略 292

13.4.1函数层次 292

13.4.2类层次 292

13.4.3构件层次 292

13.4.4体系结构层次 293

13.5软件再工程 293

13.5.1业务过程重构 294

13.5.2软件再工程的过程模型 296

13.5.3软件再工程中的经济因素 297

13.6软件体系结构的演化 298

13.6.1软件体系结构模型 298

13.6.2动态软件体系结构 298

13.6.3软件体系结构的重建 299

13.7重构 300

13.7.1重构的目标 300

13.7.2如何重构 301

13.8软件移植 302

13.8.1源代码移植 303

13.8.2二进制移植方法 303

13.9小结 304

13.10思考题 305

第14章 云计算的体系结构 306

14.1云计算 306

14.1.1云计算的定义和技术特点 307

14.1.2云计算的分类 311

14.1.3云计算与网格计算 313

14.2云计算服务模型 314

14.2.1云设计目标 314

14.2.2基础设施层IaaS 315

14.2.3平台层PaaS和应用程序层SaaS 319

14.3云计算主要平台 323

14.3.1谷歌应用引擎 323

14.3.2亚马逊的弹性计算云 328

14.3.3 IBM的蓝云系统 329

14.3.4微软的Azure 330

14.3.5我国云计算产业的发展 331

14.4新兴云软件环境 332

14.4.1开源云计算基础设施 332

14.4.2 Eucalyptus 332

14.4.3 Nimbus 333

14.4.4 RESERVOIR 334

14.5云计算的机遇与挑战 335

14.6小结 336

14.7思考题 336

参考文献 337

返回顶部