在系统需求分析阶段,项目组成员和客户的深入交流是项目成功的关键。但是由于双方的误解通常使交流难以进行。AMT的刘立军先生总结的Why、What、How方式可以非常有效的使 沟通顺畅。简单的说,在项目初期, 项目经理首先需要考察客户做这个项目有什么用处,就是“为什么”,这样才能真正从客户的角度来考虑系统的设计;接下来需要总结出整个项目是“做什么”,并能概括出各个子任务,让开发人员对项目内容的大方向有很好的把握;最重要的当然是“怎么做”了,对信息系统集成项目而言,这个阶段多花点时间绝对值得。其中也有些小技巧:需求分析报告应以客户认为易于翻阅和理解的方式进行编写,同时也要有助于开发人员开发出真正需要的系统;项目组成员最好就需求分析报告给客户详细的讲述,并达成共识,沟通手段在这里很重要;另外,需求确认之后,最好让客户方管理层书面签字,作为终止需求分析过程的标志,但是绝不是作为拒绝范围变更的手段。
四、行之有效的 变更控制
一个项目的范围计划可能制订的非常好,但是想不出现任何改变几乎是不可能的。项目经理和项目小组必须意识到范围变更本身并没有什么不对,事实上很多时候这会让你的系统更健壮、更实用。客户通常不能一开始就确定所有需求,而且情况会随时间而变化,如果不能包容变更,那么最终解决方案可能就达不到应有的价值。
但是如果变更失控,后果也非常严重,甚至于导致整个项目的失败。根据1995年斯坦迪什公司的研究结果,最可能引起IT项目失败的前三个因素分别为:缺乏用户参与、不完整的要求和说明、易变的要求和说明,这几个因素都直接或间接与范围变更管理有关。
因此,必须进行范围变更管理。潘东先生认为:“变更控制的目的不是控制变更的发生,而是对变更进行管理,确保变更有序进行。”
为执行变更控制,必须建立有效的范围变更流程。这个流程应该包括确认变更、评估变更的商业价值、分析变更对项目的影响,以及提交给项目发起人进行评价以确定是否执行变更。
但是仅有范围变更流程尚不足以真正控制变更,这是因为项目组的外部有许多压力,同时与缺乏行之有效的变更控制手段密切相关。
目前流行的变更管理思想认为在范围变更流程中有四个关键点必须严格控制,既:谁有权确认变更、什么样的变更需要执行、变更的影响多大、客户是否接受变更的代价。
1、谁有权确认变更:
不应当为节省时间而允许客户的业务人员与开发人员直接联系,这样无法控制变更。必须事先明确客户方有权提出变更请求的人员和项目组有权受理变更的人员,变更请求必须有书面材料。
在笔者参与实施某大型信息系统集成项目感受颇深:项目经理曾提醒我们,客户出钱请我们来做实施,这应该算是“公对公”的事情,如果有用户以“私人感情”为由要求范围变更,开发人员可以拒绝。
当时用户如果发现由于业务变化而引起的需求变更,需要向客户方项目负责人提出书面申请,由客户方项目负责人审批后移交实施方项目经理。
这样对所有的变更,双方的项目负责人都能做到心里有数。而且用户在递交书面变更申请时比较慎重,一般都在自己科室内部经过讨论后进行,这样减少了因用户内部看法不同导致的反复变更。
2、什么样的变更需要执行:
不是所有的变更都需要修改,更不是所有的变更都需要立刻修改。必须对客户提出的范围变更进行审核,来决定哪些变更需要修改和什么时候修改。
客户一般对信息系统集成项目不甚了解,他们认为很简单的事情,可能由计算机来解决会很复杂。因此项目经理和项目小组要冷静的分析:用户到底想要实现什么目的,抓住本质的需求。如果用户建议很难实现,可以和用户进行沟通,询问用户是否可以用其他方式来实现其目的。
以笔者的经验来看,一般来说用户的镀金(Golden Plating)需求可以延期解决甚至不考虑。用户的新增需求如果不是影响到核心业务的实现,也可以安排在现有功能的完善之后。