p;合同约束 需求变更给软件研发带来的影响有目共睹,所以在和用户签订合同时,能增加一些相关条款,如限定用户提出需求变更的时间,规定何种情况的变更能接受、拒绝接受或部分接受,还能规定发生需求变更时必须执行变更控制流程。
差别对待 随着研发进展,有些用户会不断提出一些在项目组看来确实无法实现或工作量比较大、对项目进度有重大影响的需求。遇见这种情况,研发人员能向用户说明,项目的启动是以最初的基本需求作为研发前提的,如果大量增加新的需求(虽然用户认为是细化需求,但实际上是增加了工作量的新需求),会使项目不能按时完成。如果用户坚持实施新需求,能建议用户将新需求按重要和紧迫程度划分档次,作为需求变更评估的一项依据。同时,还要注意控制新需求提出的频率。
选用适当的研发模型 采用建立原型的研发模型比较适合需求不明确的研发项目。研发人员先根据用户对需求的说明建立一个系统原型,再和用户沟通。一般用户看到一些实际的东西后,对需求会有更为周详的解释,研发人员可根据用户的说明进一步完善系统原型。这个过程重复几次后,系统原型逐渐向最终的用户需求靠拢,从根本上减少需求变更的出现。目前业界较为流行的叠代式研发方法对工期紧迫的项目的需求变更控制非常有成效。 项目管理论坛
用户参和需求评审 作为需求的提出者,用户理所当然是最具权威的发言人之一。实际上,在需求评审过程中,用户往往能提出许多有价值的意见。同时,这也是由用户对需求进行最后确认的机会,能有效减少需求变更的发生。