当前位置:首页 > 工业技术
需求工程  软件建模与分析  第2版
需求工程  软件建模与分析  第2版

需求工程 软件建模与分析 第2版PDF电子书下载

工业技术

  • 电子书积分:16 积分如何计算积分?
  • 作 者:骆斌主编;丁二玉编著
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2015
  • ISBN:9787040417142
  • 页数:504 页
图书介绍:本书分为五个部分。第一部分“绪论”是对需求工程的宏观介绍,第二部分“需求获取”介绍需求工程的需求获取活动,第三部分“需求分析”介绍了需求工程的需求分析活动,第四部分“需求的文档化和验证”介绍需求工程的需求规格说明活动和需求验证活动,本书可供从事软件需求相关工作的软件技术人员使用,可供学习软件工程课程、特别是软件需求课程的高等学校高年级学生和研究生使用。
《需求工程 软件建模与分析 第2版》目录

第一部分 绪论 3

第1章 需求工程导论 3

1.1 软件生产中的需求问题 3

1.1.1 需求问题是当前软件开发面临的主要问题 3

1.1.2 软件的模拟特性 6

1.1.3 需求问题具体原因分析 9

1.2 需求工程 11

1.2.1 需求工程简介 12

1.2.2 需求工程与系统工程 13

1.2.3 需求工程的重要性 14

1.2.4 需求工程的复杂性 16

1.3 需求工程师 17

引用文献 20

第2章 需求基础 23

2.1 需求的定义 23

2.2 满足需求就是解决问题 23

2.2.1 问题与需求 23

2.2.2 问题解决的两个方面——问题域与解系统 24

2.2.3 问题解决的基础——模拟与共享现象 26

2.2.4 问题解决的方法——直接与间接 27

2.2.5 问题解决方案——需求规格说明 28

2.2.6 问题解决的困难性 28

2.3 需求和问题都有层次性 28

2.3.1 战略问题与业务需求 29

2.3.2 任务问题与用户需求 30

2.3.3 系统行为问题与系统级需求 31

2.3.4 需求开发要遵从层次性 33

2.4 需求的分类与表述 33

2.4.1 需求的分类 33

2.4.2 功能需求 35

2.4.3 性能需求 36

2.4.4 质量属性 36

2.4.5 对外接口 41

2.4.6 约束 43

2.4.7 其他需求 44

2.5 优秀需求的特性 44

引用文献 49

第3章 需求工程过程 52

3.1 概述 52

3.2 需求工程活动 54

3.2.1 需求获取 54

3.2.2 需求分析 56

3.2.2 需求规格说明 58

3.2.4 需求验证 58

3.2.5 需求管理 59

3.3 需求开发过程是迭代和并发的 60

3.4 实践方法的应用 62

3.4.1 细节知识的实践性 62

3.4.2 重要的实践方法 63

3.5 需求开发过程实例 65

3.6 需求开发过程与软件工程过程的相互影响 70

引用文献 71

第二部分 需求获 75

第4章 需求获取概述 75

4.1 引言 75

4.2 需求获取中的常见困难 75

4.2.1 用户和开发人员的背景不同,立场不同 75

4.2.2 普通用户缺乏概括性、综合性的表述能力 76

4.2.3 用户存在认知困境 76

4.2.4 用户越俎代庖 77

4.2.5 缺乏用户参与 78

4.3 需求获取活动 79

4.4 获取信息的内容 80

4.5 获取信息的来源 81

4.6 获取信息的方法 81

4.7 获取信息的过程 82

4.7.1 注意事项 82

4.7.2 防止遗漏需求 83

4.7.3 结束获取 83

4.8 获取信息的成果 84

4.9 实践中的需求获取 84

4.9.1 项目目标 84

4.9.2 项目范围 85

4.9.3 用户参与 86

4.9.4 交流问题 89

4.9.5 获取方法的使用 90

引用文献 92

第5章 确定项目的前景与范围 95

5.1 引言 95

5.2 问题分析 96

5.2.1 获取问题 96

5.2.2 明确问题 97

5.2.3 发现业务需求 99

