软件过程管理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.功能需求(functional requirement)定义了开发人员 必须实现的软件功能,使得用户能完成他们的任 务,从而满足了业务需求。
在软件需求规格说明书 (SRS)中说明的功能需
求充分描述了软件系统所应具有的外部行为。软
件需求规格说明在开发、测试、质量保证、项目
管理以及相关项目功能中都起了重要的作用。对
一个大型系统来说,软件功能需求也许只是系统
Байду номын сангаас
需求的一个子集,因为另外一些可能属于子系统
(或软件部件)。 chapter__4
11
作为功能需求的补充,软件需求规格说明 还应包括非功能需求,它描述了系统展现 给用户的行为和执行的操作等。它包括产 品必须遵从的标准、规范和合约;外部界 面的具体细节;性能要求;设计或实现的 约束条件及质量属性。所谓约束是指对开 发人员在软件产品设计和构造上的限制。 质量属性是通过多种角度对产品的特点进 行描述,从而反映产品功能。多角度描述 产品对用户和开发人员都极为重要。
chapter__4
3
镀金(gold plating)的定义
给予用户的东西要多于他们所要求的。
事实上,额外的特性、扩展的功能、 更好的组件以及其他等等,通常都不会 为项目增加什么价值。实际上,镀金常 常会增加项目的开支,因为这需要更多 的资源、更长的开发周期,还会增加重 新设计的风险、耽误项目的交付使用。
chapter__4
7
软件需求定义
软件需求
需求是指用户对软件的功能和性能的 要求,就是用户希望软件能做什么事 情,完成什么样的功能,达到什么性 能。
chapter__4
9
业务 需求
软件需求的层次
用户 需求
非功能性 需求
系统 需求
功能 需求
质量特 性
约束和 假设
软件需求规
格 chapter__4
chapter__4
12
以一个字处理程序为例来说明需求的不同 种类。
业务需求可能是:“用户能有效地纠正文档 中的拼写错误”,该产品的包装盒封面上可 能会标明这是个满足业务需求的拼写检查器。
用户需求可能是“找出文档中的拼写错误并
通过一个提供的替换项列表来供选择替换拼
错的词”。同时,该拼写检查器还有许多功
缺乏应用领域专家
Scale: 5 = Very Serious 3 = Serious 1 = No Serious
Source: Carnegie-Mellon University, Softcwhaaprteer_E_n4gineering Institute
平均值
4.5 4.3 4.2 4.1 4.1 3.9 3.8
例如:银行ATM系统 功能性需求:取、存、查、密码检验
chapter__4
14
非功能需求
许多非功能需求关心的是系统整体特性,而 不是个别的系统特性。因此非功能需求比功 能需求对系统更关键。一个功能需求没有满 足可能降低系统的能力,而一个非功能系统 需求没有满足则可能使整个系统无法使用。
例如:一个飞机系统不符合可靠性需求,它 将不会被批准飞行。若一个实时控制系统无 法满足其性能需求,控制功能可能根本无法 使用。
3.8 3.6 3.6
17
本章要点
一、软件需求定义 二、软件需求管理过程 三、需求建模的基本方法 四、案例分析
chapter__4
能需求,如找到并高亮度提示错词的操作;
显示提供替换词的对话框以及实现整个文档
范围的替换。
chapter__4
13
功能需求
功能需求:列举出被开发软件在职能上应做什么。 这是最主要的需求,规定开发人员必须在产品中 实现的软件功能,用户利用这些功能来完成任务, 满足业务需求。
通常功能性需求是: 产品功能的规格说明; 产品必须执行的动作; 源自于产品的基本目标
例如:银行ATM系统
非功能需求:响应时间,安全保密等
chapter__4
15
需求管理的重要性
chapter__4
16
项目失败的原因分析
No.
Top 10 Factors
1
Inadequate requirements specification
不充分的需求规范
2
Changes in requirements 需求的改变
缺乏软件工程师
7
Fixed - price contract 固定价合同
Inadequate communications for system integration 8
系统集成阶段 , 交流与沟通不充分
9
Insufficient experience as team 团队缺乏经验
10 Shortage of application domain experts
10
1.业务需求(business requirement)反映了组织机 构或客户对系统、产品高层次的目标要求,它们 在项目视图与范围文档中予以说明
2.用户需求(user requirement) 文档描述了用户使 用产品必须要完成的任务,这在使用实例(use case)文档或方案脚本说明中予以说明。
chapter__4
4
镀金案例
在检视项目要求的时候,你发现了
一个需要创建软件模块的要求。这
个模块允许用户在浏览应用程序的
时候,在屏幕上维持其所喜好的颜
色和字体样式。在更进一步检视的
时候,你意识到这个模块的加入虽
然很好,但是不会为整个项目增添
什么价值。
chapter__4
5
本章要点
一、软件需求定义 二、软件需求管理过程 三、需求建模的基本方法 四、案例分析
软件过程管理
RoadMap
合同管理 生存期 需求管理 任务分解 规模估算 项目进度
质量计划 配置计划 风险计划 团队管理 项目度量
集成项目 跟踪控制 项目结束
chapter__4
1
软件开发项目管理
第四章 软件项目需求管理
chapter__4
2
需求管理中的问题举例
需求的隐含错误 需求不明确、含糊 用户不断增加需求、变更需求 用户刁难 开发人员的镀金
3
Shortage of systems engineers 缺乏系统工程师
4
Shortage of software managers
缺乏了解软件特性的经理人
5
Shortage of qualified project managers
缺乏合格的项目经理
6
Shortage of software engineers