北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第四章 软件需求分析

③共京宽大学 BEDING UNIVERSITY OF POSTS AND TELECOMMUNICATIONS 软件工程模型与方法 TSEG Models methods of sE Telecommunications Software Engineering Grou 第四章软件需求分析 肖丁diao(@bupt.edu.cn 通软件中心 ⊙2008 BUPTTSEC三
© 2008 BUPT TSEG 软件工程模型与方法 Models & Methods of SE 第四章 软件需求分析 肖丁 dxiao@bupt.edu.cn

共京部電大学 引言 ◆为何要进行软件的需求分析? ◆软件的需求分析处于软件生命周期的那个阶段? 起到什么作用? ◆怎样才能做好软件需求分析? ◆软件需求分析的过程和步骤是什么? ◆软件需求分析的最终结果是什么? ⊙2008 BUPT TSEG 北京邮电大学通信软件工程中心
© 2008 BUPT TSEG 北京邮电大学 通信软件工程中心 2 引言 ◆ 为何要进行软件的需求分析? ◆ 软件的需求分析处于软件生命周期的那个阶段? 起到什么作用? ◆ 怎样才能做好软件需求分析? ◆ 软件需求分析的过程和步骤是什么? ◆ 软件需求分析的最终结果是什么?

共京部電大学 4需求的定义 需求来源于用户的一些“需要”,这些“需要” 被分析、确认后形成完整的文档,该文档详细地 说明了产品“必须或应当”做什么 ◆ Boehm给出软件需求的定义:研究一种无二义性 的表达工具,它能为用户和软件人员双方都接受 ,并能够把“需求”严格地、形式地表达出来 需求、设计、编程、测试四者究竟哪个环节最 重要?” 首先,每个环节都是很重要,任何一个环节出现问题 ,都会导致软件的质量问题 但是,从管理的角度来看,需求是软件产品的起源, 因而是最重要的一个环节 ⊙2008 BUPT TSEG 北京邮电大学通信软件工程中心
© 2008 BUPT TSEG 北京邮电大学 通信软件工程中心 3 4.1 需求的定义 ◆ 需求来源于用户的一些“需要”,这些“需要” 被分析、确认后形成完整的文档,该文档详细地 说明了产品“必须或应当”做什么 。 ◆ Boehm 给出软件需求的定义:研究一种无二义性 的表达工具,它能为用户和软件人员双方都接受 ,并能够把“需求”严格地、形式地表达出来。 ◆ “需求、设计、编程、测试四者究竟哪个环节最 重要?” ➢ 首先,每个环节都是很重要,任何一个环节出现问题 ,都会导致软件的质量问题。 ➢ 但是,从管理的角度来看,需求是软件产品的起源, 因而是最重要的一个环节

共京部電大学 42一个需求分析的案例 某大型的电信设备供应商,案例中涉及6个 部门A,B,C,D,E和F,它们之间的关系如下 图所示: B:核心平台研发机构 D销售机构 A:增值业务研发机构 C:项目管理机构 E:网管软件承包商 年前,B研制了一种数据接入服务器的原型。B对A讲:“我 们的接入服务器前途很好,请你们帮助开发网管软件(属于增 值业务范畴),大家合作把产品做好,一起发财。” D对B和A讲:“你们把接入服务器和网管软件做好,我们负责 卖,挣了钱大家一起分。” ⊙2008 BUPT TSEG 北京邮电大学通信软件工程中心
© 2008 BUPT TSEG 北京邮电大学 通信软件工程中心 4 4.2 一个需求分析的案例 ◆ 某大型的电信设备供应商,案例中涉及6个 部门A,B,C,D,E和F,它们之间的关系如下 图所示: F 客 户 E:网管软件承包商 D 销 售 机 构 A:增值业务研发机构 C:项目管理机构 B:核心平台研发机构 一年前,B研制了一种数据接入服务器的原型。B对A讲:“我 们的接入服务器前途很好,请你们帮助开发网管软件(属于增 值业务范畴),大家合作把产品做好,一起发财。” D对B和A讲:“你们把接入服务器和网管软件做好,我们负责 卖,挣了钱大家一起分

共京部電大学 42一个需求分析的案例 A觉得机会难得,于是向C申请立项。 ◆立项后,A把项目外包给专业做网管软件的公司E,期望半年内完成。 ◆由于接入服务器是B的,于是A和就派开发人员到B处搞需求分析。 ◆B的接入服务器并不成熟,老在变,三方折腾了好久,最终E用了一年 时间把接入服务器的网管软件做出来了。 ◆E把网管软件交付给A,A付清了E的开发费用,再把网管软件交付给 D,D再卖给客户F(某地电信局)。 ◆F对D讲:“你们的网管软件不是我们想要的东西,等你们把软件改好 后我们再付钱。” ◆D赶紧对A讲:“兄弟阿,货已经出手了,但是不对路,请赶紧把它 改好,不然大家都没钱赚。” ◆A很愤怒,怨天不公:“我们辛苦了一年,又花了很多钱,可是产品 做完了却没人要,岂有此理!” ⊙2008 BUPT TSEG 北京邮电大学通信软件工程中心 5
© 2008 BUPT TSEG 北京邮电大学 通信软件工程中心 5 4.2 一个需求分析的案例 ◆ A觉得机会难得,于是向C申请立项。 ◆ 立项后,A把项目外包给专业做网管软件的公司E,期望半年内完成。 ◆ 由于接入服务器是B的,于是A和E就派开发人员到B处搞需求分析。 ◆ B的接入服务器并不成熟,老在变,三方折腾了好久,最终E用了一年 时间把接入服务器的网管软件做出来了。 ◆ E把网管软件交付给A,A付清了E的开发费用,再把网管软件交付给 D,D再卖给客户F(某地电信局)。 ◆ F对D讲:“你们的网管软件不是我们想要的东西,等你们把软件改好 后我们再付钱。” ◆ D赶紧对A讲:“兄弟阿,货已经出手了,但是不对路,请赶紧把它 改好,不然大家都没钱赚。” ◆ A很愤怒,怨天不公:“我们辛苦了一年,又花了很多钱,可是产品 做完了却没人要,岂有此理!

共京部電大学 42一个需求分析的案例 祸不单行的是,C来找A的麻烦:“你们的项目延期半年多了,经费 也用光了,请尽快结束项目。” A的那位项目经理为此每天愁眉苦脸,他的上司请来几位参谋商量对 策,设法把事情搞定。 大家挖空心思只想出一个馊主意:既然套子是B下的,那么就把套子 还给B。要设法把“那么好”的网管产品转让给B,只要B能给我们成 本费,以后就跟B拜拜 这个案例的问题根源在于进行软件开发之前没有搞清楚网 管软件的需求,这都是B,A,E闭门造车惹的祸。 最可悲的是,相关责任人关心的是如何把事情“完成”, 而不是深刻了解用户的具体需求。 这种类似的事情在软件开发行业中经常发生而且还会继续 发生,最主要的是每发生一次就损失大量的人力和物力。 ⊙2008 BUPT TSEG 北京邮电大学通信软件工程中心
© 2008 BUPT TSEG 北京邮电大学 通信软件工程中心 6 4.2 一个需求分析的案例 ◆ 祸不单行的是,C来找A的麻烦:“你们的项目延期半年多了,经费 也用光了,请尽快结束项目。” ◆ A的那位项目经理为此每天愁眉苦脸,他的上司请来几位参谋商量对 策,设法把事情搞定。 ◆ 大家挖空心思只想出一个馊主意:既然套子是B下的,那么就把套子 还给B。要设法把“那么好”的网管产品转让给B,只要B能给我们成 本费,以后就跟B拜拜。 ◆ 这个案例的问题根源在于进行软件开发之前没有搞清楚网 管软件的需求,这都是B,A,E闭门造车惹的祸。 ◆ 最可悲的是,相关责任人关心的是如何把事情“完成”, 而不是深刻了解用户的具体需求。 ◆ 这种类似的事情在软件开发行业中经常发生而且还会继续 发生,最主要的是每发生一次就损失大量的人力和物力

共京部電大学 43需求分析的必要性 需求分析是一项必须的软件工程活动。它 在系统需求分析和软件设计之间起到桥梁 的作用: 它使得软件开发人员在系统分析的基础上深入描述软 件的功能和性能、指明软件和其他系统元素的接口, 建立软件必须满足的约束条件。 它允许软件开发人员对关键问题进行细化,并构建相 应的分析模型:数据、功能和行为模型。 分析模型成为设计模型的基础,需求规格说明书也为 软件测试人员和用户提供了软件质量评估的依据。 它能准确表达用户对系统的各项要求。 ⊙2008 BUPT TSEG 北京邮电大学通信软件工程中心
© 2008 BUPT TSEG 北京邮电大学 通信软件工程中心 7 4.3 需求分析的必要性 ◆ 需求分析是一项必须的软件工程活动。它 在系统需求分析和软件设计之间起到桥梁 的作用: ➢ 它使得软件开发人员在系统分析的基础上深入描述软 件的功能和性能、指明软件和其他系统元素的接口, 建立软件必须满足的约束条件。 ➢ 它允许软件开发人员对关键问题进行细化,并构建相 应的分析模型:数据、功能和行为模型。 ➢ 分析模型成为设计模型的基础,需求规格说明书也为 软件测试人员和用户提供了软件质量评估的依据。 ➢ 它能准确表达用户对系统的各项要求

3共家季44需求分析的对象、任务和目标 ◆软件需求分析的对象是用户要求 ◆其任务是要准确地定义新系统的目标。回答系统 必须“做什么”的问题并编制需求规格说明书 作为目标系统的参考,需求分析的任务就是借助 于(业务)系统的逻辑模型导出目标系统的逻辑 模型,解决目标系统的“做什么”的问题。 怎么做 模型化 抽象化做什么 解 当前系统) (物理模型)+(逻辑模型)一导需 出求 表 具体化 实例化 达 目标系统 物理模型 逻辑模型 求 ⊙2008 BUPT TSEG 北京邮电大学通信软件工程中心
© 2008 BUPT TSEG 北京邮电大学 通信软件工程中心 8 4.4 需求分析的对象、任务和目标 ◆ 软件需求分析的对象是用户要求。 ◆ 其任务是要准确地定义新系统的目标。回答系统 必须“做什么”的问题并编制需求规格说明书。 ◆ 作为目标系统的参考,需求分析的任务就是借助 于(业务)系统的逻辑模型导出目标系统的逻辑 模型,解决目标系统的“做什么”的问题