5.2.4 定义问题解决方案及系统特性 100

5.3 目标分析 105

5.3.1 “目标”概念——面向目标的需求工程方法 105

5.3.2 目标模型 106

5.3.3 目标分析过程 113

5.4 非功能需求分析 118

5.4.1 为什么需要非功能需求分析 118

5.4.2 非功能需求分析的困难 118

5.4.3 使用面向目标的方法分析非功能需求 119

5.5 业务过程分析 121

5.5.1 活动图 122

5.5.2 使用活动图进行业务过程分析 132

5.6 定义系统边界 134

5.7 前景与范围文档 135

5.7.1 业务需求 136

5.7.2 项目前景 137

5.7.3 项目范围 139

5.7.4 项目环境 140

引用文献 142

第6章 涉众分析与硬数据采样 145

6.1 什么是涉众 145

6.2 涉众分析 145

6.2.1 如何进行涉众分析 145

6.2.2 涉众分析过程 147

6.3 涉众识别 148

6.3.1 发现所有的关键涉众类别 148

6.3.2 识别涉众的方法 150

6.4 涉众描述 152

6.4.1 描述哪些内容 152

6.4.2 描述示例 154

6.5 涉众评估 156

6.5.1 优先级评估 156

6.5.2 风险评估 158

6.5.3 共赢分析 158

6.6 涉众代表选择 160

6.6.1 涉众采样 160

6.6.2 用户替代源 161

6.7 涉众参与策略制定 162

6.7.1 制定涉众参与的基本策略 162

6.7.2 敏捷方法——用户参与 163

6.8 使用目标模型进行涉众分析 164

6.8.1 使用主体依赖模型描述涉众互动 164

6.8.2 基于目标模型描述及评估涉众 165

6.9 硬数据及硬数据采样 166

6.9.1 硬数据 166

6.9.2 硬数据采样 167

引用文献 168

第7章 基于用例/场景模型展开用户需求获取 171

7.1 用户需求获取活动的展开 171

7.1.1 展开用户需求获取活动时的注意事项 171

7.1.2 用户需求获取活动的主线索——用例/场景模型 172

7.2 用例/场景 172

7.2.1 什么是用例/场景 172

7.2.2 用例/场景的组织特点 174

7.2.3 用例/场景的层次性 177

7.2.4 基于用例/场景进行软件开发 179

7.3 用例/场景模型 180

7.3.1 场景的定位 180

7.3.2 用例的定位 185

7.3.3 用例图 186

7.4 以用例/场景模型为主线索开展用户需求获取 189

7.4.1 依据系统用例图、目标模型建立初始用例/场景模型 190

7.4.2 根据用例/场景模型指导需求获取,完善层次结构 190

7.4.3 使用用例/场景组织获取内容 190

7.4.4 用新组织或修正的用例/场景完善用例/场景模型 192

7.4.5 依据用例/场景模型组织需求分析模型 192

7.4.6 分析用例/场景发现仍需获取的需求内容 193

7.5 用例文档 194

引用文献 196

第8章 需求获取方法之面谈 198

8.1 概述 198

8.2 准备面谈 198

8.2.1 准备工作 198

8.2.2 问题类型 199

8.2.3 问题准备 202

8.3 主持面谈 204

8.3.1 面谈开始阶段 204

8.3.2 面谈主体阶段 204

8.3.3 面谈结束阶段 206

8.3.4 记录面谈 206

8.4 整理面谈报告 207

8.5 面谈的类别 208

8.6 面谈的优点和局限性 209

8.7 群体面谈 210

8.7.1 概述 210

8.7.2 计划面谈 211

8.7.3 主持面谈 212

8.7.4 分析结果 213

8.8 和面谈相关的其他需求获取方法 213

8.8.1 调查问卷 213

8.8.2 头脑风暴 214

引用文献 216

第9章 需求获取方法之原型 218

9.1 原型及原型法概述 218

9.1.1 不确定性 218

9.1.2 原型及原型法 218

9.1.3 原型的用途 219

9.1.4 软件工程对原型及原型法的应用 220

9.2 使用原型法进行需求获取 220

