1.3 知识框架的构成
1.3.1 篇章的构成
本书由6篇共22章构成,其中,第1篇为基础篇,包含对后续各章的指导理论和思想,第2~5篇是分析与设计方法的主要论述篇,第6篇为综合篇,是在前5篇基础上的提升与总结。另外的两个附录提供了提升个人能力的训练方法以及运用本书知识的参考方法,各篇章的内容参见图1-8。
图1-8 本书的篇章构成
第1篇 基础概念
● 构成:共4章,分别讲述知识体系概述、三种原理、分析与架构的模型。
● 内容:书中的思考方法、基本概念、表达模型,是工程师能力发生质变的基础知识。
● 对象:软件工程上的所有角色(咨询、需求、设计、开发、测试、实施)。
第2篇 需求工程
● 构成:共3章,分别讲述需求工程概述、需求调研、需求分析。
● 内容:需求的获取与记录方法、需求的分析方法。
● 对象:需求工程师、设计工程师、实施工程师、业务专家、管理咨询师。
第3篇 设计工程——概要设计
● 构成:共4章,介绍设计工程概述、对三个层(架构、功能、数据)的概要设计方法。
● 内容:分别对三个层进行规划、架构,并制定相应的原则、规范、模板等。
● 对象:业务设计师(或架构师)、产品经理。
第4篇 设计工程——详细设计
● 构成:共3章,分别介绍三个层(架构、功能、数据)的详细设计方法。
● 内容:针对概要设计三个层的规划成果进行进一步的细节设计。
● 对象:业务设计师、实施工程师、业务专家。
第5篇 设计工程——应用设计
● 构成:共4章,介绍应用设计概述、对三个层(架构、功能、数据)的应用设计方法。
● 内容:将业务设计(概要、详细)的成果转换为系统的表达方式。
● 对象:业务设计师、实施工程师、技术设计师、产品经理。
第6篇 综合设计
● 构成:共4章,介绍管理设计、价值设计、用例设计以及规格书汇总的方法。
● 内容:在前述成果之上,从管理、价值、验证等角度进行综合能力的提升。
● 对象:需求工程师、业务设计师、高级主管、业务专家等。
附录
● 构成:共两个,即能力提升的培训方法与索引(关键词、图、模板等)。
● 内容:知识体系与软件过程的结合方法、对个人观察与思考能力提升的训练方法等。
● 对象:前述的各岗位,以及产品经理、项目经理、配置管理员、人资培训管理者等。
注:业务人员与技术人员的区别
上述“对象”中的岗位由于软件企业的不同称呼也不同,另外还有一种笼统称呼就是业务人员和技术人员,一般来说在软件企业中,
● 业务人员:包括调研工程师、需求分析师、业务设计师、实施工程师等。
● 技术人员:包括技术设计师、编程工程师、测试工程师等。
其中,技术设计师(架构师)的工作是给出可以直接指导编程与测试人员的设计资料,这个资料主要由两个部分组成:
● 一是针对业务人员的分析与设计成果进行转化,使其符合编程和测试工作的要求。
● 二是针对需求规格说明书中非业务设计部分的内容,如非功能性需求、环境等。
1.3.2 软件工程知识体系框架
对本书中涉及的知识内容,采用两种形式进行了归集:结构化表格形式、分解图形式。
1.结构化表格形式
结构化的知识体系一定可以用表格来呈现,知识体系采用的是一个二维表,见图1-9。
● 列的名称(一):软件工程的工程分解(需求工程、设计工程)。
● 行的名称(二):软件工程的工作分解(架构、功能、数据),以及综合设计内容。
● 中间内容(三):本书中的主要知识提要。
2.分解图形式
结构化的知识体系同样也可以用分解图形式来(横向结构图)呈现,分解图可以用线将各个阶段之间、分层之间的作业内容,交付物之间的关联关系表达出来,相对于结构化表格形式的静态而言,分解图更容易找出它们之间内容的传递关系,见图1-10。
本书的知识体系具有明确的前后、上下关联关系,通过对图1-9和图1-10的结构、内容的研究,可以帮助读者理解软件工程的内容和关系。
图1-9 软件工程结构与主要内容
图1-10 软件工程与交付物(分解图形式)