共京部電大学 4.5需求分析建模的原则 需求分析方法的一组操作性原则是 1.问题的信息域必须被表示和理解。 2.软件将完成的功能必须被定义。 3.软件的行为(作为外部事件的结果)必须被表示。 4.描述信息、功能和行为的模型必须被划分,使得可 以用层次的方式揭示细节 5.分析过程应该遵从自顶向下,逐层细化的原则。 组三元模型:第1条原则表示需要建立数据模 型,第2条和第3条原则表示需要建立功能和行为 模型。 ⊙2008 BUPT TSEG 北京邮电大学通信软件工程中心 9
© 2008 BUPT TSEG 北京邮电大学 通信软件工程中心 9 4.5 需求分析建模的原则 ◆ 需求分析方法的一组操作性原则是: 1. 问题的信息域必须被表示和理解。 2. 软件将完成的功能必须被定义。 3. 软件的行为(作为外部事件的结果)必须被表示。 4. 描述信息、功能和行为的模型必须被划分,使得可 以用层次的方式揭示细节。 5. 分析过程应该遵从自顶向下,逐层细化的原则。 ◆ 一组三元模型:第1条原则表示需要建立数据模 型,第2条和第3条原则表示需要建立功能和行为 模型

共京部電大学 4.6需求工程的指导性原则 首先要正确地理解问题,再建立分析模型。 记录每个需求的起源及原因,保证需求的可回溯性。 开发一个能使用户能够了解人机交互过程的原型。因为 对软件质量的感觉经常基于对界面“友好性”的感觉 使用多个需求视图。建立数据模型、功能模型和行为模 型,为软件工程师提供三种不同的视图,增加识别不 给需求赋予优先级。紧张的开发时间要求尽量避免一次 性实现每个软件需求,应采用迭代增量的开发模型。 努力删除歧义性。因为大多数需求以自然语言描述,存 在歧义性的可能性,正式的技术评审是发现并删除歧义 性的一种有效方法 ⊙2008 BUPT TSEG 北京邮电大学通信软件工程中心 10
© 2008 BUPT TSEG 北京邮电大学 通信软件工程中心 10 4.6需求工程的指导性原则 ◆ 首先要正确地理解问题,再建立分析模型。 ◆ 记录每个需求的起源及原因,保证需求的可回溯性。 ◆ 开发一个能使用户能够了解人机交互过程的原型。因为 对软件质量的感觉经常基于对界面“友好性”的感觉。 ◆ 使用多个需求视图。建立数据模型、功能模型和行为模 型,为软件工程师提供三种不同的视图,增加识别不一 致性的基础。 ◆ 给需求赋予优先级。紧张的开发时间要求尽量避免一次 性实现每个软件需求,应采用迭代增量的开发模型。 ◆ 努力删除歧义性。因为大多数需求以自然语言描述,存 在歧义性的可能性,正式的技术评审是发现并删除歧义 性的一种有效方法
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第三章 系统的需求分析及可行性分析.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第二章 软件生命周期模型.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第一章 软件工程概述(肖丁).ppt
- 《计算机英语》参考译文和练习答案电子书.doc
- 《SQL?Server2005数据库》第9章 触发器的操作与管理.ppt
- 《SQL?Server2005数据库》第8章 存储过程的操作与管理.ppt
- 《SQL?Server2005数据库》第7章 视图的操作与管理.ppt
- 《SQL?Server2005数据库》第6章 查询技术.ppt
- 《SQL?Server2005数据库》第5章 表的操作与管理.ppt
- 《SQL?Server2005数据库》第4章 数据库管理.ppt
- 《SQL?Server2005数据库》第3章 Transact-SQL语言.ppt
- 《SQL?Server2005数据库》第2章 服务器管理.ppt
- 《SQL?Server2005数据库》第1章 SQL Server 2005关系数据库简介.ppt
- 《SQL?Server2005数据库》第13章 报表服务管理.ppt
- 《SQL?Server2005数据库》第12章 代理服务.ppt
- 《SQL?Server2005数据库》第11章 SQL Server 2005 集成服务.ppt
- 《SQL?Server2005数据库》第10章 SQL SERVER权限管理.ppt
- 《JSP动态网站开发与实例》第3版 第20章 电子报.ppt
- 《JSP动态网站开发与实例》第3版 第19章 留言板.ppt
- 《JSP动态网站开发与实例》第3版 第18章 用户登录.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第五章 结构化需求分析.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第六章 软件设计.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第七章 结构化软件设计.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第八章 面向对象基础.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第九章 面向对象分析.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第十章 面向对象设计.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第十一章 软件实现.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第十二章 软件测试.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第十三章 软件维护、软件项目管理、软件能力成熟度模型.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第十三章 软件维护(13.1-13.5).ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(PPT课件讲稿)第十四章 软件项目管理、第十五章 软件过程管理.ppt
- 《面向对象的分析与设计》讲义1.ppt
- 《面向对象的分析与设计》讲义2.ppt
- 北京邮电大学:《软件工程模型与方法 Models & Methods of Software Engineering》课程教学资源(期末复习提纲).doc
- 上海交通大学:《计算机病毒原理》课程教学资源(PPT课件讲稿)第一章 计算机病毒概述.ppt
- 上海交通大学:《计算机病毒原理》课程教学资源(PPT课件讲稿)第七章 Linux病毒技术.ppt
- 上海交通大学:《计算机病毒原理》课程教学资源(PPT课件讲稿)第三章 计算机病毒结构分析(1/2).ppt
- 上海交通大学:《计算机病毒原理》课程教学资源(PPT课件讲稿)第三章 计算机病毒结构分析(2/2).ppt
- 上海交通大学:《计算机病毒原理》课程教学资源(PPT课件讲稿)第九章 计算机病毒查杀方法.ppt
- 上海交通大学:《计算机病毒原理》课程教学资源(PPT课件讲稿)第二章 计算机病毒理论模型.ppt