《软件需求管理》PPT课件

《软件需求管理》PPT课件

ID:45708233

大小:732.50 KB

页数:92页

时间:2019-11-16

《软件需求管理》PPT课件_第1页
《软件需求管理》PPT课件_第2页
《软件需求管理》PPT课件_第3页
《软件需求管理》PPT课件_第4页
《软件需求管理》PPT课件_第5页
资源描述:

《《软件需求管理》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三章软件需求管理3.1需求工程与需求管理的概念3.1.1需求的噩梦3.1.2需求与需求管理的概念3.1.3现代软件工程的需求工程3.1.4传统软件工程的局限性对大多数软件和系统开发团队来说,与过去自由的日子相比,20世纪90年代是一个强调流程的时代。评测和验证有效的软件开发流程的标准得到推广和普及。许多论述软件开发流程的书籍和文献以及关于业务建模和重构的相关材料纷纷出版。不断涌现出的软件工具已经帮助人们制定和应用有效的软件开发流程。在这十年内,全球经济对软件的依赖程度加深,它推动着开发流程的发展,提高了系统质量。 既然如此,那么今天频频发生的软件项目失败的事件又如何解释呢?即使不是大多

2、数,但为什么仍有那么多的项目受到延期、预算超支和质量问题的困扰呢?随着我们的业务、国家经济和日常活动越来越依赖于系统,如何才能提高系统的质量?3.1需求工程与需求管理的概念为什么要管理需求?简单地说,系统开发团队之所以管理需求,是因为他们想让项目获得成功。满足项目需求即为成功打下了基础。若无法管理需求,达到目标的几率就会降低。也就是说:好的需求管理是项目成功的第一位因素。采用需求管理可以给项目组带来很多的好处,直至项目取得成功。Brooks[1987]:不能得到完整、正确以及无二义性的软件需求仍然是如今导致软件开发失败的一个重大原因3.1.1需求的噩梦一组数字据StandishGroup

3、(1994)的研究表明,在美国:每年大约花2500亿美元,开发17.5万个应用程序项目大公司开发项目的平均成本是232.2万美元中等公司的平均成本是133.1万美元小公司则是43.4万美元另一方面:大约31%的项目在完成之前被取消52.7%的项目成本是项目原来预算的189%因此,StandishGroup估计,美国公司和政府机构在被取消软件项目上的花费,每年大约是810亿美元同样,他们为超过交付时间而需要多支付590亿美元软件开发的问题分类1、需求规格说明4、软件和测试2、管理客户需求5、项目管理3、建档6、编码问题的重要性依次降低ESPITI(欧洲软件过程改进培训倡议)(1995)所作

4、的一个调查,3800个被调查者认为,软件开发的主要问题、次要问题和不是问题的问题如图。一半以上的人认为,软件的二个最大问题是:1、需求规格说明2、管理客户需求相对而言,编码不是问题项目失败的根本原因StandishGroup的研究表明,对软件项目的评价因素,可以归纳为:成功(大公司只占9%、小公司有16%)有异议(推迟且没有达到预期的目标)失败(取消)而有异议的三个主要原因是:1、缺乏用户的参与(占所有项目的13%)2、不完整的需求和规格说明(占所有项目的12%)3、不断改变的需求和规格说明(占所有项目的12%)而其他因素,则比例较小,例如:不合理的时间进度和时间分段(4%)人和资源不足

5、(6%)技术技能不够(7%)结论:1/3的项目直接与需求的获取、建档和管理有关需求变化合理范围内的变化:用户不了解自己的需求需求本身易变,市场、技术、竞争因素不合理的变化:需求文档质量不高需求分析技能、技术和管理上的缺陷需求变化的原因:未受控制的需求变更遗漏需求用户交流不够需求规约质量差低效的需求分析为什么要管理需求?迭代开发模式下,需求在项目各阶段所占有的比例需要更好地适应需求变化、更好的进行范围控制和管理需求错误的代价修复的相对成本开发阶段需求阶段0.1-0.2设计0.5维护20验收测试5单元测试2编码13.1.2需求与需求管理的概念什么是需求?需求的基本概念宽泛地讲,需求来源于用户

6、的一些“需要”,这些“需要”被分析、确认后形成完整的文档,该文档详细地说明了产品“必须或应当”做什么。需求是对系统要做什么、如何工作、表现出来的特征、必须具备的质量、必须满足的约束的叙述需求的重要性需求是产品的根源,需求工作的优劣对产品影响最大。就像一条河流,如果源头被污染了,那么整条河流也就被污染了。国内软件业的痼疾:人们并不清楚究竟该做什么,但却一直忙碌不停地开发。什么是软件需求?一般把需求定义为“(正在构建的)系统必须符合的条件或具备的功能或能力”。电气和电子工程师学会使用的定义与此类似。 著名的需求工程设计师MerlinDorfman和RichardH.Thayer提出了一个包容

7、且更为精练的定义,它特指软件方面-但不仅仅限于软件:1、软件需求可定义为:用户需解决某一问题或达到某一目标所需的软件功能。2、系统或系统构件为了满足合同、规约、标准或其他正式实行的文档而必须满足或具备的软件功能。需求全部是来自用户吗?需求的分解问题领域需要用户需求软件系统需要系统需求应用系统需要系统特性什么是需求管理?由于需求是正在构建的系统必须符合的事务,而且符合某些需求决定了项目的成功或失败,因此找出需求是什么,将它们记下来,进

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。