随着市场竞争的加剧,越来越多的企业开始围绕客户的需求来经营企业,很多企业已经将满足客户需求作为竞争的核心原则。体现在产品开发上,整个开发过程都围绕客户需求进行组织。但是,在实际操作过程中,经过访谈以及相关资料证明,很多客户,甚至包括一些产品开发人员,对什么是需求,需求的具体表现是什么并不清楚。表现最突出的一种情况是,当市场人员做需求调研和分析的时候,会感觉大部分的用户不懂得如何表达自己的需求,一般情况下只能直接或者在简单提示后说出些解决需求的方法,而不是说出需求本身。需要互相激发、引导才能找出真正的需求所在。那到底什么是需求呢,如何管理需求呢?
常见的对需求的专业化定义为:系统必须符合的条件或具备的功能。
而对于需求管理的专业化正式定义为:需求管理是一种系统化方法,可用于获取、组织和记录系统需求并使客户和项目团队在系统变更需求上达成并保持一致。
实际上,在满足需求的同时,企业(或对应到具体的开发团队)往往要综合考虑自身的能力、未来盈利状况、以及将来的竞争状况等等因素,所以,需求管理的过程,往往代表着价值与代价的一种平衡过程。
90年代初期时,需求管理还没有被区别出来,成为一个单独的学科。工程师们只是在工作中,不经意间完成着与之相关的部分。公司里没有专门的“需求管理者”这样的角色,市场上专门的需求管理工具极少,一些系统建模工具包含了一些需求分析功能。然而,到了今天,需求管理已经成为一门单独的学科,有了专门的需求管理国际会议,一些大学也开展了该方面的研究。公司开始雇佣“需求管理者”,他们在公司里专职负责管理需求,这也成为他们工作资历中浓重的一笔。随后,出现了专门的需求管理工具市场,有了一整套的工具集涵盖需求管理的方方面面,如帮助用户采集、表达、组织、追溯、协商、审查、变更和验证需求。
需求管理作为二十世纪最好的软件工程实践之一,被逐步规范系统化,并首先成熟于软件开发领域。并经过大学研究人员的进一步扩展,以及企业的逐步深入实践,扩展到企业的方方面面。
但是,直到现在,需求管理还常常被很多人误解为仅仅是需求的采集和分析。事实上,需求管理的内容远不止于此,它还包括需求的组织、跟踪、审查、确认、变更和验证。特别是需求的跟踪,它确保了所有开发行为都与用户需求紧密相关。
需求管理恰如裁缝的量体裁衣,它直接关系到最终产品的成型。仅从字面出发,如果一个产品满足了客户需求,那它无疑就是成功的。需求管理的过程,从需求分析开始贯穿整个项目始终,力图实现最终产品同需求性的最佳结合。通过对需求管理在项目进程中实施的不同任务进行分析,我们可以看出需求管理所起的作用。
需求管理应当具有以下几个特征:能够在开发周期的初期就建立需求模型;建模的成本很低;易于以后的具体化和优化;本身能体现最终解决方案的特征。也许某些细节是抽象的,但需求管理模型本身必须是完整的。需求模型不应当具有诱导性或倾向性,必须为开发工作留有充分发挥和优化的空间。
有效需求管理的关键在于维护需求的明确阐述,每种需求类型所使用的属性,以及与其他需求和其他项目之间的可追踪性。
中国有句谚语:“好的开始就等于成功的一半”;西方的谚语是:“Garbagein,garbageout!”两者都同样表明了,从项目一开始,就要有正确的输入,也就是正确的用户需求。
“行百里者半九十”。在整个研发过程中,保持整个团队对需求一以贯之的关注、确保所有开发活动都可以跟踪到最初的用户需求无疑是极为关键的。
如果不能有效处理需求变更,项目计划会一再调整,产品交付日期一再拖延,项目研发人员的士气将越来越低落,将直接导致项目成本增加、质量下降及项目交付日期推后。这决定了项目组必须拥有需求管理策略和相应的能力。