软件需求工程简介.ppt
《软件需求工程简介.ppt》由会员分享,可在线阅读,更多相关《软件需求工程简介.ppt(44页珍藏版)》请在三一办公上搜索。
1、1,Software Requirements Engineering软件需求工程,郑州大学软件学院 软件工程专业必修课程,授课对象:本科3年级授课教师:徐强,2,关于本课程,授课对象:计算机科学和软件工程专业的高年级本科生及研究生。授课学时:每周4学时,共9-10周。课程目的:为工业界培养需求工程师,为学术界准备从事相关研究的学者。,3,授课目标:通过这门课达到掌握如下的知识和技能了解需求工程在软件工程和系统工程中的重要地位了解需求工程的性质了解和应用需求工程的概念,方法,过程和工具理解掌握需求开发各阶段的技术理解掌握需求管理的技术学习需求工程领域当前最新研究成果和实践,关于本课程,4,软件
2、需求工程概述软件需求过程需求获取需求分析需求规格说明需求验证需求管理需求开发向设计规划的转化,课程提纲,软件需求工程简介,了解软件需求开发中使用的一些关键名词。警惕在软件项目中可能出现的与需求相关的一些问题。知道优秀的需求规格说明应该具有的特点。明白需求开发与需求管理之间的区别。,5,6,软件开发的目标,软件开发的目标,简单而言,就是满足用户的需求。,软件需求的定义,软件产业存在的一个问题就是缺乏统一定义的名词术语来描述我们的工作。客户所定义的“需求”对开发者似乎是一个较高层次的产品概念。而开发人员所说的“需求”对用户来说又像是详细设计了。实际上,软件需求包含着多个层次,不同层次是从不同角度与
3、不同程度反映着细节问题。,7,软件需求的定义,用户所需要的并能触发一个程序或系统开发工作的说明。从系统外部能发现系统所具有的满足于用户的特点、功能、属性等。指明必须实现什么样的规格说明。它描述了系统的行为、特性或属性,是在开发过程中对系统的约束。,8,软件需求的定义,IEEE软件工程标准词汇表(1997年)中定义需求为:用户解决问题或达到目标所需的条件或权能(Capability)。系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或权能。一种反映上面或所描述的条件或权能的文档说明。,9,10,需求的层次,软件需求包括三个不同的层次。业务需求 用户需求 功能需求(包括非功能需
4、求),11,需求的层次,业务需求(business requirement)反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图与范围文档中予以说明。,12,需求的层次,用户需求(user requirement)用户需求文档描述了用户使用产品必须要完成的任务,这在使用实例文档或方案脚本说明中予以说明。,13,需求的层次,功能需求(functional requirement)定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。,14,需求关系图,软件需求各组成部分之间的关系,15,术语的定义,软件需求规格说明(software requirements
5、 specification简称“SRS”)在软件需求规格说明中说明的功能需求充分描述了软件系统所应具有的外部行为。软件需求规格说明在开发、测试、质量保证、项目管理以及相关项目功能中都起了重要的作用。,16,术语的定义,非功能需求作为功能需求的补充,描述了系统展现给用户的行为和执行的操作等。它包括产品必须遵从的标准、规范和合约;外部界面的具体细节;性能要求;设计或实现的约束条件及质量属性。,17,术语的定义,约束条件指对开发人员在软件产品设计和构造上所具有的选择限制。,质量属性通过多种角度对产品的特点进行描述,从而反映产品功能。多角度描述产品对用户和开发人员都极为重要。,18,用例,字处理程序
6、为例 业务需求:“用户能有效地纠正文档中的拼写错误”。用户需求:“找出文档中的拼写错误并通过一个提供的替换项列表来供选择替换拼错的词”。功能需求:找到并高亮度提示错词的操作。显示提供替换词的对话框实现整个文档范围的替换,19,什么是需求,需求的基本概念 宽泛地讲,需求来源于用户的一些“需要”,这些“需要”被分析、确认后形成完整的文档,该文档详细说明了产品“必须或应当”做什么。需求描述必须给出为什么需要这样一个系统,通常,需求描述系统要做什么,而不是怎么做。“为什么”和“做什么”是指系统的设计目的,是置身系统外部,对应用领域性质的描述。“怎么做”是指系统的内部结构和行为。,20,需求的重要性,在
7、软件工程项目中,所有的利益相关者(stakeholder)都感兴趣的就是需求分析阶段。利益相关者包括客户、用户、业务或需求分析员、开发人员、测试人员、用户文档编写者、项目管理者和客户管理者。需求分析奠定了软件工程和项目管理的基础。,21,需求的重要性,需求的重要性:开发软件系统最困难的部分就是准确说明开发什么。最困难的概念性工作是编写出详细的需求,包括所有面向用户、面向机器和其它软件系统的接口。此工作一旦做错,将会给系统带来极大的损害,并且以后对它修改也极为困难。,22,需求是产品的根源,需求工作的优劣对产品影响最大。就像一条河流,如果源头被污染了,那么整条河流也就被污染了。国内软件业的痼疾:
8、人们并不清楚究竟该做什么,但却一直忙碌不停地开发。,需求的重要性,23,需求错误的代价,在生命周期的不同阶段修复缺陷的相对成本,24,需求缺陷造成的成本增加,重新进行需求规格说明重新设计重新编码重新测试改变订单告诉用户将以一个修正后的版本来替代有缺陷的版本。纠正活动消除由于不准确的特定系统的错误造成的危害,可能涉及到赔偿客户损失。报废包括对于已经完成的代码、设计和测试,当发现它们是根据不正确的需求进行的时候,这些工作成果不得不被丢弃。收回有缺陷的软件产品以及相关的用户手册。产品赔偿或保修的成本。重新安装新版本的成本。重新建档的成本。,25,需求风险,无足够用户参与。用户需求的不断扩展。模棱两可
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 需求 工程 简介
链接地址:https://www.31ppt.com/p-6611035.html