欢迎来到天天文库
浏览记录
ID:19292151
大小:56.50 KB
页数:32页
时间:2018-09-30
《软件工程教学 第四章 需求分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、软件需求需求工程分析建模需求管理本章小结学习目标 本章介绍需求分析的意义概念和方法了解结构化分析方法和需求管理的关键活动要求学会运用实体关系图数据流图和状态控制图进行结构化分析建模能够编写软件需求规格说明学习方法 正确理解需求工程涉及的基本概念结合具体实例运用结构化分析技术从而达到理论学习及在实际项目中应用的目的难重点 本章的学习重点在于理解软件需求的概念和重要性熟悉需求开发和需求管理的基本思想和主要活动掌握结构化的分析方法难点是怎样在实际的软件项目中灵活运用这些思想
2、和方法课前思考软件需求存在什么问题什么是软件需求什么是需求工程常见的需求分析方法是什么需求分析的结果可以验证吗需求规格说明有什么质量要求本节知识点软件需求的定义需求的层次导致需求缺陷的原因 随着计算机技术的飞速发展软件已经成为人们生活中不可缺少的一部分人们在使用软件的过程中常常会抱怨它无法执行某些基本操作但对于软件开发人员而言用户不断提出新的要求是一件多么烦人的事 其实在软件开发过程中遇到的许多问题都是由于收集编写协商修改软件需求过程中的失误带来的诸如信息收集不全功能不明确交流不充分文档不完善需求发生变化等可以这样说软件项目
3、中百分之四十至百分之六十的问题都是在需求分析阶段埋下的"祸根" 开发软件系统最为困难的部分就是准确说明开发什么最为困难的概念性工作便是编写详细的技术需求包括所有面向用户面向机器和其它软件系统的接口IEEE软件工程标准词汇表将需求定义为 1用户解决问题或达到目标所需的条件或能力 2系统或系统部件要满足合同标准规范或其它正式规定文档所需具有的条件或能力 3一种反映上面1或2所描述的条件或能力的文档说明下面列出其他几种关于需求的定义需求是用户所需要的并能触发一个程序或系统开发工作的说明需求是从系统外部能发现系统所具有的满足于用户
4、的特点功能及属性等需求是指明必须实现什么的规格说明它描述了系统的行为特性或属性是在开发过程中对系统的约束 软件需求包括四个不同的层次即业务需求用户需求和功能需求另外还有非功能需求 软件需求各组成部分之间的关系如下图所示业务需求 反映了组织机构或客户对系统或产品高层次的目标要求它们在项目视图与范围文档中予以说明用户需求 描述了用户使用产品必须要完成的任务可以在用例模型或方案脚本中予以说明功能需求 定义了开发人员必须实现的软件功能使得用户能完成他们的任务从而满足了业务需求非功能需求 是从各个角度对系统的约束和限制反
5、映了应用对软件系统质量和特性的额外要求 非功能需求包括过程需求产品需求和外部需求三类其中过程需求有交付实现方法和标准等需求产品需求包含性能可用性实用性可靠性可移植性安全保密性容错性等方面的需求外部需求有法规成本操作性等需求需求工程中的缺陷将给项目的成功带来极大风险导致缺陷的原因主要包括以下方面缺乏足够的用户参与 客户经常不明白为什么收集需求和确保需求质量需花费那么多功夫开发人员可能也不重视用户的参与究其原因一是因为与用户合作不如编写代码有意思二是因为开发人员觉得已经明白用户的需求了在某些情况下与实际使用产品的用户直接接触很困难
6、而客户也不太明白自己的真正需求然而在项目的早期让具有代表性的用户直接参与到开发队伍中并一同经历整个开发过程很重要用户需求不断增加 在开发过程中用户需求经常发生变化但是不断的变更会使其整体结构越来越乱整个程序也难以理解和维护如果要减少需求变更的影响范围就必须在项目的开始对项目视图范围目标约束限制和成功标准给予明确说明并将此说明作为评价需求变更和新特性的参照框架需求模棱两可 模棱两可是需求规格说明中最严重的问题它意味着不同的人对需求说明产生了不同的理解或者是同一个人能用不止一个方式来解释某项需求说明模棱两可的需求带来的后果便是返工
7、--重做一些你认为已做好的事情返工会耗费开发总费用的40而70~85的重做是由于需求方面的错误引起的添加不必要的特性 有时候开发人员力图增加一些"用户欣赏"但需求规格说明中并未涉及的新功能然而常常是用户并不认为这些功能性很有用开发人员应当为客户构思方案并为他们提供一些具有创新意识的思路具体提供哪些功能要在客户的需要和允许时限内的技术可行性之间求得平衡规格说明过于简单 客户往往不明白需求分析的重要性只是提供一份十分简略的规格说明仅涉及产品概念上的内容然后让开发人员在项目进展中去完善从而导致开发人员先建立产品结构再完成需求说明忽略
8、了用户分类 大多数产品是由不同的人使用其不同的特性使用频繁程度也有所差异使用者受教育程度和经验水平也不尽相同如果你不能在项目早期就针对所有这些主要用户进行分类的话必然导致有的用户对产品感到失望总体来说导致需求缺陷的原因主要体现在三个方面需求的沟通
此文档下载收益归作者所有