《软件是这样“炼”成的 从软件需求分析到软件架构设计》PDF下载

  • 购买积分:23 如何计算积分?
  • 作  者:王朔韬编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2014
  • ISBN:9787302345541
  • 页数:863 页
图书介绍:本书通过对投核保系统开发过程的实录,全面展现软件企业开发过程场景,全面展现了软件需求开发、软件架构、软件数据架构、软件测试过程、数据库设计实现、软件架构实现、软件质量保证等,能够让读者全面了解开发全过程,提高读者的软件开发能力。

引言 1

第1篇 软件需求开发 10

第1章 需求分析报告评审 10

第2章 关于需求开发的讨论 26

2.1 关于需求开发的讨论 26

2.2 本篇组织 28

2.3 阅读导读 29

第3章 UML介绍 32

3.1 面向对象介绍 32

3.2 面向对象设计过程与设计准则 35

3.3 UML介绍 36

3.4 UML图 38

3.5 UML关系 40

3.6 UML机制 42

第4章 Rational Rose 2003 44

4.1 Rational Rose 2003简介 44

4.2 Rational Rose 2003主要作用 44

4.3 Rational Rose 2003下载和安装 45

4.4 Rational Rose 2003主界面介绍 49

4.5 小结 56

第5章 业务调研及报告编写 57

5.1 关于业务调研的讨论 57

5.2 主要调研方式 58

5.3 整理调研报告静态结构 59

5.4 整理调研报告动态结构 61

5.5 非业务调研 63

5.6 总结 64

第6章 投核保系统业务调研报告(摘录) 65

6.1 目标组织结构 65

6.2 岗位职责分析 67

6.3 目标流程设计 78

6.4 表单资料整理 95

6.5 现行系统状况 99

6.6 非业务分析 99

6.7 特别期许 100

第7章 用例规划 102

7.1 预备知识——什么是用例图 102

7.2 概念解析 103

7.3 解读业务调研报告,规划需求用例 104

7.4 投核保系统用例规划 106

7.5 特别期许的用例规划 113

7.6 小结 114

第8章 编写数据字典 115

8.1 数据字典基础知识 115

8.2 解析数据字典 117

8.3 解读业务调研报告,编写数据字典 118

8.4 投核保系统数据字典 120

8.5 总结 144

第9章 用例描述 145

9.1 关于用例描述的解释 145

9.2 投核保系统用例事件流描述分析 149

9.3 投核保系统用例描述(摘录) 150

9.4 总结 165

第10章 用例及参与者关系分析 166

10.1 预备知识 166

10.2 用例与参与者关系概念解析 168

10.3 解读业务调研报告,分析用例及参与者关系 169

10.4 投核保系统用例图(摘录) 171

10.5 总结 175

第11章 领域类图 176

11.1 预备知识 176

11.2 领域类概念解析 179

11.3 设计领域类图 180

11.4 投核保系统领域类图(摘要) 187

11.5 总结 192

第12章 非功能需求分析 193

12.1 非功能需求概念 193

12.2 概念解析与分析思路 194

12.3 物理需求分析 197

12.4 实施需求分析 197

12.5 易用性需求分析 197

12.6 性能需求分析 198

12.7 可靠性需求分析 199

12.8 软件项目管理需求分析 199

12.9 总结 199

第13章 关于编写需求分析报告的讨论 200

第14章 需求分析报告编写说明 203

14.1 引言编写说明 203

14.2 概述编写说明 204

14.3 ×××子系统功能需求详细描述编写说明 204

14.4 领域类图编写说明 204

14.5 非功能需求编写说明 205

14.6 数据字典编写说明 205

第15章 投核保系统需求分析报告(摘录) 206

15.1 引言 206

15.2 概述 207

15.3 柜员业务系统(摘录) 209

15.4 投核保系统领域类图 213

15.5 非功能需求 231

15.6 数据字典(摘录) 233

第16章 关于需求开发的继续讨论 244

16.1 需求开发过程回顾 244

16.2 软件开发的第二个“故事” 245

第2篇 软件架构(上) 248

第17章 概要设计文档评审 248

