前言
客户需求的变更往往是令项目组很头疼的事情,无论项目负责人在项目启动的时候下了多大的决心,一定要在项目中杜绝需求变更的发生,但似乎最终也都还是不得不向“现实”低了头……那么需求变更的问题就真是完全不可避免吗?我们尝试从法律的角度来分析需求变更的原因,并以此来探讨其预防的可能性。
?
需求变更的界定
为了更好的探究需求变更的发生原因,我们先来明确一下什么是需求的变更。从合同法的角度,合同的变更就是对之前合同中已约定条款进行改变,同理需求的变更是对之前双方已经确定好的需求内容做改变,例如之前要开发一套关于教学课程内容的软件,现在变更为关于考试内容的软件。
这里需要注意同需求的增加进行区分,需求的增加是对之前未约定的内容进行补充,例如之前约定要开发教学课程内容的软件,现在要增加考试内容。
还是上面的例子,如果在设计考试成绩添加的时候,项目组设计为手动添加,但这时候客户要求变为自动添加,这属于什么呢?如果之前对于添加方式没有相关的约定,那么这就是需求的增加,若是之前曾约定过手动添加,那么这里就是变更,当然如果之前约定的就是自动添加,那么这里就是未按约定进行了。
?
需求变更的原因
在明确完需求变更的界定之后,我们再来讨论其发生的原因。按道理讲当双方既然已经确定了项目需求,如果没有临时的突发事件发生,那么需求变更的发生似乎是没有出现的道理的,这也是令项目组最气不过的地方了,明明之前是已经说好的方案,按照方案做出计划和实施之后,却又被推翻。
那么什么时候项目需求需要发生变更呢?我们从需求变更事件发生的过程来分析,需求变更包括两个阶段:第一阶段是最开始需求的确定;第二阶段是后面的变更行为。如前面所讲,当需求在一开始被确定好了之后,那么是不应该会发生变更的,如果需要变更,那么一定是环境状况发生了突然性的变化,例如之前客户是教学机构,所以软件开发的内容是与课程教学相关的,当客户的业务变更为考试机构了,那么这时需求必然要发生相应的变化,从教学软件变更为考试软件。由此可知,当环境状况发生突发性变化时,需求会发生变更,那么如果不存在这些突发性情况的时候,客户也要求变更是怎么回事呢?那就是前期的需求确定阶段出了问题。因为如果在一开始的需求没有完全固定下来的话,那么势必会在后续工作里改来改去的。
那么前期的需求确定会出什么问题呢?需求的确定包含两个方面:第一是从项目需求者的角度,也就是项目需求方确定自身的项目需求,第二是项目提供方的角度,也就是项目提供方对客户需求的理解程度。
所以前期需求确定出现的问题主要在这两个方面。需求方确定自身需求容易出现的问题,例如各个部门需求不统一导致需求不明确,客户自身也没有搞明白实际需求,或是前期确定好需求,之后又被领导否掉等等......那如果是项目提供方在理解客户需求中出了问题,最容易发生的就是项目组做出来的成果不能解决客户的实际问题。
?
需求变更的预防
根据上述需求变更的发生原因,预防就可以从这两个方面入手,首先是客户自身的需求需要明确和统一,例如当遇到客户对需求不清楚或内部不统一等情况时,应当先解决这些问题,并且应验证其是否是客户的真实需求,因为如果不首先解决的话,后续会然发生需求反复变化;其次是当客户需求明确后,要注意完全理解客户的需求,尤其要注意理解客户希望通过项目要解决什么问题或达成什么目标。
当第一阶段的需求确认做好之后,项目进行期间发生突发性状况,遇到项目需求发生改变,这种情况一般是不太能提前预见到和预防的,并且突发性状况的出现往往改变的不仅仅是需求,同时还会包括因需求的改变所引发的其他因素的变化,例如成本的预算,项目周期等等,而且也正是这些限制性因素让项目组对于需求的变更觉得很棘手,若是既有充足的预算,又有充足的时间和人手等,是不是即使发生变更,也会变得好了许多呢,所以这时应当注意与客户协商的不仅仅是需求变更这一项,同时还应包括项目进程各项因素条件随之变化的解决。这在司法实务的纠纷中也是很常见的,项目需求的变更导致时间的紧迫或是技术难度增大等等,但并未就其重新约定,最终发生项目僵持不下或逾期等等。
综上,需求变更不会无缘无故的发生,避免的方式不能仅仅通过对客户说“不”来达成,如果可以从发生的原由来入手解决,也许会多些办法。
?
?
?
?
?
?