CMMI对软件项目需求分析的要求

 需求分析的目的在于理解提出要求的组织对于这次评估的商业需要,评估小组领导将收集信息来帮助评估发起方对照评估目标和他们的商业目标。通过需求分析,可使评估人员在对评估目标,约束,输出和范围形成共同理解的基础上对下一步评估作出正确的决定。

在进行需求分析之前,应确保满足以下两个进入标准:评估发起方已经决定使用SCAMPI方法;能够提供评估要求综述的人有时间接受访问。发起者、初始要求和约束、过程相关的历史信息是需求分析的三个输入因素,评估输入是需求分析的输出因素。
确定评估目标
我们知道,以满足商业需要为出发点的过程改进最为关心的三个因素是减少费用、改善质量、缩短产品面市时间。为此,本阶段所必需的实践是:
1.标明评估发起者和相关的利益分担者,并在他们之间建立经常性的交流;
2.将商业目标和评估目标文档化;
3.确保评估目标与商业目标的一致性;
4.确定评估使用方式(内部过程改进,供应商选择,过程监视),并将其文档化。
此外,在本阶段评估小组领导和发起者之间至少有一次交流。在某些情况下,还必须通过其他方式确保他们之间存在经常性的面谈。
确定评估约束
评估约束是由评估小组领导和评估发起方或者高级管理人员讨论得出的。它是一个不断反复的过程,以在满足评估发起者提出的要求、评估所采取方法的限制和对资源的要求之间达到平衡,最终达到评估输入参数的优化。为此,本阶段所必需的实践是:
1.建立高层费用和日程安排约束;
2.确定评估包含哪些过程域和哪些组织实体;
3.确定对评估结果的最小期望和最大期望,或达到某一特殊的目的;
4.和评估行为的利益分享者商谈约束条件和目的,确保评估活动的可行性;
5.将商谈好的约束文档化。
同样,在本阶段评估小组领导和发起者之间至少有一次交流。在某些情况下,还必须通过其他方式确保他们之间存在经常性的面谈。此外,在评估早期阶段标识的费用和日程安排的约束应该是针对高层而言的,是一种系统的估计,而不是详细的估计。
确定评估范围
在评估过程中,由参考模型范围和组织范围决定了评估的范围。无论使用阶段式表示法或者连续式表达法,在过程改进执行的早期,模型范围都应该被确定并文档化。评估小组领导有责任保证发起者能够考虑到评估范围中所涉及的过程域和采取的模型表示法。评估的输出应该由他们根据实用价值来决定,在需求分析活动中制定,并且尽可能在那些可选择的模型范围内做出选择。组织范围定义了评估中调查的边界,例如:对于每一个项目的实践完成情况、为了完成组织级目标所做的实践,可被选来作为组织代表和过程执行的背景。为此,本阶段所必需的实践是:
1.确定评估所使用的参考模型范围和表示法,并将其文档化;
2.确定评估期间调查的组织单位,并将其文档化。
参考模型应包括过程域和相关的评估小组调查的最大能力等级或者成熟度等级(例如:评估范围内的过程域的共性目标)。参考模型表示法的选取应该在确定评估目标时就讨论过了,这是因为表示法的选取可能影响到评估目标的实现。
评估模型的范围至少应该包括一个过程域。所有的共性目标和特定目标应包含确定的过程域能力等级或者成熟度等级;过程域内单个的目标不能被排斥在外。
通常来说,评估期间被调查的组织单位的确定应该满足以下条件:至少有两个被调查的过程是可以作为目标证据源,而且,要能获得组织使用的生命周期的典型覆盖。组织单位实例的选取可以通过调查表,或者通过和组织人员讨论得出的概要信息来决定。对于组织级别的过程实现(例如:组织培训),不要求多个实例。
评估中将调查的典型实例也会驱动提供目标证据信息源的参与者的选取。评估参与者(名字,角色)在初期所做的决定应该作为组织范围确定的一个部分,和评估发起者或者高层管理者磋商。这在后面的详细评估计划中将得到进一步确定。
确定评估输出
本阶段的目标是确定特定的评估输出。有些评估结果是必需的,而附加输出是可以剪裁的。在确定评估输出之前,应清楚地了解下面的问题的答案:
1.评估中将产生什么级别;
2.文档化评估结果,是否要写最终报告;
3.是否要产生和报告关于怎样致力于特定发现的建议。
为此,本阶段所必需的实践是:与评估发起方一起检查要求的输出;与评估发起方一起检查并选择可选的过程改进评估方法的输出。要求的过程改进评估方法输出包括:评估记录;评估发现的事项综述;CMMI干事数据。
尽管可以选择不向评估发起方之外的任何人公布定级结果,但因为在ARC中规定了,至少过程域的目标和调查的过程域都必须定级。因此,评估发起方至少要得到如下评估结果:
1.最终发现,包括评估小组对每个调查的过程域的文档化的强项和弱项陈述;
2.计划内的、评估小组对相应评估对象的定级描述。
是否达到评估输出的决定,包括将报告的定级,应在评估输入中写明。此外,评估发起方可能要求附加的定级输出来作为评估的结果。可能选择的典型的定级结果包括:
1.成熟度等级或者能力等级评定;
2.过程域满意/能力等级剖面;
3.实践定级;
4.可选择:使用部分满意Partially Satisfied用于过程域定级;
5.15504过程剖面;
6.特定学科定级(例如:SE或者SW);
7.项目级别的发现或者定级;
8.其他(非典型)的期望的输出。
评估发起方可能也要求其他的产品作为评估结果,可能要求的典型的产品有:
1.评估最终报告;
2.基于评估结果,采取行动的建议;
3.过程改进活动计划。
获得评估输入的许可
本阶段的目的是确认评估发起方对评估输入的正式批准,并且这些信息集合置于变更管理之下。为此,本阶段所必需的实践是:
1.记录评估输入记录的要求信息;
2.获取评估输入记录的发起方的正式批准;
3.管理评估输入的变更,获取发起方对于变更的承认。
评估输入可能是在计划中逐步产生的,但必须在数据收集开始之前得到正式批准。因此,评估输入至少应该包含如下必需的信息:
1.评估发起方的身份,发起方和被评估组织单位之间的关系;
2.评估目的,包括相应的商业目标;
3.评估参考模型范围;
4.被评估组织单位;
5.评估过程背景,包括:组织单位的大小和人员统计情况,应用领域、大小、危险程度和复杂度;组织单位产品和服务的高优先级特征(例如:面市时间,多功能,可靠性);
6.评估约束,包括:关键资源的可用性(例如: 人员,资金,工具,便利设施,日程安排约束,评估可用的最多时间,评估之外的特定过程域或者组织实体,评估期望的最大、最小或者特定样例大小或覆盖,评估结果的所有权归属以及使用的限制,一致同意的信息结果的控制,评估结果与相关来源的属性。
7.使用的CMMI模型标识(版本,学科,表示法);
8.将成为评估小组领导者的主任评估师的身份和联系方法;
9.评估小组成员的身份和联系方法,以及他们各自特定的评估责任;
10.评估参与者和支持人员的身份(名字和组织关系),以及他们各自在评估中的特定责任;
11.为实现评估目标,评估期间收集的任何附加信息;
12.包括将产生的定级的计划评估输出描述;
13.预期的进一步活动(例如:报告,评估活动计划,再评估);
14.计划的SCAMPI剪裁和相关的折衷,包括组织单位的样例大小或覆盖;
15.评估使用的方式(例如:内部过程改进,供应商选取,过程监视)。
需求分析作为过程改进评估方法的第一步,是进行准确评估的前提条件。当满足下面三个退出标准时,我们认为需求分析阶段可以结束:评估发起方和权威的SCAMPI主任评估师进行了初步的接触;主任评估师已经访问了发起方组织的成员;评估输入已经被评估发起者证明并且置于变更管理之下。
值得注意的是,评估发起者在过程评估方面的经验将推动这一过程的剪裁选择。一个没有评估经验的发起者将需要大量的信息和合作的咨询,以提供有意义和完整的评估需求;而有经验的发起者很可能会提供很有针对性的需求分析。
收缩