第18章 导读 258

18.1 关于软件架构的讨论 258

18.2 本篇组织 260

18.3 阅读导读 260

第19章 关于软件架构的讨论 263

19.1 关于架构的讨论 263

19.2 关于体系结构的讨论 265

19.3 关于设计模式的讨论 266

19.4 关于框架的讨论 267

19.5 使用UML描述架构讨论 268

19.6 需求与架构的关系 269

第20章 软件架构与时序图 271

20.1 预备知识 271

20.2 概念解析 273

20.3 解读需求分析报告,通过用例图绘制时序图 274

20.4 时序图与领域类和实现类之间的关系 278

20.5 时序图与方法体 278

20.6 解读投核保系统需求分析报告 279

20.7 总结 285

第21章 软件架构与活动图 286

21.1 预备知识 286

21.2 概念解析 287

21.3 活动图、时序图与源代码 288

21.4 解读需求分析报告,完成活动图设计流程 289

21.5 投核保系统活动图 291

21.6 总结 295

第22章 软件架构与状态图 296

22.1 预备知识 296

22.2 知识解析 297

22.3 状态图设计过程 298

22.4 投核保系统状态图设计 299

22.5 总结 305

第23章 软件体系结构风格选择及分层设计 306

23.1 关于体系结构的再次讨论 306

23.2 软件体系结构概述 307

23.3 体系结构风格 308

23.4 投核保体系结构风格选择 310

23.5 总结 312

第24章 软件架构与分层设计 313

24.1 关于设计模式与分层设计的讨论 313

24.2 分层设计 315

24.3 领域类图与实现类 317

24.4 用例与实现类 318

24.5 解读时序图,分层规划设计 319

24.6 投核保系统分层设计(以投保建档表示层为例) 322

24.7 总结 324

第25章 表示层及控制层设计 325

25.1 表示层及控制层设计特别说明 325

25.2 Struts设计过程 326

25.3 投核保系统表示层设计投保建档页面为例(V_InsureCreateFilePage) 332

25.4 总结 334

第26章 设计模式及框架选择 335

26.1 关于设计模式与框架的对话 335

26.2 Java设计模式简单介绍 336

26.3 MVC设计模式 337

26.4 投核保系统设计模式及框架选择 338

26.5 总结 339

第27章 业务逻辑层设计 340

27.1 关于业务逻辑设计的讨论 340

27.2 业务逻辑层 341

27.3 投核保系统业务逻辑层设计 342

27.4 用户身份设计 344

27.5 解读领域类图,设计JavaBean 345

27.6 解读领域类图设计SessionBean 349

27.7 解读时序图,设计BusinessLogicBean 349

27.8 数据操作类(DBOperation)设计 351

27.9 总结 356

第28章 异常体系设计 357

28.1 关于异常的讨论 357

28.2 异常介绍 359

28.3 投核保系统异常处理设计 361

28.4 总结 363

第29章 软件架构与包图 364

29.1 关于包图的讨论 364

29.2 预备知识 364

29.3 投核保系统包图设计 366

29.4 投核保系统包源程序列表 368

29.5 总结 372

第30章 软件架构与组件图 373

30.1 关于组件图的讨论 373

30.2 预备知识 373

30.3 核保系统组件图 375

30.4 投核保系统组件图设计 376

30.5 小结 379

第31章 软件架构与配置图 380

31.1 预备知识 380

31.2 核保系统配置图 381

31.3 总结 384

第32章 关于编写概要设计文档的讨论 385

第33章 概要设计说明书编写说明 387

33.1 引言编写说明 387

33.2 系统结构 387

33.3 系统功能结构描述 388

33.4 ××子系统概要设计 388

33.5 程序代码组织方式 389

33.6 外部接口描述 389

第34章 投核保系统概要设计说明书(摘录) 390

34.1 引言 390

34.2 系统及环境设计 390

34.3 投核保系统设计模式及框架选择 391

34.4 系统功能结构描述 395

34.5 柜员系统概要设计(摘要) 396

34.6 程序代码组织方式 407

34.7 外部接口描述 414

34.8 异常设计 415

