业务人员可以要求IT人员在实现功能需求的同时还注意软件的易用性,因为易用性或质量属性能使客户更准确、高效地完成任务。例如业务人员有时要求产品要“界面友好”或“健壮”、“高效率”,但对IT人员来讲,太主观了并无实用价值。IT人员可以通过询问和调查了解客户所要的“友好、健壮、高效“所包含的具体特性,具体分析哪些特性对哪些特性有负面影响,在性能代价和所提出解决方案的预期利益之间做出权衡,以确保做出合理的取舍。
⑧业务人员和IT人员互相尊重
如果业务人员与IT人员不能相互尊重,那关于需求的讨论将会遇到障碍。参与需求分析的业务人员有权要求IT人员尊重他们并珍惜他们为项目成功所付出的时间;但业务人员也要尊重IT人员的需求可行性及成本评估。所有软件功能都是有成本的,业务人员所希望的某些产品特性可能在技术上行不通,或者实现它要付出极高的代价,而某些需求试图达到在操作环境中不可能达到的性能,或试图得到一些根本得不到的数据。IT人员会拒绝或实现不了业务人员的一些要求,业务人员也应该尊重IT人员的意见。
⑨有需求变更要立即联系
不断的需求变更,会给在预定计划内完成的产品质量带来严重的不利影响,但需求变更又是不可避免的。在开发周期内变更越在晚期出现,其影响越大;变更不仅会导致代价极高的返工,而且工期将可能被延误,特别是在主体架构已完成后又需要增加新特性时。所以,一旦客户发现需要变更需求时,请立即通知IT人员。
⑩需求确认仅仅是以后讨论的“基线”。
在“需求分析报告”上签字,通常被认为是业务部门同意需求分析报告的标志性行为,然而在实际操作中,业务人员往往把“签字”看作毫无意义的事情。有时这个领导同意了,那个领导却不同意;即使每个相关人员都签了字,也照样“翻供”,通常的理由是:“他们要我在需求文档的最后一行签名,于是我就签了,否则他们不开始编码!”同样的问题也发生在仅把“签字确认”看作是完成任务的IT人员身上,一旦有需求变更出现,便指着“需求分析报告”说:“您已经在需求分析报告上签字了,所以这都是按照您的要求开发的。”-这两种态度都是不对的,因为业务人员不可能在项目早期就能说清楚所有业务需求,变更需求是必然现象。在“需求分析报告”上签字确认,仅仅是需求分析过程结束的标志,它意味着“需求分析报告”是以后讨论的基线,进一步的变更可在此基线上通过项目定义的变更过程来进行。
拨开需求分析的迷雾,将给初步的需求开发工作画上双方都明确的句号,将有助于形成一个持续良好的客户与开发人员的关系,为项目成功奠定坚实的基础。
3、需求分析的风险
客户有时会提一些看上去很“酷”,但缺乏实用价值的功能;若要实现这些功能可能要耗费大量时间和成本,造成项目延期,此时CIO要权衡业务需求和项目资源之间的关系,及时决定必须完成哪些需求,舍弃哪些需求。
不重视需求分析的项目组将“自食其果”,但重视了并不一定能写出完美的需求分析报告,因为需求分析中还有很多陷阱,稍微不慎CIO就可能掉进业务需求的“陷阱”。需求分析中常见的陷阱有以下几种:
首先是无足够用户参与。业务部门经常不明白为什么收集需求和确保需求质量需要费那么多功夫。由于业务部门工作很忙,有时IT人员很难与业务人员坐在一起交流业务需求;即使费了九牛二虎之力坐在一起,业务人员也讲不明白自己的真正需求。为确保需求分析的质量,CIO一方面要让IT人员与尽量多的业务人员交流;另一方面,应让具有代表