欢迎来到天天文库
浏览记录
ID:335564
大小:69.00 KB
页数:12页
时间:2017-07-25
《浅谈需求分析在软件开发过程中的重要性 毕业论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、浅谈需求分析在软件开发过程中的重要性摘要软件需求分析是软件工程过程中计划阶段的一个决定性步骤,在这一步将把含糊的软件概念转变成具体的规格说明,从而奠定了软件开发的基础。本文通过对需求的定义、需求的类型、需求分析的任务、需求分析的方法、需求的变更以及应用实例等几个方面的介绍,对于在软件开发中做好需求分析有一定的借鉴作用。关键字:软件,开发,需求分析目录第1章绪论...................................................................41.1引言41.2需求的定义4第2章软件需求分析的特点52.1用户与开发人员很难进行交流52
2、.2用户的需求是动态变化的……………………………………………………………52.3系统变更的代价呈非线性增长……………………………………………………….5第3章软件需求分析过程63.1什么是软件需求63.2需求过程中的角色63.3需求过程的迭代………………………………………………………………………73.4需求来源...........…………………………………………………………………….....83.5需求获取方法...…………………………………………………………………….....93.6软件需求表达...…………………………………………………………………….....93.7需求评审.
3、..........……………………………………………………………………...103.7.1需求评审概述...………………………………………………………………….103.7.2需求评审过程...……………………………………………………………….....10第4章合格需求的标准13结论13参考文献1412-12-第一章绪论1.1引言软件项目的开发主要分为五个阶段:需求分析阶段、设计阶段、编码阶段、测试阶段和维护阶段,需求调研和分析是软件开发的第一个阶段。完善的软件需求说明是软件开发项目得以成功的基础。不管设计如何精心或者编码如何巧妙,如果对软件需求不加以明确规定,将使用户感到失望,并给
4、软件开发者带来严重后果。据权威部门统计,目前软件的成功率约为25%,75%的软件是失败的。在这75%的失败中,约有50%以上的软件是由于需求的原因造成的。另有资料表明,软件开发项目中返工开销几乎占开发总费用的一半,而导致返工的主要原因是需求分析错误或不明确,从而引发项目开发中的一系列更改。成功的软件需求分析不仅能提高软件的成功率,而且能节省大量的资源,因此需求分析是软件开发的关键阶段。1.2需求的定义软件产业存在的一个普遍问题就是缺乏统一定义的名词术语来描述我们的工作。客户所定义的“需求”对开发者似乎是一个较高层次的产品概念,而开发人员所说的“需求”对用户来说又像是详细设计了。实际上
5、,软件需求包含着多个层次,不同层次的需求从不同角度与不同程度反映着细节问题。 IEEE软件工程标准词汇表(1997年)将需求定义为: 1)用户解决问题或达到目标所需的条件或能力。 2)系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或能力。 3)一种反映上面1)或2)所描述的条件或能力的文档说明。 IEEE的定义包括从用户角度(系统的外部行为),以及从开发者角度(一些内部特性)来阐述需求,其关键的问题是一定要编写需求文档。 另外,还有其他几种关于“需求”的定义: 需求是用户所需要的并能触发一个程序或系统开发工作的说明; 需求是从系统外部能发现系统所
6、具有的满足于用户的特点、功能及属性等;12-12- 需求是指明必须实现什么的规格说明。它描述了系统的行为、特性或属性,是在开发过程中对系统的约束。 从以上的定义中,我们依然无法得到有关“需求”的清晰概念,真正的“需求”实际上存在人们的脑海中,任何文档形式的需求(例如:需求规格说明)仅是一个模型或一种叙述,但是编写出高质量的需求规格说明书在需求分析阶段还是关键。需求分析奠定了软件工程和项目管理的基础。我们在建造软件系统这座大厦的时候,如果需求分析的基础不够坚实和牢固,那么往往会导致软件系统问题百出,甚至被马上丢弃。在建造软件系统的过程中,如果我们经常习惯地沿用一些不规范的方法,其后
7、果便是产生一条鸿沟──开发者开发的与用户所想得到的软件存在着巨大的“期望差异”。因此“需求”这个名词的定义不仅仅是从用户角度对系统外部行为的描述,以及从开发人员角度对系统内部特性的描述,其关键的一点是“需求”必须文档化。第二章软件需求分析的特点2.1用户与开发人员很难进行交流在软件生命周期中,其他4个阶段都是面向软件技术方面的,只有本阶段是面向用户的。需求分析是对用户的业务活动进行分析,以便明确在用户的业务环境中软件系统应该“做什么”。但是在开始时,开发人
此文档下载收益归作者所有