【答案解析】 在软件项目中,需求的变化是不可避免的。需求变更可能来自解决方案提供商、用户或产品供应商等外部因素,也可能来源于项目团队内部。对于项目团队而言,无法阻止需求发生变更,他们只能正确地对待变更,按照既定流程管理变更,尽量降低变更对项目成本、进度和质量的负面影响。
①需求基线
需求开发的结果应该有项目视图和范围文档、用例文档和SRS,以及相关的分析模型。经评审批准,这些文档就定义了开发工作的需求基线。这个基线在用户和开发人员之间构成了软件需求的一个约定,它是需求开发和需求管理之间的桥梁。
基线是一个软件配置管理的概念,它帮助开发人员在不严重阻碍合理变化的情况下来控制变化。根据IEEE的定义,基线是指已经通过正式评审和批准的规约或产品,它可以作为进一步开发的基础,并且只能通过正式的变更控制系统进行变化。在软件工程范围内,基线是软件开发中的里程碑,其标志是有一个或多个软件配置项的交付,且已经经过正式技术评审而获得认可。例如,SRS文档通过评审,其中的错误已经被发现并纠正,则变成一个基线。根据国家标准《计算机软件配置管理计划规范》(GB/T 12505-1990)的规定,基线可以分为功能基线、指派基线和产品基线三种,通过评审后的SRS属于指派基线。
开发团队可以根据已知的需求基线来区分“旧需求”和“新需求”。一旦建立了需求基线,很容易对新需求进行识别和管理,可以把新需求和已有的基线加以比较,确定适合它的位置以及它是否会与其他需求产生冲突。如果接受新需求,就可以管理它的变更过程。
②需求的状态
从需求的整个生命周期来看,其状态的变化如图所示。
在需求状态的变化中,项目管理人员首先需要关注的是那些被拒绝和被丢弃的需求。因为这些需求有可能是应该被接受和并被实现的需求,如果不是通过有管理的处理过程,就有可能因为疏忽而被遗漏。同时,也应关注被交付的需求,因为可交付物是项目的成果体现,而可交付物的主要内容是对需求的实现。
