本书的使用方法
1.本书的构成
本书正文由5篇共16章构成,各章的内容简介如下。
第1篇:概要说明
第1章 基础知识:有关项目管理和软件工程的基础知识以及实现软件标准化的思路。
第2章 案例设定:设定本书案例的背景、内容、合同、客户/软件公司、项目组成员等信息。
第2篇:前期准备
第3章 售前咨询:软件公司做售前咨询、客户交流,提出解决方案、签订开发合同等。
第4章 项目准备:确定项目经理/成员、开发模式、路线图、里程碑和执行计划等。
第3篇:需求工程
第5章 需求调研:对客户进行需求调研和资料收集,交付《需求调研资料汇总》。
第6章 需求分析:对调研结果分析、确定功能需求,交付《需求规格说明书》。
第4篇:设计工程
第7章 概要设计——总体:整体规划、确定理念、主线,交付《概要设计规格书》。
第8章 概要设计——建模:介绍建模方法,包括具象模型、抽象模型、逻辑模型等。
第9章 概要设计——管理:介绍在“人—机—人”环境中的管理建模、规划、架构方法。
第10章 概要设计——价值:介绍从客户价值出发,进行系统设计的思路、方法。
第11章 详细设计:根据概要设计进行业务细节的设计,交付《详细设计规格书》。
第12章 应用设计:根据概要/详细设计成果做应用设计,交付《应用设计规格书》。
第13章 交底与验证:
〇 交底:进入技术设计前,由业务向技术进行计划、需求、设计等的交底。
〇 验证:完成系统编码和测试后,用业务和应用的用例对系统进行验证。
第5篇:其他综合
第14章 标准与培训:
〇 标准:协助客户建立内部标准化,包括业务流程、基础数据、管理规则等。
〇 培训:编写操作与应用教材,培训客户企业的各层级用户。
第15章 项目总结:总结项目成果,包括客户、软件公司,对常见开发问题的解答。
第16章 产品设计:以开发完成的定制系统案例为参考,研发行业版的标准产品。
附录
附录A 逻辑的思维和表达:如何通过提升逻辑的表达能力来提升逻辑的思维能力。
附录B 软件工程能力评估:评估业务人员软件工程能力的参考要求一览。
2.本书的参考资料
1)指定的参考书
本书(以下简称《案例篇》)是《大话软件工程——需求分析与软件设计》(以下简称《方法篇》)的应用案例,因此本书中提到的关于软件工程方面的理论、方法、模板等均来自于《方法篇》,《方法篇》与《案例篇》分别对软件开发过程中需要的分析设计方法、过程管理方法进行介绍。
2)两本书的关系
《案例篇》和《方法篇》是姊妹关系。两者的篇/章引用的对应关系如图2所示。
图2 《方法篇》和《案例篇》的对应关系
(1)《方法篇》主要讲述软件工程的基础知识,它是以软件工程的过程为主线和载体,主要由需求工程和设计工程两大工程构成,《方法篇》给出了这个过程中每个阶段所需要的理论、方法、标准和模板,详细地讲述了它们的应用方法。
《方法篇》是按照“工具”的方式编写的,在软件工程的框架上分门别类地给出了做好每一项工作需要的“工具”以及每个工具的“使用说明”。
(2)《案例篇》作为《方法篇》的案例进行展开,书中设置了两个案例:定制系统和标准产品。
① 定制系统:客户定制的个性化“工程项目管理系统”。
② 标准产品:软件公司开发的标准化“工程项目管理系统”。
本书的主要部分是以①的开发过程为主线,讲述了从售前咨询到上线培训的开发全过程。次要部分讲述了将①的成果改造为②的设计思路和方法。
3.两门知识体系的关系
完成一款软件开发的过程,需要有两门非常重要的专业知识体系作支持,即软件工程与项目管理。
(1)软件工程:本书软件工程部分的知识来自于《方法篇》。
(2)项目管理:本书项目管理部分的知识来自于《项目管理知识体系指南(PMBOK指南)》(第六版)。
项目管理和软件工程两门知识在开发过程中是协同工作的,项目管理部分要大于软件工程部分,软件工程是项目管理包含的5个过程(启动、规划、执行、监控和收尾)中的“执行”部分。这两门知识在《案例篇》中与各章的对应关系如图1(a)所示。
① 项目管理部分:第3章~第15章共13章,介绍项目管理过程。
② 软件工程部分1:第5章~第12章共8章,介绍定制个性化系统的过程。
③ 软件工程部分2:第16章,介绍如何研发具有随需应变能力的标准产品。
其中,①和②介绍的是定制系统的开发过程,③介绍的是标准产品的开发过程。
4.本书的使用方法
1)使用方法
本书用“工程项目管理”软件的开发作为参考案例,将案例分为两个版本:定制系统版和标准产品版。全书以定制系统版的开发过程为主线,以标准产品版的研发为辅线。沿着这条主线给出每个阶段工作所需要的知识,这些内容的详细说明均来自于《方法篇》的对应章节,阅读本书(《案例篇》)的过程,就如同观看一个软件的实战开发过程。
(1)《方法篇》
《方法篇》如同一个“工具箱”,为《案例篇》的实战案例中的每个阶段、每个步骤的工作提供相应的“工具(知识)”,包括理论、方法、标准和模板等。
(2)《案例篇》
《案例篇》以定制系统的开发过程为主线,详细讲述项目开发的售前咨询、合同签约、项目准备、需求调研与分析、业务设计、应用设计、技术与测试的交底、上线培训、客户企业标准的制定等的全过程,在这个过程中的每个步骤都用到了《方法篇》提供的知识。以标准产品的研发为参考,详细地介绍《方法篇》中实现可随需应变的系统机制的设计思路。
通过阅读本书,可以帮助读者建立起一个软件开发的过程框架,让软件的开发过程不再是一个散乱的、随机的摸索过程,而是一个按部就班的创造过程。只要沿着图3所示的软件工程流程完成一遍有序的开发,就可以初步地了解作为业务人员所必须掌握的分析、设计、验收、培训的基本知识,经过若干次实践后,就可以逐步地积累起一套自己的经验。
图3 《案例篇》的开发过程与《方法篇》的关系
2)阅读顺序
先学习《案例篇》还是《方法篇》呢?这个可以根据读者自身的经验来判断,例如,
(1)缺乏完整开发实践经验的读者,可以先读《案例篇》,了解软件的开发过程,并在阅读《案例篇》的同时伴读《方法篇》,这样可能会更容易理解。
(2)已有丰富的项目开发经验的读者,可以先读《方法篇》,这样容易把握软件工程的整体感,然后再读《案例篇》以检验自己对《方法篇》内容的理解是否正确。
《大话软件工程——需求分析与软件设计》的目录一览,参见图4。
图4 《大话软件工程——需求分析与软件设计》目录