随着工程师越来越对需求分析的重视今天我们对需求分析的主要困难也理解得比较清楚: 需求分析需要由有充分的经验、技术知识和语言技巧的专家来完成;顾客一开始所提出的需要往往不完全、太乐观以及过分受老的系统或过程的影响;使用复杂的工具和不同的技术来进行需求分析往往会打消获得一个完整的和细致的结果的希望。 项目管理者联盟文章
持有关键信息的人 项目管理培训
顾客有可能防止需求分析顺利进行有以下几种可能性:
·顾客不明白他自己需要什么 项目管理者联盟
·顾客不愿将他们的需要固定在一系列写在纸上的条例中 项目管理培训
·在价格和时间确定后顾客坚持要求新的需要 项目管理者联盟
·分析者与顾客的通讯太缓慢 项目管理者联盟文章
·顾客不参加回顾或无法参加回顾 talent.mypm.net
·顾客缺乏技术上的知识 项目管理论坛
·顾客缺乏对软件开发的知识
软件开发者 项目管理论坛
但是软件开发者也有他们的责任。由于软件开发者收钱来开发他们的软件,他们的责任就更加不可推脱了。由软件开发者导致的困难有: 项目管理者联盟
·软件工程师与他们的顾客往往使用不同的词汇。有时他们以为互相之间完全达成协议,但是在展示最终结果时却发现并非如此。开发者有义务克服这个困难,他们拿了顾客的钱,因此有这个义务。 项目管理者联盟
·软件开发者往往喜欢将顾客的需要改变得能使它们符合一个已存在的系统或模式,而不愿按照顾客的需要来发展一个新的系统。 项目管理论坛
·需求分析往往是由程序员完成的,而不是由作业分析员完成的。程序员往往缺乏理解实际事物的运行过程和商业过程的技巧。 项目管理者联盟
解决方法 项目管理者联盟
解决这些困难的一个方法是使用专业的作业或系统分析员,这些专业人员通过专门训练来填补商业和电脑世界之间的鸿沟的。这个方法可以达到一定的效果,但从顾客方面来说要找到相应的有类似技巧的人就相当困难了。此外今天为需求分析所使用的方法依然还有很大的缺陷,它们还不够有效。 blog.mypm.net
1990年代以来新的技术有制作原型、统一建模语言、用例和敏捷软件开发等方法。 项目管理者联盟
主要技术 blog.mypm.net
需求分析有可能在一个项目中成为一个漫长、艰巨的工作。需求分析专家与他们的顾客交谈、记录他们的交谈结果、分析他们收集的信息,从中提取互相矛盾的地方,总结出一个总体观念,然后再与顾客交谈他们发现的问题。这个过程可以不断重复,在有些项目中这个过程可以伴随着整个在有些项目中这个过程可以伴随着整个生命周期。 项目管理者联盟
新系统很可能改变人之间的关系和人的工作环境,因此认定谁是重要的信息持有者是非常重要得。只有这样在需求分析的过程中才能够将顾客所有的需要都纪录下来,只有这样才能保证他们认识到新的系统对他们来说带来怎样的变化。出于下述原因这个要求往往达不到: 项目管理者联盟
·与顾客的交谈不够多和不够彻底,一些重要的需求被忽视; service.mypm.net
·顾客的反应不说明问题,顾客对新系统的特征不满。 项目管理论坛
·为了使所有这些讨论有条理、有组织和有效地被记录下来,这些讨论的过程和其内容的演化也必须被记录下来。 bbs.mypm.net
分析员可以使用不同的技术来从顾客手中获得需求。比较老的方式有采访顾客,或者与顾客一起开座谈会,列举顾客的需求。比较新的技术有建立模型和使用用例。在最佳状态下在采纳了不同的技术后他们可以完全理解顾客的需要和与持重要信息的人建立了必要的联系。
采访持重要信息的人 PgMp.mypm.net
|