2.1 采访持重要信息的人
2.2 需求工作会
2.3 将需求列成合同式的文件
2.4 原型(Prototype)
2.6 确认持关键信息者
挑战
顺利地完成需求分析是一个艰巨的挑战。首先要确认所有持有关键信息的人本身就不容易,然后还要从这些人获得可用的信息,把这些信息转化为清晰的和完整的形式。同时分析者还要考虑到可能的限制。
除此之外他们还要考虑一个项目的·软件工程师与他们的顾客往往使用不同的词汇。有时他们以为互相之间完全达成协议,但是在展示最终结果时却发现并非如此。开发者有义务克服这个困难,他们拿了顾客的钱,因此有这个义务。
·软件开发者往往喜欢将顾客的需要改变得能使它们符合一个已存在的系统或模式,而不愿按照顾客的需要来发展一个新的系统。
·需求分析往往是由程序员完成的,而不是由作业分析员完成的。程序员往往缺乏理解实际事物的运行过程和商业过程的技巧。
解决方法
解决这些困难的一个方法是使用专业的作业或系统分析员,这些专业人员通过专门训练来填补商业和电脑世界之间的鸿沟的。这个方法可以达到一定的效果,但从顾客方面来说要找到相应的有类似技巧的人就相当困难了。此外今天为需求分析所使用的方法依然还有很大的缺陷,它们还不够有效。
1990年代以来新的技术有制作原型、统一建模语言、用例和敏捷软件开发等方法。
主要技术
需求分析有可能在一个项目中成为一个漫长、艰巨的工作。需求分析专家与他们的顾客交谈、记录他们的交谈结果、分析他们收集的信息,从中提取互相矛盾的地方,总结出一个总体观念,然后再与顾客交谈他们发现的问题。这个过程可以不断重复,在有些项目中这个过程可以伴随着整个在有些项目中这个过程可以伴随着整个生命周期。
新系统很可能改变人之间的关系和人的工作环境,因此认定谁是重要的信息持有者是非常重要得。只有这样在需求分析的过程中才能够将顾客所有的需要都纪录下来,只有这样才能保证他们认识到新的系统对他们来说带来怎样的变化。出于下述原因这个要求往往达不到:
·与顾客的交谈不够多和不够彻底,一些重要的需求被忽视;
·顾客的反应不说明问题,顾客对新系统的特征不满。
文章来源于领测软件测试网 https://www.ltesting.net/