软件需求工程.ppt

软件需求工程.ppt

ID:58016551

大小:2.23 MB

页数:21页

时间:2020-09-04

软件需求工程.ppt_第1页
软件需求工程.ppt_第2页
软件需求工程.ppt_第3页
软件需求工程.ppt_第4页
软件需求工程.ppt_第5页
资源描述:

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

1、软件需求工程田精白博士软件需求工程概述伦敦股票交易项目TAURUS,在花费了数百万英镑之后于1993年被取消(项目失败的总损失估计达到几亿英镑)。调查结果显示,许多问题源于未能协调那些不一致的需求。Swanick空中交通控制系统原计划在1998年完工,但直到2001年尚未交付使用,额外开支高达1亿英镑以上。经官方调查,发现其中的一个主要原因在于“缺乏健壮的需求规格说明导致无法继续进行系统实现。理解需求用户如此描述项目经理如此理解分析人员如此设计商业顾问如此诠释程序员如此编码技术支持如此肤浅项目文档如此编写客户投资

2、如此巨大安装程序如此“简洁”客户需求——原来如此需求的重要性项目失败和超出预算情况分析项目失败因素分析需求的重要性软件需求是决定软件开发是否成功的关键因素–需求分析可以帮助开发人员真正理解业务问题–需求分析是估算成本和进度的基础–需求分析可以避免建造错误的系统,从而减少不必要的浪费–软件规格说明有助于开发人员与客户在“系统应该做什么”问题上达成正式契约–需求分析形成了软件开发的基线,有助于管理软件的演化和变更–软件需求是软件质量的基础,为系统验收测试提供标准A.Davis认为软件需求是从软件外部可见的、软件所具有

3、的、满足于用户的特点、功能及属性的集合I.Sommerville需求是问题信息和系统行为、特性、设计和实现约束的描述的集合IEEE软件工程标准词汇表中定义需求为:(1)用户解决问题或达到目标所需的条件或权能(Capability)(2)系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或权能(3)一种反映上面(1)或(2)所描述的条件或权能的文档说明什么是软件需求目标需求业务需求功能需求非功能需求(性能需求)约束与限制软件需求的分类反应组织机构或客户对系统和产品提出的高层次的目标需求,其限定了项

4、目的范围和项目应达到的目标例:文字处理系统用户使用系统能够有效地纠正文档中的拼写错误,系统能满足用户的业务要求以及提高用户的工作效率。目标需求主要描述软件系统必须完成的任务、实际业务或工作流程等。软件开发人员通常可以从业务需求进一步细化出具体的功能需求和非功能需求。例:文字处理系统当找到文档中拼写错误时,通过可供选择的单词表,选择单词表中的一个单词后,替换原来的单词。业务需求指开发人员必须实现的软件功能或软件系统应具有的外部行为。例:文字处理系统查找文档中的单词,并高亮度的显示出错的单词。用对话框显示可供选择的单

5、词表,实现整个文档范围内的替换。功能需求指实现的软件系统功能应打到的技术指标,如:计算效率和精度、可靠性、可维护性和可扩展性等。例:文字处理系统检查单词的速度快,准确率要求打到99%,系统的有效性和可靠性要高等。非功能需求指软件开发人员在设计和实现软件系统时的限制,如:开发语言、使用的数据库等。例:文字处理系统文件内部格式要与Word系统一致。开发平台为Linux系统,使用C语言等。约束与限制需求规格说明也称需求规约,是需求工程的最终产物。需求规格说明应该精确的描述系统必须提供的功能和非功能,以及所要考虑的约束条

6、件和限制。需求规格说明完整性:每一项需求都必须将所要实现的功能描述清楚,以使开发人员获得设计和实现这些功能所需的所有必要信息。正确性:每一项需求都必须准确地陈述其要开发的功能。做出正确判断的参考是需求的来源,如用户或高层的系统需求规格说明。若软件需求与对应的系统需求相抵触则是不正确的。。可行性:每一项需求都必须是在已知系统和环境的权能和限制范围内可以实施的。需求说明的特征必要性:每一项需求都应把客户真正所需要的和最终系统所需遵从的标准记录下来。划分优先级:给每项需求、特性或使用实例分配一个实施优先级以指明它在特定

7、产品中所占的分量。无二义性:对所有需求说明的读者都只能有一个明确统一的解释,由于自然语言极易导致二义性,所以尽量把每项需求用简洁明了的用户性的语言表达出来。可验证性:检查每项需求是否能通过设计测试用例或其它的验证方法,如用演示、检测等来确定产品是否确实按需求实现了。完整性:不能遗漏任何必要的需求信息一致性:一致性是指与其它软件需求或高层需求不相矛盾可修改性:在必要时或为维护每一需求变更历史记录时,应该修订SRS可跟踪性:应能在每项软件需求与它的根源和设计元素、源代码、测试用例之间建立起链接需求规格说明的特征Ala

8、nDavis:直到(但不包括)把软件分解为实际架构构件之前的所有活动BrayI.K.:对问题域及需求做调查研究和描述,设计满足那些需求的解系统的特性,并用文档给予说明需求工程是应用工程化的方法、技术和规格来开发和管理软件的需求。目标:获取高质量的软件与传统的需求分析概念相比,需求工程突出了工程化的原则,强调以系统化、条理化、可重复化的方法和技术进行与软件需求相关的活动。需

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

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

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