9.2.1 基本过程 220

9.2.2 确定原型需求 221

9.2.3 原型开发 222

9.2.4 原型评估 222

9.2.5 原型修正 223

9.3 抛弃需求原型 224

9.3.1 抛弃式原型与演化式原型 224

9.3.2 坚决抛弃抛弃式原型 225

9.4 控制原型成本 225

9.4.1 依据抛弃式特征控制原型成本 225

9.4.2 控制水平原型的成本 226

9.4.3 使用尽量简单的介质降低原型成本 227

9.5 善用故事板原型 228

9.5.1 原型的表现 228

9.5.2 故事板原型 229

9.5.3 故事板原型构建 231

9.6 原型方法的风险 231

引用文献 232

第10章 需求获取方法之观察与文档审查 234

10.1 观察 234

10.1.1 概述 234

10.1.2 观察方法的适用情况 235

10.1.3 采样观察 237

10.1.4 民族志 239

10.2 文档审查 242

10.2.1 需求重用 242

10.2.2 文档分析 243

10.2.3 需求剥离 244

引用文献 245

第三部分 需求分析 249

第11章 需求分析概述 249

11.1 需求分析的根本任务 249

11.1.1 建立分析模型 250

11.1.2 创建解决方案 256

11.2 需求分析技术 259

11.2.1 模型、表示法、技术、方法和工具 259

11.2.2 常用的需求分析技术 260

11.2.3 需求分析技术的综合运用 262

11.3 需求分析方法 270

11.3.1 传统分析 270

11.3.2 结构化分析 271

11.3.3 信息工程 272

11.3.4 面向对象分析 273

11.4 前期需求阶段的建模与分析 274

11.4.1 前期需求阶段和后期需求阶段 274

11.4.2 面向问题域的分析 275

11.4.3 领域分析 277

11.4.4 企业建模 278

11.5 需求分析的活动 279

11.5.1 需求分析阶段的重要活动 279

11.5.2 需求细化 280

11.5.3 确定需求优先级 283

11.5.4 需求协商 285

11.6 实践中的需求分析 286

11.6.1 需求分析技术的使用 286

11.6.2 非功能需求的建模 287

11.6.3 确定需求优先级 287

11.6.4 新技术方法的需要 288

引用文献 288

第12章 过程建模 292

12.1 概述 292

12.2 数据流图 293

12.2.1 基本元素 293

12.2.2 规则 296

12.2.3 分层结构 298

12.2.4 层次结构的建立 300

12.3 逻辑说明——微规格说明 304

12.4 数据说明——数据字典 309

12.5 数据流图的验证 311

12.6 数据流图创建实例 311

12.7 模块结构图 318

12.7.1 功能分解图 318

12.7.2 过程依赖图 320

第13章 数据建模 321

13.1 概述 321

13.2 实体关系图 322

13.2.1 实体 323

13.2.2 属性 325

13.2.3 关系 327

13.3 实体关系图的创建 329

13.3.1 依据充分描述信息的实体关系图创建 329

13.3.2 依据硬数据表单的实体关系图创建 332

13.3.3 复杂情况下的实体关系图创建 335

13.4 实体关系图与过程模型的联系 337

第14章 面向对象建模 338

14.1 概述 338

14.2 UML与面向对象分析 338

14.2.1 UML的需求分析模型 338

14.2.2 基于UML的面向对象建模思路 339

14.3 对象模型 341

14.3.1 对象 341

14.3.2 对象之间的关系 343

14.3.3 类 343

14.3.4 类之间的关系 345

14.3.5 分析对象模型——领域模型 348

14.4 建立领域模型 349

14.4.1 识别候选对象与类 350

14.4.2 确定概念类 353

14.4.3 建立类之间的关联 356

14.4.4 添加类的重要属性 357

14.4.5 领域模型的分析作用 358

14.5 行为模型——交互图 359

14.5.1 概述 359

14.5.2 顺序图 359

14.5.3 通信图 362

14.5.4 系统顺序图 363

14.6 建立交互图 364

14.6.1 建立典型场景的系统顺序图 364