第35章 关于软件架构的第三次讨论 417

第3篇 数据架构 420

第36章 数据库设计报告评审 420

第37章 本篇导读 428

37.1 原因及目的 428

37.2 本篇组织 430

37.3 阅读导读 431

第38章 数据库基本原理 432

38.1 数据库 432

38.2 数据库环境 434

38.3 数据库系统的组成 434

38.4 数据库完整性 437

38.5 数据库规范化 439

38.6 数据库设计的重要概念 440

38.7 数据库设计工具 441

38.8 总结 442

第39章 实体关系建模 443

39.1 关于实体关系建模的讨论 443

39.2 实体-关系预备知识 444

39.3 实体分析方法 445

39.4 解读需求分析报告完成实体关系建模 445

39.5 总结 461

第40章 数据库逻辑建模 462

40.1 关于数据库逻辑建模的讨论 462

40.2 预备知识——数据库逻辑设计方法概述 463

40.3 数据库逻辑模型设计步骤 463

40.4 投核保系统数据库逻辑设计 464

40.5 投核保系统数据库逻辑设计(摘录) 472

40.6 总结 475

第41章 数据库物理结构设计 476

41.1 关于数据库物理设计的讨论 476

41.2 数据库需求分析 476

41.3 事实发现的基本过程 477

41.4 解读投核保系统需求分析报告 478

41.5 数据管理和数据库管理 485

41.6 数据库安全 486

41.7 投核保系统数据库管理和安全性设计 487

41.8 总结 489

第42章 数据库文件组织方式与索引 490

42.1 与Jack Jeff对话 490

42.2 文件组织方式和索引概念 491

42.3 选择文件组织方式的建议 493

42.4 投核保系统数据组织方式分析 493

42.5 投核保系统索引设计 497

42.6 总结 502

第43章 数据表设计 503

43.1 基本表结构设计 503

43.2 设计派生数据的关系 505

43.3 设计其他业务规则 506

43.4 数据表最后检查 506

43.5 投核保系统数据表设计(摘录) 507

43.6 小结 526

第44章 视图设计 527

44.1 关于视图的讨论 527

44.2 视图的基本概念 527

44.3 投核保系统视图分析 528

44.4 投核保系统视图设计 535

44.5 总结 538

第45章 存储过程与触发器设计 539

45.1 存储过程与触发器的基本概念 539

45.2 投核保系统存储过程与触发器分析 540

45.3 总结 542

第46章 数据库安全设计 543

46.1 关于数据库安全的讨论 543

46.2 数据库安全需求分析 544

46.3 投核保系统数据安全设计思想 545

46.4 投核保系统数据库数据安全设计 546

46.5 总结 552

第47章 投核保数据库设计报告编写说明 553

47.1 引言编写说明 553

47.2 数据库设计命名规范编写说明 553

47.3 数据库实体关系设计 553

47.4 数据库逻辑设计编写说明 553

47.5 数据库物理设计编写说明 554

47.6 数据库基本表设计编写说明 554

47.7 索引设计编写说明 554

47.8 视图设计编写说明 554

47.9 授权设计编写说明 554

47.10 触发器设计编写说明 554

47.11 存储过程设计编写说明 554

第48章 投核保系统数据库设计报告 555

48.1 引言 555

48.2 数据库设计命名规范 555

48.3 数据库实体关系设计 556

48.4 数据库逻辑设计 556

48.5 数据库物理设计 556

48.6 数据库基本表设计 558

48.7 索引设计 581

48.8 视图设计 585

48.9 授权设计 588

第49章 关于数据库设计的再次讨论 594

第4篇 软件架构(下) 598

第50章 关于软件架构的再次讨论及导读 598

50.1 关于软件架构的再次讨论 598

50.2 本篇导读 601

50.3 通过本篇学习,能够达到目的 602

第51章 HJCA介绍 603

51.1 HTML介绍 603

51.2 CSS介绍 607

51.3 JavaScript介绍 611

51.4 Ajax介绍 618

51.5 小结 622

第52章 HJCA在投核保系统中的应用 623

52.1 概述 623

