基本元素(The Basic Elements)
流程的基本元素包括:
- 工作产品(Work product):所生产的内容
- 任务(Task):工作是如何执行的
- 角色(Role):谁来执行工作
- 流程(Process):用于定义工作分解和工作流
- 操作指导书(Guidance):模板、检查表、范例、指导说明书、概念等等
这些基本元素是流程构成的基础。
组织元素(Organizing Elements)
基本元素通过以下的组织元素组织在一起
实践(Practice)
实践是一种通过文档定义的方法,这种方法用于解决一到多个常见的问题。实践是流程采用、实施和配置的基本内容。一个实践由上述的基本内容构成。
配置(Configuration)
从最终用户的观点看,配置即一组选中发布的方法内容(method content)。大多数的配置包括了选中的实践,以及把实践联系在一起的内容。发布的配置通常和流程网站信息相关。
细节和范例(Detail and Example)
以下内容将提供基本元素更多的细节介绍并且提供一些范例。
工作产品(Work product)
工作产品可能包括各种不同的形式,例如:
- 文档,例如愿景或者项目计划。
- 模型,例如用例模型或者设计模型。这些模型可以包含模型元素(子级交付件),例如设计类、用例和设计子系统。
- 数据库、电子表格和其他信息仓库。
- 源代码和可执行文件。
工作产品可以分类为:
- 交付件(artifact) ——如果是具体的内容
- 输出(outcome) —— 如果不是具体的内容
- 可交付成果(deliverables) —— 如果是打包的交付件
角色(Role)
在软件工程组织范围内,角色定义了个人或者团队内一起工作的多个成员的行为和职责。请注意,角色并非指团队个人,角色更多的是描述职责。团队内个人一般同时担任多个角色,并且在项目中经常变换角色。
例如:
- 分析师 —— 代表客户和最终用户,从干系人收集输入并且定义需求。
- 开发人员——开发系统的某个模块,包括设计、实现、单元测试和集成。
任务
任务通过角色执行。通常定义了一系列的步骤,包括了常见或者更新一到多个工作产品。
范例:
开发愿景 —— 开发一份全面的愿景,包括捕获需要解决的问题,关键干系人,系统的范围和边界,系统的关键特性和一些约束。
计划迭代 —— 定义一个独立迭代的范围和职责。
流程
流程把任务、工作产品和角色整合在一起,增加结构化和先后执行次序的信息。任务和工作产品可以组合成更高级别的活动,这种活动成为工作分解结构(WBS)。活动或者计划可以被标识为“计划”用来识别分配和跟踪的工作。
以上图片可以提供执行次序的信息。以下的范例显示了一个初始活动,“测试计划生命周期”,活动之后是两个并行的计划——“监控和控制测试”和“测试”。
注意,可以局部重用的流程有时称为一种能力模式(capability pattern)