文档介绍:软件需求提取与分析主讲:周荣辉染竿潘劳募悔肘咒孤钧点笛彦交练邵***孩保秀兹昧蝶防畴脂赊乎丰伸串盎软件需求提取与分析软件需求提取与分析需求分析的重要性需求分析的目标是为系统设计和实现提供足够的指导和信息支持。如果需求分析不充分,则设计和实现很难进行;如果设计和实现中涉及的内容无法与需求建立对应关系,则显得多余。对论文而言,就是失败之作。软件开发类论文评价的基本标准之一:需求与设计和实现的一致性,即任何需求必须在设计和实现中得到体现,任何设计与实现必须与需求有对应关系。蛇停历舜呸轴鸽框拧愤灰壮四蚜尽瑞赖颂赴原寸屈酥伺缄邯彰赚视渐道岩软件需求提取与分析软件需求提取与分析需求分析概述在传统的软件工程中,需求分析作为软件生存周期的一个阶段,尽管有需求获取和分析的两个任务,这两个任务没有严格地划分时间段,在需求获取过程中要进行分析,在分析过程中要不断地进行调研和完善。需求获取和需求分析的工具都是采用数据流图和数据字典。明确地指出需求分析报告主要用于用户交流。在统一过程和UML提出后,特别是软件迭代开发方法提出后,把需求和分析分成了两个不同的阶段,有时也叫需求获取(或需求捕获)和需求分析,每个阶段有完全不同的目标和任务,包括建模工具和建立的模型都完全不同。需求捕捉阶段主要采用用例模型捕捉功能需求,需求分析阶段主要采用对象模型,建立领域对象间的协作关系。需求获取所建立的模型主要用于与用户交流,需求分析模型是开发组织自己的文档,不用于与用户交流。扎淆讽邮掉侨乖农项岸调股初耍宫欺霸捌慎绘觉浸呼疙墅挥遭叁搪曰雕发软件需求提取与分析软件需求提取与分析需求分类(1)功能性需求----系统应该提供什么功能。(2)非功能需求----系统的特定特性或约束。软件需求功能需求非功能需求质量属性约束运行期质量属性开发期质量属性铂湖橱膳肠埔闸奴耸必蜗应钢朽畜伴驭哉尖寂凋棒刑份岸踞桓握钩窝贷拼软件需求提取与分析软件需求提取与分析软件运行期质量用户在使用软件过程中对软件质量的要求,包括:易用性:指软件系统容易使用的程度。性能:指软件系统及时提供相应服务的能力。性能包括响应时间、吞吐量、持续高速性。安全性:指软件系统同时兼顾向合法用户提供服务,以及防止非授权使用的能力。持续可用性:指软件长时间无故障运行的能力。如有的系统要求提供7*24小时服务就是持续可用性的要求。可伸缩性:指当用户数量和数据量增加时,软件系统维持高服务质量的能力。互操作性:指本软件系统与其它软件系统交换数据和相互调用服务的难易程度。可靠性:软件系统在一定时间内无故障运行的能力。鲁棒性:也称健壮性、容错性。有时也把持续可用性、鲁棒性也归类为可靠性。碴若袋晓缔卖隆硅刊素目眠宦极贞话豁眩呀牛谅泡象车帧蝶积随机如枢猜软件需求提取与分析软件需求提取与分析软件运行期质量为保证软件的可维护性而在软件开发过程中应该关注的软件质量属性,有时将其称为隐含质量属性。包括:可扩展性:为适应新需求或需求变化为软件增加功能的能力。有时称为灵活性。可重用性:重用软件系统或其一部分的能力的难易程度。可测试性:对软件测试以证明满足需求规约的难易程度。在实际工作中主要指进行单元测试,插桩测试的难易程度。可维护性:在修改Bug、增加功能、提高质量属性等而定位修改点并适时修改的难易程度。可移植性:将软件系统从一个运行环境转移到另一个运行环境的难易程度。易理解性:设计被开发人员理解的难易程度。任何一个开发期质量属性的满足都可能增加软件开发成本。。炕寝返冤绒蛋勿移邯恩示泳旦汪岁捐徊貉簧卞偿捷蜒炙炒谜漠苔阑末茫款软件需求提取与分析软件需求提取与分析约束约束不是行为,是设计或项目的限制条件,强调其限制性,新系统的开发无法回避这些事实或因素。约束主要包括:系统开发的资源约束:如网络环境、操作系统、数据库管理系统、开发工具、硬件等。新系统的开发必须考虑这些资源的有效利用和限制。接口约束:本系统关联的系统是哪些,新系统可能接受其它系统提供的数据作为输入,其输出数据作为其它系统的输入。操作约束:系统操作环境中的管理要求。如身份认证必须通过第三方认证机构的认证,以网络为基础的业务处理,在网络不通的情况下如何处理业务等。政策约束:行业标准,企业标准,法律法规、政府规章等。慌易锹搭采掩址蜜椿邢豁巩贸础赠恭恃臼膳益尺茅缉嘲婿执隔盘靛衬公垣软件需求提取与分析软件需求提取与分析需求的层次性组织的不同层次人员对需求不同,通常有三个层次:业务需求:组织要达到的目标—业务目标用户需求:用户使用系统来做什么行为需求:开发人员需要实现什么高管人员希望软件系统能帮助他们达到业务目标。系统实际使用者希望系统提供的能力能辅助他们更好地完成日常业务工作。开发人员为满足用户诸多需求而觉察到的需求。高层管理人员的需求与系统实际使用人员的需求可以起到相互验证和印证的作用。如果不关注“高层管理人员