52.2 动态生成页面HJCA技术应用 623

52.3 柜员业务页面HJCA技术应用 624

52.4 扫描业务页面HJCA技术应用 627

52.5 录入业务HJCA技术应用 628

52.6 核保业务页面HJCA技术应用 630

52.7 档案管理页面HJCA技术应用 631

52.8 系统管理页面HJCA技术应用 631

52.9 数据管理页面HJCA技术应用 631

第53章 Struts 2介绍 632

53.1 Struts 2配置文件介绍 632

53.2 Struts 2数据类型转换 636

53.3 Struts 2校验 639

53.4 Struts 2国际化 641

53.5 Struts 2标签库 643

53.6 Struts 2拦截器 647

53.7 小结 650

第54章 Struts 2在投核保系统中的应用 651

54.1 投核保配置设计 651

54.2 解读时序图,完成Struts文件编写(摘录) 652

54.3 解读数据字典,完成类型转换设置 655

54.4 解读数据字典,完成数据校验设计 657

54.5 解读数据字典,完成国际化应用设计 658

54.6 投核保系统拦截器设计(摘录) 659

54.7 投核保系统Struts 2.0标签库应用设计(摘录) 662

54.8 小结 662

第55章 EJB 3.0简单介绍 663

55.1 什么是EJB 3.0 663

55.2 会话Bean(Session Bean) 664

55.3 实体Bean(Entity Bean) 666

55.4 消息Bean 666

55.5 事务管理 667

55.6 小结 668

第56章 EJB 3.0在投核保系统中的应用 669

56.1 EJB应用配置设计 669

56.2 解读概要设计,完成会话Bean设计 670

56.3 解读数据库设计,完成实体Bean设计 672

56.4 EJB安全设计 674

56.5 小结 683

第57章 界面元素设计 685

57.1 关于界面元素设计的讨论 685

57.2 界面设计原则 685

57.3 解读概要设计文档,完成界面元素设计 686

57.4 投核保系统界面设计(部分示例) 691

57.5 小结 694

第58章 解读状态图,详细设计状态实现 695

58.1 状态图在详细设计中的体现 695

58.2 解读状态图设计,实现状态图详细设计 695

58.3 投核保系统状态图实现(摘录) 698

58.4 小结 700

第59章 数据结构详细设计 701

59.1 预备知识——数据结构 701

59.2 Java数据集合 703

59.3 数据组织 706

59.4 解读概要设计文档,完成数据元素详细设计 707

59.5 投保建档系统数据元素结构设计 707

59.6 小结 720

第60章 解读活动图,系统运行详细设计 721

60.1 活动图在详细设计中的体现 721

60.2 解读活动图,完成系统运行设计 722

60.3 投核保系统程序运行流程实现(投保建档) 724

60.4 小结 727

第61章 算法设计 728

61.1 预备知识 728

61.2 算法应用场景分类 730

61.3 算法设计过程(以统计分析业务层为例) 730

61.4 小结 746

第62章 编写详细设计报告 747

62.1 关于详细设计报告编写的讨论 747

62.2 详细设计报告编写说明 748

第63章 投核保系统详细设计报告(摘录) 751

63.1 引言 751

63.2 程序系统的结构 751

63.3 类设计说明(以投保建档为例) 752

第64章 继续讨论软件架构 782

附录A 在Rose中绘制UML视图 784

A1 在Rational Rose中绘制用例图 784

A2 在Rational Rose中绘制类图 789

A3 在Rational Rose中绘制时序图 793

A4 在Rational Rose中绘制活动图 797

A5 在Rational Rose中绘制状态图 801

A6 在Rational Rose中绘制包图 809

A7 在Rational Rose中绘制组建图 811

A8 在Rational Rose中绘制配置图 814

附录B PowerDesigner介绍 817

B1 关于PowerDesigner 817

B2 PowerDesigner使用介绍 823

附录C 使用PowerDesigner完成数据库设计 830

C1 概念模型设计 830

C2 设计物理数据模型 841

C3 建立物理图(Physical Diagram) 845

C4 生成模型报告 860

参考文献 863