欢迎来到天天文库
浏览记录
ID:39724502
大小:268.19 KB
页数:29页
时间:2019-07-10
《《软件需求工程》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章软件需求验证周立新博士北京大学软件与微电子学院课程提纲软件需求基本理论和概念软件需求工程过程软件需求获取软件需求分析软件需求规格说明软件需求验证软件需求管理软件需求实现软件需求工程新进展软件需求开发与需求管理工具内容提要软件的质量属性分析需求质量验证需求评审需求测试1.软件的质量属性分析软件质量属性(或质量因素)的特性是系统非功能(也叫非行为)部分的需求。这些特性包括:产品的易用程度如何,执行速度如何,可靠性如何,当发生异常情况时,系统如何处理等。质量属性区分:一种属性分类的方法是把在运行时可
2、识别的特性与那些不可识别的特性区分开;另一种方法是把对用户很重要的可见特性与对开发者和维护者很重要的不可见特性区分开。那些对开发者具有重要意义的属性使产品易于更改、验证,并易于移植到新的平台上,从而可以间接地满足客户的需要。软件质量属性列表对用户最重要的属性:对开发者最重要的属性:可用性(availability)可维护性(maintainability)高效性(efficiency)可移植性(portability)灵活性(flexibility)可重用性(reusability)完整性(inte
3、grity)可测试性(testability)互操作性(interoperability)可靠性(reliability)健壮性(robustness)Relationshipsamongselectedqualityattributes2.需求质量验证需求验证是需求开发的第四部分(其余三个为获取、分析和编写规格说明),所包括的活动是为了确定以下几方面的内容:软件需求规格说明正确描述了预期的系统行为和特征。从系统需求或其它来源中得到软件需求。需求是完整的和高质量的。所有对需求的看法是一致的。需求为继
4、续进行产品设计、构造和测试提供了足够的基础。需求验证确保了需求符合需求陈述(requirementstatement)的良好特征(完整的、正确的、灵活的、必要的、具有优先级的、无二义性及可验证的)并且符合需求规格说明的良好特性(完整的、一致的、易修改的、可跟踪的)。当然,你只能验证那些已编写成文档的需求,而那些存在于用户或开发者思维中的没有表露的、含蓄的需求则不予验证。需求质量验证在收集需求并编写成需求文档后,你所进行的需求验证并不仅仅是一个独立的阶段。一些验证活动,例如对渐增型软件需求规格说明的反
5、复评审,将贯穿着反复获取需求、分析和编写规格说明的整个过程。其它的验证步骤,例如软件需求规格说明的正式审查,是在正式确定软件需求规格说明基线之前对需求分析质量进行的最后一次有用的质量过滤。当你的项目计划或实际工作中的独立任务破坏了结构性时,就要结合进行需求验证活动,并且为随后出现的返工预先安排一段时间,这通常会在质量控制活动之后进行。需求质量验证有时,项目的参与者不愿意在评审和测试软件需求规格说明上花费时间。虽然在计划安排中插入一段时间来提高需求质量似乎相应地把交付日期延迟了一段时间,但是这种想法是
6、建立在假设验证需求上的投资将不产生效果的基础上的。实际上,这种投资可以减少返工并加快系统测试,从而真正缩短了开发时间。需求质量验证ValidationAnswerthequestion“DoIbuildtherightthing?”Requirementsvalidationisdoneeitheragainstreal-worlduserneedsorhighlevelrequirementsspecificationsVerificationAnswerthequestion“DoIbuildw
7、hatIwasgoingtobuild?”Requirementsverificationisdonetypicallyagainstlowerlevelrequirements,designand/ortestprocedures需求评审由一些非软件开发人员进行产品检查以发现产品所存在的问题,这就是技术评审。需求文档的评审是一项精益求精的技术,它可以发现那些二义性的或不确定的需求,那些由于定义不清而不能作为设计基础的需求,还有那些实际上是设计规格说明的所谓的“需求”。需求评审也为风险承担者们提供了
8、在特定问题上达成共识的方法。需求评审方法非正式评审的方法包括把工作产品分发给许多其它的开发人员粗略看一看和走过场似地检查一遍(walkthrough)。正式技术评审的最好类型叫作审查(Inspection)。正式评审内容需要记录在案,它包括确定材料、评审员、评审小组对产品是否完整或是否需要进一步工作的判定,以及对所发现的错误和所提出的问题的总结。正式评审小组的成员对评审的质量负责,而开发者则最终对他们所开发的产品的质量负责。如果你对提高软件的质量持有认真的态度,那么就
此文档下载收益归作者所有