大型信息化项目建设需求管理方法研究
2014-04-29詹卫许王乐东
詹卫许 王乐东
【摘要】由于大型信息化系统功能复杂、涉面广、建设周期长等特点,导致大型信息化项目建设的需求管理困难。本文主要从大型信息化项目的需求管理进行研究,通过对大型信息化项目需求管理现状的分析,指出用户缺乏需求管理经验,不了解需求收集流程,主动性不强,对需求描述不清晰,以及缺乏有效的追溯机制等问题是导致大型信息化项目失败的主要原因。为此,用户首先应该明确需求收集流程,主动进行系统需求的收集;然后,规范需求工作,从而保证系统需求的清晰、完整表达;最后,采用双向跟踪追溯机制,让客户实时了解系统建设现状,保证用户需求真实落地。使得最终的系统符合用户需求,达到信息化系统提高工作效率的目的。
【关键词】信息化项目建设;需求管理;管理分析;需求跟踪
引言
信息技术正以其广泛的渗透性、无形值价和无与伦比的先进性与传统产业结合,信息资源已成为与材料和能源同等重要的战略资源。信息化建设水平已经成为一个企业综合实力的重要标志,同时也是推进企业发展的助力器。
然而,据美国Standish Group发布的报告,只有26%的项目是真正成功的, 28%的项目是彻底失败的(即中途夭折的项目),其它的46%介于成功与失败之间。而且,报告还指出“不成功”的项目50%以上归因于需求管理。
用戶是系统最终用户,因此在大型信息化项目需求管理过程中, 用户扮演者非常重要的角色。本文主要从系统最终用户的角度,对大型化项目需求管理过程中所存在的问题进行研究,并且针对目前大型信息化项目需求管理过程中存在的问题,给出可行的解决方案。
1.大型信息化项目建设的需求管理难点
需求管理是非常复杂和动态的过程,特别对于大型信息化项目,由于其项目建设范围和用户使用范围广、业务需求庞杂、系统架构复杂等特点,需求管理尤其显得更为复杂和困难,主要表现在以下几点:
1.1 需求收集过程中,用户缺乏需求收集的主动性
在大型信息化系统建设过程中,需求管理工作一般由软件公司主导,而本应该为系统需求管理主导力量的系统最终使用用户却往往只是被动的配合软件公司的需求收集工作。这种现象出现的原因主要有以下两方面。
一方面,由于软件开发公司更加熟悉项目调研的要点,能够对信息化项目进行整体规划和设计;可以从信息系统的角度,将业务流程更加专业的描述出来,便于项目的设计和优化。同时,软件开发公司需要最终对项目实施的成败负责,为此用户作为大型信息化项目的甲方,往往认为需求分析管理是软件开发公司的责任,在需求收集过程中,用户只是被动的配合软件公司的调查,只是被动的等待,缺乏主动性。
另一方面,大型信息化项目需求管理流程复杂,通常需要用户多个部门进行彼此合作来完成。如果用户应用部门缺乏对多个部门业务需求的综合考虑,那么所开发的应用系统会出现彼此失去关联的状况,缺乏综合性,在进行业务系统的整合时会使得这些弊端暴露无遗。
由于需求管理流程复杂,而且用户往往缺乏信息化项目需求管理的经验,感觉无从下手,只能够被动的等待、配合软件公司的需求管理工作。
1.2 需求管理过程中,用户对需求描述不清晰
在大型信息化项目需求管理过程中,需求梳理困难的问题主要表现在如下三个方面:
一方面,在大型信息化项目的需求管理过程中,用户熟悉业务流程,但是由于缺乏计算机技术知识。因此,用户往往只能够通过日常语言来对业务进行描述,缺乏计算机处理时所需要很多细节性的描述。
另一方面,由于缺乏具体的业务背景,技术人员可能会对用户所描述的需求产生歧义,从而造成开发失误。
由于系统用户和系统开发人员的生活、工作经验不同,如果双方缺乏有效的沟通,用户对需求的描述不规范,都容易导致系统开发人员误解系统用户的需求,增加系统开发风险。
1.3 项目建设过程中,用户难以保证需求落地
在项目开发过程中,为了保证用户需求被正确理解,需要对用户需求进行追溯。但是,在大型信息化项目建设过程中,需求追溯困难,其主要表现在如下两个方面:
一方面,大型信息化项目的功能模块众多,往往涉及多个部门,多部门之间的交互不方便。从而,导致开发前期的需求不够深入,直到系统的后期,用户还会提出新的业务需求,或者会对现有的需求进行改动。
另一方面,用户无法保证所提出的系统需求被软件设计人员所真正理解,但是在系统最终交付到用户手中之前,用户不能够确定软件设计人员是否真实的按照自己的需求在进行软件的设计和开发,最终导致用户需求难以落地。
2.大型信息化项目建设采用需求管理用户建议
针对目前大型信息化系统建设过程中需求管理存在的问题,用户应该更加积极主动的收集系统需求,并且通过规范的文档清晰、完整的表达其对信息系统的需求,同时设定合理的跟踪追溯机制,保证用户需求落地。
2.1 明确需求收集流程,主动收集系统需求
需求管理模型的第一个阶段就是需求获取,也是最重要的一个阶段。需求获取的过程也是系统用户对业务工作的归纳,总结的过程,所捕获的需求也是系统用户对将要建设的信息化系统业务功能期待的指标。因此,由软件公司闭车造车的获取系统需求的方式是不可取的。需要系统用户积极主动的提出对所需产品的愿景。通过各种方式来获取各部门对系统的需求。
由于,建设大型信息化项目需求的来源点多面广,需求获取范围大(人多、类型多、分布广),需求获取困难(说不清、道不明、各种信息噪音混淆在一起)。因此,用户可以先以问卷的形式进行初步调研,根据初步调研的结果梳理访谈提纲,准备更进一步的现场访谈。经过一系列的初步需求调研,对业务需求及需求范围、框架有一定的意识,可是通过意见征集的方式更进一步做到全员参与并征集到准确需求信息。需求征集流程图2-1如下:
图2-1 意见征集流程图
(1)启动咨询阶段
在需求征集的启动咨询阶段,需要根据系统的最终用途,确定需求征集的范围和方法,建立和完善需求征集制度,從而使得需求征集工作运作有序化、规范化,保障需求获取工作顺利进行。需求征集制度的内容包括:工作范围和工作过程、时间安排、征集人员名单、意见征集手段、意见征集流程、应急预案等内容。并且将需求征集制度下发到各部门。
(2)需求征集阶段
在需求征集阶段,各部门根据需求征集制度中的规范,采用面谈法、观察、界面原型征集法等具体的手段,来获取系统最终用户对系统图的需求。
(3)研究分析阶段
在各部门完成了征集了最终用户对系统的需求之后,汇总各个部门对系统的需求,进行审批,对汇总的需求进行完善,最终形成需求征集报告发给软件开发公司,作为软件开发公司编写系统需求文档的原材料。
2.2 规范需求工作,保障需求描述清晰完整
用户的规范需求管理工作,应该按照“统一管理、统一规划、统一标准、统一建设”的信息化项目建设原则,对大型信息化系统的需求进行规范化管理,强化项目过程和质量管理,从而减少用户与软件设计人员的误解。
用户提交给软件公司的需求,应该按照标准化模板进行编写,形成统一、规范的需求阶段交付成果,并加强加付成果的配置管理,对里程碑交付物、重点过程文档、关键环节活动的资料等进行规范的版本管理。从而让软件公司更加清晰、明了的了解用户需求。同时,规范的需求描述文档,也可以让客户自己理清思路,发现其中遗漏的需求,从而保证需求的清晰和完整。
在客户收集用户需求时,根据需求收集的不同阶段,应该制定相应的需求描述规范文档。各阶段模板内容如图2-2所示:
图2-2 各阶段需求描述规范
在需求管理工作过程中,由项目组成员负责业务需求收集、分析,并按照相关制度及模板要求编制《业务模型说明书》,《需求规格说明书》、《功能测试方案》,经广泛征集各方意见后,进行修改审核,发布需求各阶段产出成果。
明确需求管理制度,确定需求管理方法,对收集的用户需求意向进行分析,分解出可实现、可检测的需求项,从而将需求意向条目化处理。使用正确的、有效的需求获取、描述分析、管理方法,有效的规避需求管理过程中所遇到的问题及风险。
2.3 采用信息化技术,实现双向跟踪追溯机制
在大型信息化项目中,需求变更几乎是不可避免的。作为大型信息化系统的管理人员,一方面软件公司应该加强对客户的需求变更进行管理,避免客户需求变更所导致的工期拖延或者质量下降等问题;另一方面,用户也应该实时监督系统开发流程,保证需求落地。因此,可以采用需求追踪链的方式来对需求进行追踪处理。
(1)需求跟踪链管理
需求跟踪是成本和质量控制的基础。CMM/CMMI2就定义了需求管理这个KPA,要求对需求进行双向跟踪,需求跟踪的双向性要求体现在两个方面:
1)需求的横向跟踪和纵向跟踪
横向跟踪体现在跟踪所有需求之间的依赖关系;纵向跟踪表现为对需求的定义、设计、实现与测试等生命周期过程的关联和对应。
2)需求的正向跟踪(Tracking)和逆向回溯(Back Tracking)。
要求:可以从需求项出发追溯到该需求的设计、编码和测试用例;也可以从代码或测试用例或设计模型出发回溯到对应的需求项,包括需求的来源、需求的理由等等。
需求跟踪链管理如图2-3所示。
图2-3 需求跟踪能力链
图2-4 需求跟踪矩阵样例图
(2)《需求跟踪矩阵》维护
因此,不论采用何种跟踪方式,都需要建立与维护《需求跟踪矩阵》。需求跟踪矩阵易于创建和维护,可以很容易发现需求与后继工作成果之间的不一致,有助于项目管理人员有时纠正偏差。如图2-4需求跟踪矩阵。
《需求跟踪矩阵》主要是跟踪及统计功能需求和非功能需求。当需求基线第一次形成时就需要填写这个文档,这篇文档中的功能点名称和编号需和需求文档中对应,不得存在差异。
采用信息化支撑工具,能使需求跟踪更清晰、方便、快捷。需求跟踪工具需满足过程透明化、成果可追踪、需求一致性的特点。需求跟踪流程如图2-5所示。
图2-5 需求跟踪-需求视图
3.结束语
用户需求管理是大型信息化项目建设过程中的关键环节,对信息化项目的实施和最终交付成果有直接的影响。作为系统的使用者,用户对系统的需求是系统建设的基础。但是在大型信息化系统中,由于项目涉及面广、业务复杂、建设周期长,因此用户往往也难以清晰的了解和描述其对系统的需求。为此,本文主要从系统用户的角度对大型信息化项目建设的需求管理进行研究。
针对目前大型化信息系统需求管理过程中所存在的问题。一方面,用户应该规范需求管理工作,明确需求管理流程,主动、准确、有效的收集系统需求;另一方面,应该统一需求管理各阶段相关模板,对需求进行清晰、完整的描绘苏,实现各参与方对需求的共识和需求的一致性;最终,应该明确需求跟踪流程,实现双向跟踪机制,从而实现对需求变更的流程化、规范化管理,有效控制变更风险的发生,确保用户需求最终落地。
参考文献
[1]吴艳艳,周长伦,姜家轩.软件项目管理中的需求管理[J].信息技术与信息化,2008(4).
[2]孙莉.软件项目管理中的需求管理[J].信息系统工程,2011(4).
[3]陈江.控制工程项目管理之需求管理[J].项目管理技术,2009(6).
作者简介:
詹卫许(1974—),男,湖南浏阳人,南方电网公司信息部主管。
王乐东(1974—),男,吉林长春人,云南云电同方科技有限公司经理。