- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程 Chap3_软件需求分析
高 级 软件工程 陈宁江 chnj@gxu.edu.cn 本章内容 需求工程概述 需求获取 需求分析和建模 需求验证与管理 什么是需求(Requirement) ? 需求 用户对目标软件系统在功能、行为、性能、设计约束等方面的期望 IEEE的定义(1997年) 用户解决问题或达到目标所需的条件或能力 系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或能力 反映以上两条的文档说明 软件需求分析的目标: 调查分析,准确理解用户的要求 撰写需求,将用户的非形式的要求转化为完整的、形式的规格说明 需求的类型 业务需求(business requirement) 客户对系统的高层次的目标要求。在项目视图与范围文档中予以说明 用户需求(user requirement) 用户使用产品必须要完成的任务 功能需求(functional requirement) 开发人员必须实现的软件功能,使得用户能完成他们的任务,满足业务需求 非功能需求(non-functional requirement ) 对系统提供的服务或者功能提出的约束,包括时间、开发过程、软件质量、标准等约束 一个例子 从不同的角度来看,需求具有不同的层次,即业务需求、用户需求、功能需求和非功能需求等 例子:字处理程序 之 “ 拼写检查器” 业务需求:“用户能有效地纠正文档中的拼写错误” 用户需求:“找出文档中的拼写错误并通过一个提供的替换项列表来供选择替换拼错的词” 功能需求:“找到并高亮度提示错词的操作”;“显示提供替换词的对话框”;“实现整个文档范围的替换” 非功能需求:“替换操作执行速度快”;“异常出现概率小” 功能需求 对于功能性的系统需求,应需要详细描述系统中的操作功能、输入、输出、异常等 功能需求的描述应做到: 严密性 全面性 一致性 非功能需求 与软件系统的总体特性相关,并作用于整个系统;与软件系统的开发过程有关 非功能需求的度量 软件需求各组成部分之间的关系 软件需求的作用 软件开发的基础和前提 只有在明确了软件需求之后才能开展有针对性的软件开发工作 没有需求无法进行设计和编码 制定软件开发计划的基础 只有知道你想做什么,才能知道需要多少工作量,才能制定计划 最终目标软件系统验收的标准 只有知道你想做什么,才能知道你最终是否做好了 没有定义明确的需求,就不知道最终基于什么进行验收 需求分析的重要性:例子说明 需求分析的重要性:事实支撑(1/4) 软件生命周期中,一个错误发现得越晚,修复错误的费用越高 需求分析的重要性:事实支撑(2/4) 许多错误是潜伏的,并且在错误产生后很长一段时间才被检查出来 在需求过程中会产生很多错误 DeMarco研究报告:被检查出来的错误的56%产生的根源可以追溯到需求阶段。 需求分析的重要性:事实支撑(3/4) 在需求阶段,代表性的错误为疏忽、不一致和二义性 美国海军研究实验室对海军A-7E飞机上的飞行操作程序进行实地测试,得出的研究数据表明:A-7E项目中77%的需求错误特点是不明确:疏忽、不一致和二义性。 按错误类型对这些错误分布进行分析的结果是: 49%不正确的事实,31%疏忽,l 3%不一致,5%二义性 需求分析的重要性:事实支撑(4/4) 需求错误是可以被检查出来的 需求分析的重要性——推论 在需求过程中会产生很多错误 许多错误并没有在早期被发现 这样的错误是能够在产生的初期被检查出来的 如果没有及时检查出来这些错误,软件费用会直线上升 获取软件需求的复杂性 系统复杂和庞大 如何将软件需求得到?描述清楚? 片面, 不完全 如何保证得到了所有的软件需求? 模糊, 不准确 如何保证把需求说清楚和准确? 不一致, 歧义 如何保证所描述的需求是不矛盾的? 及时性 当需求变更时,如何让相关人员都知道需求已经变更? 软件需求变动带来的问题 波动性 放大性 需求分析与程序分析的不同 需求分析常见问题 误解 交流障碍 缺乏共同语言 “完整性”问题 需求永远不会稳定 用户意见不统一 错误要求 认识混淆 案例分析:中源公司的电信软件项目 思考: 为什么需求工作出现了问题? 在需求出现变更时怎么办? 如何更好地进行需求管理?下一步可采取什么措施? 需求问题的解决方法和手段 技术层面 需求分析方法、技术和工具 方法:数据流、面向对象 技术:抽象、建模、多视点、原型、…… 工具:UML,Rose,Word,Excel,RequisitePro 管理层面 对需求分析中的人、活动和产品进行管理 形成新的研究领域:需求工程 需求工程(Requirement Engineering ) 软件工程的子领域。应用已证实有效的技术、方法进行需求分析,确定客户需求,帮助分析人员理解问题并定义和管理目标系统的需求 软件需
您可能关注的文档
最近下载
- 园长研修总结(3篇).docx VIP
- 东证期货-商品基本面量化框架系列-二-:黄金择时因子及多周期合成.pdf VIP
- 2024年9月8日贵州省黔西南州州直遴选(事业单位考聘)笔试真题及答案解析.doc VIP
- 安徽省综合评标评审专家入库、续聘考试试题(含答案).docx VIP
- 第2章金属材料组织-4-清华大学-工程材料.ppt VIP
- 第2章金属材料组织-3-清华大学-工程材料.ppt VIP
- 2025政治理论时政热点知识试题库(含+答案).docx VIP
- 2025人民防空防护设备产品选型目录.docx VIP
- 第2章金属材料组织-1-清华大学-工程材料.ppt VIP
- Unit 4 Plants around us课件(63张PPT)三年级上册(2024版).pptx VIP
文档评论(0)