14.6.2 建立用例(多场景)系统顺序图 365

14.6.3 建立详细顺序图 366

14.6.4 交互图的分析作用 368

14.7 行为模型——状态图 368

14.7.1 状态图的发展历程 368

14.7.2 有限状态机 368

14.7.3 David Harel的发展 371

14.7.4 UML的状态图 374

14.8 建立状态图 376

14.8.1 基于状态转移矩阵建立状态图 376

14.8.2 状态图的分析作用 378

14.9 对象约束语言 378

14.9.1 概述 378

14.9.2 对象约束语言的构成 379

14.9.3 对象约束语言的应用 380

14.10 使用对象约束语言建立契约说明 382

14.11 基于CRC卡面向对象分析方法 384

14.11.1 CRC卡 384

14.11.2 基于CRC卡的职责驱动方法 385

引用文献 387

第四部分 需求的规格化与验证 391

第15章 需求规格说明 391

15.1 引言 391

15.2 需求规格说明文档 392

15.2.1 编写需求规格说明文档的原因 392

15.2.2 需求规格说明文档的类型 392

15.2.3 需求规格说明文档的读者 394

15.2.4 需求规格说明文档的描述手段 395

15.3 模板的选择与裁剪 397

15.3.1 模板的选择和使用 397

15.3.2 软件需求规格说明模板 400

15.4 需求规格说明文档的写作 405

15.4.1 写作的指导原则 405

15.4.2 常见的写作技巧 407

15.5 优秀需求规格说明文档的特性 409

15.6 实践中的需求规格说明 410

15.6.1 需求规格说明文档的编写和使用 411

15.6.2 需求规格说明文档的质量 411

15.6.3 模板和示例的使用 412

15.6.4 需求规格说明文档的描述语言 412

引用文献 413

第16章 需求验证 416

16.1 验证与确认 416

16.1.1 软件工程中的系统验证 416

16.1.2 需求验证活动 417

16.2 需求验证的方法 418

16.2.1 需求评审 418

16.2.2 原型与模拟 422

16.2.3 开发测试用例 423

16.2.4 用户手册编制 423

16.2.5 利用跟踪关系 424

16.2.6 自动化分析 424

16.3 问题的修正 425

16.4 实践中的需求验证 425

引用文献 426

第五部分 需求管理及工程管理 431

第17章 需求管理 431

17.1 需求管理概述 431

17.2 维护需求基线 432

17.2.1 需求基线 432

17.2.2 需求基线的内容 433

17.2.3 需求基线的维护 433

17.3 实现需求跟踪 435

17.3.1 需求跟踪 435

17.3.2 需求跟踪的用途 436

17.3.3 需求跟踪的内容 437

17.3.4 需求跟踪的实现方法 438

17.3.5 需求跟踪过程的建立 439

17.3.6 需求依赖 439

17.4 控制变更 440

17.4.1 需求变化 440

17.4.2 变更控制过程 441

17.4.3 变更控制中的注意事项 443

17.5 实践中的需求管理 445

17.5.1 需求的变更 445

17.5.2 需求跟踪信息 445

17.5.3 需求管理工具 446

引用文献 446

第18章 需求工程的过程管理 449

18.1 引言 449

18.2 需求工程过程的环境依赖性 450

18.3 需求工程过程的建立 451

18.3.1 建立过程框架 451

18.3.2 选择工作组件 454

18.3.3 应用实践方法 454

18.4 需求工程过程的改进 455

18.4.1 过程的评价 455

18.4.2 过程的改进 456

引用文献 459

第19章 需求工程中的项目管理 462

19.1 引言 462

19.2 资源支持 463

19.3 需求工程的生命周期规划 464

19.4 团队管理 466

19.4.1 组建需求团队 466

19.4.2 维持需求团队内部的有效沟通 467

19.5 需求风险管理 468

19.5.1 风险管理概述 468

19.5.2 风险管理过程 468

19.5.3 常见的需求风险 469

引用文献 470

习题 472

附录1 IEEE SRS模板 494

附录2重要的需求工程实践方法 500

引用文献 504

返回顶部