软件的需求分析是开发期的第一个阶段。这个阶段的基本任务是:用户和分析人员双方共同来理解系统的需求,并将共同理解形成一份文件,即软件需求说明书。该阶段是面向用户的,它主要是对用户的业务活动进行分析,明确在用户的业务环境中软件系统应该“做什么”。
需求分析是一项重要的工作,也是困难的工作。该阶段是用户与软件人员双方讨论协商的阶段,由用户提出问题,软件开发人员给出问题的解答。用户的业务活动和业务环境对软件开发人员来说是不熟悉的,要想在短期内搞清楚是不太可能的,用户只熟悉本身的业务活动和业务环境,不熟悉计算机技术。由于这两方面人员缺乏共同的语言,开发人员往往急于求成,于是在未明确软件系统应该“做什么”的情况下,就开始进行设计、编程,而用户则不清楚软件人员在设计怎样的一个系统,直至系统完成交付用户之后,才发现它不符合要求,但这为时已晚,这类教训国内外都不少见。用户与开发人员无共同语言,很难进行交流,这是需求分析阶段的特点之一。
对于一个大型而复杂的软件系统,用户也很难精确完整地提出它的功能要求,只有经过多次长时间的讨论才逐步精确、完善。有时进入到设计、编码阶段才能明确,更有甚者,到开发后期还在提新的要求。这无疑给软件开发带来困难。这是需求分析阶段的特点之二。
需求分析对整个开发阶段都具有重大的影响,它是软件开发的基础,一旦需求分析出现错误,将导致整个软件开发的失败。如果在需求分析产生一个错误,这个错误发现越晚,则花的代价越高。这是需求分析的特点之三。
需求分析的任务是理解和表达用户的要求。用户的要求包括软件系统的范围、功能、性能、限制和约束。范围是指软件的规模有多大,处理的对象及性质是什么;功能是指能做什么样的加工和处理,如数据录入、查询、统计分析、打印报表等;性能是指处理数据量的多少、系统响应时间、查询速度、数据的精度、系统工作可靠性等;限制和约束是指开发费用、开发周期、可使用的资源等。其中功能要求是基本的,它又包括数据要求和处理要求两个方面。
需求分析是在系统分析员主持下,由用户和软件开发人员参加。参加需求分析的用户人员应有三个层次,即企业负责人,各部门负责人,具体工作人员。他们提供的情况在需求分析阶段都应认真收集和考虑。(www.xing528.com)
需求分析的过程。首先召开调查会与上述三个层次的用户人员讨论,了解收集业务过程和业务环境,然后收集与各业务有关的资料、报表、记录等文字图表材料,还应到现场去参观了解,这种调查研究应反复进行几次,直到把用户要求的功能、性能都搞清楚为止。然后对用户的要求进行分析、理解,最后用文档形式把用户要求的功能、性能表达出来,也就是编写需求说明书。
需求说明书主要有三个作用:作为用户和软件开发人员之间的合同;作为开发人员进行设计和编程的根据;作为软件开发完成后验收的依据。
编写需求说明书时,应该完整、一致、精确、无二义性,同时又要简明、易懂、易修改。它越精确,以后出现错误、混淆、反复的可能性就越小。如“系统查询等待时间很短”等词语,是含糊不清的描述,验收时无法检查,而“查询等待时间不超过5秒”就是精确的描述,验收时就可检查是否达到这个要求。
需求说明书最终要得到用户的认可,所以用户要能看得懂,并且还能发现和指出其中的错误。由于用户往往不是一个人,而是企业中各个部门的若干人,他们可能提出相互冲突的要求,这就需要协调和解决这些冲突,在需求说明书中用户要求的应该是一致的、无二义性的。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。