第三章 需求分析
第3章-需求分析课件
❖ 2。需求分析
❖ 这个阶段对已收集的需求进行提炼、分析和审查,即对问 题的分析和方案的综合,确保所有的需求含义都被理解, 并找出可能错误,遗漏或不足的地方。
❖ 分析人员在这一步骤中的任务是根据对问题及其环境的理 解与软件开发经验,改正用户需求的模糊性、歧义性和不 一致性,排除由于用户的片面性和短期行为所导致的不合 理要求、挖掘用户尚未提出但具有价值的潜在需求,并在 用户的帮助下对相互冲突的要求进行折衷,使用户需求逐 步精确化、一致化和完全化。
经过评审确认的需求规格说明将成为客户方与开发方的 合同。如果评审未通过,比如发现了遗漏或错误,则必 须进行迭代,直至通过评审为止。
需求分析的任务
与软件实际运行相关的需求分析任务
1、确定对系统的综合要求 2、分析系统的数据要求 3、异出系统的逻辑模型 4、修正项目开发划 5、开发原型系统
3.3.2 需求分析的一般性技术
在分析阶段构筑的模型不应涉及软件实现的细节,以免分散分 析人员的注意力、限制软件设计人员为提高软件质量和效率而 选择实现方法的自由度。
需求分析结束时确立的软件模型是生成需求规格说明的依据, 也是软件设计和实现的基础。
3.3.2.3 快速原型技术
如果按照传统的软件开发方法,需要经过漫长的开 发时间之后用户才能看到目标软件的最初版本。此 时用户常常会提出许多修改意见,有时甚至全盘否 定,导致开发失败。为了降低开发风险,在需求分 析阶段常常采用快速原型技术。
发挥。 ③所提问题汇总后应能反映应用问题及其子问题的全貌、并且
不要过分详细。
2.观察用户工作流程
如果可能,可通过实际观察用户的手工操作过 程来提取新系统的初步用户需求。
观察手工操作过程不是为了模拟手工操作过程, 而是为了获取第一手资料,并从中提取出有价 值的需求。分析人员有了第一手资料,再结合 自己的软件开发和应用的经验,就能够发现不 合理的用户需求、提出用户还没有意识到的潜 在的但却很有价值的用户需求,并能够从软件 的角度改进操作流程和操作规范,从而可获得 用户满意的分析结果。
第3章需求分析详解
客户访谈 问题分析与确认
20
与用户沟通的方法
1、访谈
2、面向数据流自顶向下求精
3、简易的应用规格说明技术 4、快速建立软件原型
21
3.2.1.访谈
正式的访谈:具体问题的问答形式; 非正式的访谈:开放式、交互性的问答。 书面调查:调查大量人员意见; 情景分析技术:对用户将来使用目标系统解决某个具 体问题的方法和结果进行分析。 1)能在某种程度上演示目标系统的行为,便于理解; 2)用户在需求分析过程中始终扮演积极主动的角色。
某出版社系统调查表
编号 提出问题
1
2 3 4 5 6 7 8 9
您在哪个部门工作?
出版业务流程是什么? 您每日都处理那些文件、数据、报表? 工作中手工处理特别麻烦的事情是什么? 工作中手工处理什么问题解决不了?影响效率的问题有哪些? 您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些 办法? 您的部门需要成本核算和统计的内容有哪些? 您的部门采用计算机管理工作情况如何? 如何改进业务流程使之更合理?
消除数据冗余的程度。
3.1.3.导出系统的逻辑模型
导出详细的系统逻辑模型。
数据流图 数据字典 实体-联系图
姓名
性别
编号
教 师
1 教 N
状态转换图
主要的处理算法
课程名
课 程
学时
学分
3.1.4.修正系统的开发计划
修正在可行性分析阶段制定的初步的开发计划。
3.2 与用户沟通获取需求的方法
图:软件需求分析的通信途径
3.2.3.简易的应用规格说明技术
前两种方法中,用户比较被动。ቤተ መጻሕፍቲ ባይዱ
第3章 需求分析-软件工程案例教程(第2版)-李军国-清华大学出版社
可行性研究的任务和目的
➢ 用最小的代价在尽可能短的时间内确 定问题是否能够解决。
➢ 确定问题是否能够解决和值得解决。 ➢ 分析可能的利弊关系。
➢ 对行动方针提出建议(是否可行)。
7
可行性研究的时间与成本
➢ 可行性研究实质上是在较高层次上以抽 象方式进行系统分析和设计的过程。
➢ 可行性研究需要的时间长短取决于工程 的规模。
仔细阅读和分析有关的材料,改正含糊或不正确的叙述, 清晰的描述目标系统。
➢ 识别用户的真正要求?(访问关键人员) ➢技术现状如何? (系统调研) ➢系统配置如何? (分析有关的材料) ➢系统维护能力如何? (系统调研) ➢ 系统配置与外部环境的接口什么样?(限制和约束) ➢ 技术上的风险有哪些? ➢ 是否具备技术资源? ➢ 开发人员是否得到培训? ➢ 是否存在法律责任和政治风险?
21
系统分析的内容
1. 环境分析 2. 物理分析 3. 功能分析 4. 信息分析 5. 动态分析
➢ 了解业务活动状况,特别是活动要点的分析。 ➢ 明确这些要点间什么在流动,如何流动。 ➢ 对物理流量进行分析。 ➢ 模型化,得到实际业务系统的物理模型。
22
系统分析的内容
1. 环境分析 2. 物理分析 3. 功能分析 4. 信息分析 5. 动态分析
➢ 了解系统应解决的问题是什么? ➢ 这些问题是如何提出的? ➢ 了解问题的结构。 ➢ 这些问题如何解决才能满足用户的要求?
17
案例: (库存管理)
找出问题
➢不能及时获得库存信息 ➢库存信息不够准确 ➢无法及时了解车间对库存商品的需求情况
18
系统分析过程
① 分析现实世界,充分理解当前系统,并用一个具体模 型描述,获得当前系统的物理模型。
第三章:需求分析PPT课件
②会议准备:邀请开发者和用户双方组织的代表出席会议,并 在开会前预先把写好的产品需求分发给每位与会者。要求每位 与会者在开会的前认真审查产品需求,并且列出作为系统环境 组成部分的对象、系统将产生的对象以及系统为了完成自己的 功能将使用的对象。此外,还要求每位与会者列出操作这些对
象或与这些对象交互的服务(即处理或功能)。最后还应该列出 约束条件(例如,成本、规模、完成日期)和性能标准(例如,速 度、容量)。
②用户复查:从输入端开始,分析员借助数据流图、数据字 典和IPO图向用户解释输入数据是怎样一步一步地转变成输 出数据的。通过复查,再次完善数据流程图。
③细化DFD:两条原则
加细前后的I\O须相同。
分解到须考虑具体实现的代码时即可仃止。
7
2021/3/12
3.2获取需求的方法
面向数据流自顶向下求精的过程
(2) 由于情景分析较易为用户所理解,使用这种技术能保证 用户在需求分析过程中始终扮演一个积极方法
2、面向数据流自顶向下求精
①沿DFD回溯:DFD的输出端是系统的最终目的。向从“输 出端”到“输入端”回溯确定每个数据元素的来源,可加 细DFD及DD,并将相关算法记录在IPO图中。
4
2021/3/12
3.1 需求分析的任务
2、分析数据要求 ⑴建立概念性数据模型: E-R 图 ⑵形象描绘数据结构: 层次方框图, Warnier 图 ⑶数据结构规范化(“范式”):减少数据冗余,避免数据操作异常 3、导出逻辑模型:
DFD +状态转换图+E-R+ DD + IPO
4、修正计划:重估成本、进度等。
有补充 修正
需要 分解
分析追踪 数据流图
用户复查
第3章需求分析
需求分析的任务
5、编写需求规格说明书和开发计划 根据上述的阶段性成果,汇总为“软件
需求规格说明书”,以提交评审 在可行性分析的基础上,较准确地估计
系统的开发成本和进度 修正开发计划
需求分析的任务--举例
馆长和馆员
配合 走 访 客 户 , 调 研 业务流程
调研 分析师
记录调研过程资料
与用户沟通获取需求的方法
需求获取是否彻底与成功,直接关系到软 件开发的成败。
需求获取为什么难?
(1)用户需求具有动态性,即需求的不稳定性:在整个软 件生命周期内,需求会随着时间的进展而有所变化。
(2)用户需求具有模糊性:由于用户的需求表达不很清楚 也不够明确。
与用户沟通获取需求的方法
1、需求获取技术
回溯时常遇到的问题:为了得到某个数据元素需要 用到数据流图中还没有的数据元素,或者得出这个 数据元素要用的算法尚不完全清楚。
因此,需要向用户等有关人员请教,使分析员对目 标系统的认识更深入具体,更多的数据元素被划分 出来,更多的算法搞清楚了。
把分析过程中得到的数据元素记录在数据字典中, 把对算法的简明描述记录在IPO图中,并添加到数据 流图的适当位置上。
与用户沟通获取需求的方法
数据流图是帮助用户复查需求的极好工具; 分析员向用户解释数据的来源(组成和处理,反映
了分析员对系统已有的认识。) 用户要及时纠正和补充分析员的认识
它验证了已知的元素,补充了未知的元素,填补了 文档中的空白;
分析员对系统的认识是一个螺旋式上升的过程。
与用户沟通获取需求的方法
外部输 入或系 统生成
与用户沟通获取需求的方法
输入数据
加工: f g k
输出数据
第3章 需求分析-大纲
第三章需求分析
3.1 需求分析的任务和步骤
——需求分析的任务
……确定对系统的综合要求
……分析系统的数据要求
……建立软件的逻辑模型
——确定对系统的综合要求
……功能性需求
……非功能性需求:可用性,可靠性……
——分析系统的数据要求
……数据字典——定义数据
……层次方框图——定义数据结构
——建立软件的逻辑模型:数据流图、数据字典、实体-联系图、主要算法
——编写软件需求规格说明书
——需求分析评审
3.2 需求获取的常用方法(5个)
——访谈
——问卷调查
——观察用户工作流程
——建立联合分析小组
——快速原型法
3.3 需求分析的方法(4个)
——功能分解法:软件需求当做一棵倒置的功能树
——结构化开发方法:结构化分析、结构化设计和结构化程序设计
——信息建模方法:实体-联系图
——面向对象的分析
3.4 结构化分析技术
——思路:基于数据流图自顶向下逐层分解
3.5 需求分析图形工具
——实体-联系图(Entity-Relationship Diagram)
……实体定义:对软件必须理解的复合信息的抽象
……属性定义:数据对象的性质
……联系定义:数据对象彼此之间相互连接的方式
——数据字典
……定义:数据字典是关于数据的信息的集合,也就是对数据流图中包含的
所有元素的定义的集合。
……四类元素:数据流,数据流分量(即数据元素),数据存储,处理——层次方框图
……定义:用树型结构的一系列多层次的矩形框描绘数据的层次结构。
——IPO图(Input Process Output)。
3-第三章 需求分析
第三章需求分析§1 需求分析的任务软件系统的开发指导思想:从当前系统逻辑模型导出目标系统逻辑模型. 演变过程如下:怎么做做什么需求分析的任务:由当前系统的逻辑模型转化到表达需求的逻辑模型,对系统提出完整、准确、清晰、具体的要求,准确回答“系统必须做什么?”。
核心任务是:建立系统模型和描述系统模型。
具体表述如下:一.确定系统的综合需求1.系统功能要求,划分出系统必须完成的所有功能;2.系统性能要求:系统的响应时间、系统需要的存储容量及安全性等;3.系统运行要求:对系统运行环境的要求,如(1)支持系统运行的软件环境:工具软件、系统软件;(2)支持系统运行的硬件环境;(3)通信接口、输入和输出等外部设备。
4.将来可能提出的要求,为系统将来的扩充做准备.二.分析系统的数据要求1.利用数据字典全面准确的定义数据;2.借助图形工具(如层次方框图、Warnier图)辅助描绘数据结构;3.将系统中需短期或长期保存的各种信息以一定的方式组织并存储在数据库或文件中。
三.导出系统的逻辑模型使用DFD、数据字典和主要处理的算法等工具导出系统的逻辑模型.四.修改系统的开发计划根据系统的逻辑模型,在加深对系统具体了解的基础上,准确估计系统的成本和进度,修改可行性研究中提出的系统开发计划.五.开发原型系统(“样机”),显示系统的主要功能.1.检验关键设计方案的正确性;2.系统是否真正满足用户要求;3.沟通用户与系统分析员之间的通信;4.通过直观的系统模型,获得实践经验.利用已有的工具可以快速建立原型系统.六.写出需求规格说明书它是需求分析的成果,是软件开发、验收和管理的依据。
§2 实现需求分析任务的方法需求分析的方法是实现需求分析任务的具体实现。
需求分析的基本过程如下:可行性分析获得目标系统的高层DFD,需求分析的目的之一就是把DF和数据存储定义到元素级。
需求分析的方法具体如下:一.沿DFD从输出端到输入端回溯(1)确定每一个数据元素的来源;(2)为得到某个数据元素补充DFD中还没有的DF;(3)初步定义有关的算法;(4)将通过分析补充的DF、数据存储和处理添加到DFD的适当位置上。
管理经济学-第三章需求分析
06
需求的收入弹性
定义
需求的收入弹性是指当消费者的收入发生变化时,需 求量变动的程度。具体来说,它衡量了需求量对收入 变动的敏感程度。
需求的收入弹性通常用需求量变动的百分比与收入变 动的百分比的比值来表示。
分类
01
正常品
需求的收入弹性大于零的商品, 即随着收入的增加,需求量也相 应增加。
劣等品
非线性需求函数
非线性需求函数是指需求量与价格之间呈非线性关系,通常表示为:Qd = f(P) 其中,f(P)是一个关于P的函数,可以 是二次函数、三次函数或其他形式的函数。
指数需求函数
指数需求函数是指需求量与价格之间呈指数关系,通常表示为:Qd = e^(-aP) 其中,a是常数,Qd和P 分别代表需求量和价格。
具体计算时,需要先确定商品B需求变化量 以及商品A价格变化量,然后带入公式进行
计算。
应用场景
交叉弹性在市场营销中具有重要应用价值。例如,当企业分析其产品与竞争对手产品之间的关系时,可以利用交叉弹性来评 估产品之间的替代或互补程度,从而制定有效的营销策略。
另外,交叉弹性也可以用于分析不同产品之间的关联程度,帮助企业了解市场需求和消费者行为,从而更好地制定产品定价 、促销和分销策略。
05
需求的交叉弹性
定义
交叉弹性是指一种商品的需求量对另一种商品价格变动的反 应程度。具体来说,它衡量了一种商品价格变化百分之一时 ,另一种商品需求量变化的百分比。
交叉弹性可以分为正交叉弹性和负交叉弹性,正交叉弹性表 示两种商品为替代品,负交叉弹性表示两种商品为互补品。
计算方法
交叉弹性 = (商品B需求变化量 / 商品B原始 需求量) / (商品A价格变化量 / 商品A原始价 格)
第3章-需求分析
这条准则要求建立行为模型。 (4) 必须对描述信息、功能和行为的模型进行
分解,用层次的方式展示细节。
需求获取面临的挑战
客户说不清楚需求 需求易变性 问题的复杂性和对问题空间 理解的不完备性与不一致性
优秀需求具有的特性
❖ 1. 完整性 ❖ 2. 正确性 ❖ 3. 可行性 ❖ 4. 必要性 ❖ 5. 划分优先级 ❖ 6. 无二义性 ❖ 7. 可验证性
6 D1 库存清单
包含零件编号、 名称、目前价格 1
事务
1
5
2 定货报表
仓库管理员
处理
产生
采购员
事务
Байду номын сангаас
报表
形成定货数量 2
4
D2 定货信息
3
面向数据流方法的分析的应用
6
D1 库存清单
7
仓库
事务 1.1 接收
管理员
事务
事务 1.2 更新 库存
5
库存信息 1.3 处理 定货
D3 供应商信息 1
2 定货报表 产生 报表
现实世界
面
OOA
向 对
象
开 OOD 发
方
OOP 法
结构化
结 分析
构
化 结构化 开 设计
发
方 法
结构化 编程
计算机世界
结构化分析模型的组成结构
数
加
据 E-R图
数据流图 工
对 象
(DFD) 说
数据字典
明
(DD)
说
明
状态转换图
(STD图)
控制说明
面向对象分析模型的组成结构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例:
, Name
I D#
31
例如:
Title ID# Name ID# Name Instructor Student
Sex
Sex
……
Instructor ID
21
2.需求文档的版本控制 版本控制是管理需求的一个必要方面。需求文档的每一个 版本必须被统一确定,小组内每个成员必须能够得到需求的当 前版本,必须清楚地将变更写成文档,并及时通知到项目开发 所涉及的人员。为了尽量减少困惑、冲突、误传,应仅允许指 定的人来更新需求。 每一个公布的需求文档的版本应该包括一个修正版本的历 史情况,即已做变更的内容、变更日期、变更人姓名以及变更 原因,可以考虑给每个需求标记上版本号,当修改满足需求后 就增加版本号。 版本控制的最有力方法是用一个商业需求管理工具的数据库 存储需求,这些工具可以跟踪和报告每个需求的变动历史, 特别是当需要恢复早期的需求时非常有意义。
3.2.1 需求开发
一. 需求获取
从用户获得需求,并整理成文档。 注:分析员与各种层析的客户进行交流,如决策人,具体使 用人,系统维护人员等等。 OOA中常采用方法:用例方法获取需求。
二. 需求分析
对上阶段获取的需求进行分析、提炼,并用相应的分析模型 描述出来,分析出高质量的需求。
7
1 主要任务:
10
2 与用户沟通获取需求的方 法
快速建立软件原型
构建和修改原型的方法和工具
第四代技术:包括数据库查询和报表语言、程序和应用 系统生成器以及其他非常高级的非过程语言 可重用的软件构件 形式化规格说明和原型环境
Байду номын сангаас
11
1 主要任务:
分析系统的数据要求
任何一个软件系统本质是都是信息处理系统,分析
数据词典
判定表与判定树、 结构化英语 层次方框图、Warnier图、IPO图
28
3.3.1 分析模型
结构化分析导出的分析模型包括数据模型、功能模型和行为模型 ,该模型以“数据字典”为核心,它描述了软件使用的所有数据 对象。
数 据 模 型
实体关系图
数据流图
功 能 模 型
数据字典
状态转换图
行为模型
29
系统的数据要求是需求分析的一个重要任务 分析系统的数据要求通常是采用建立E-R图 复杂数据的表示方法主要有数据字典、层次方框图、 Warnier图 数据结构规范化
导出系统的逻辑模型:通常用数据流图、E-R图、 状态转换图、数据字典和主要处理的算法 修正系统开发计划
12
3.需求分析的过程
定义:指应用已证实有效的技术、方法进行需求分析,确定
客户需求,帮助分析人员理解问题并定义目标系统的所有 外部特征的一门学科。
主要活动:
需求获取 需求建模(需求分析) 需求传递:编写规格(规约)说明书 需求验证 需求管理
需求工程的层次分解示意图 需求工程
需求开发
需求管理
问题获取
需求分析
编写规格说明
验证
面向数据流自顶向下求精 简易的应用规格说明技术
典型过程 进行初步的访谈,初步确定待解决的问题的范围和解决方案 开发者和用户分别写出“产品需求” 选定会议时间和地点及主持会议的协调人 要求与会者做好参会准备 会议开始后首先讨论“是否需要这个新产品”,得到确认后, 讨论每人的列表,严格禁止批评和争论
实体关系图(Entity-Relationship Diagram,ERD):作为数 据建模的基础,描述数据对象及其关系; 数据流图(Data Flow Diagram,DFD):作为功能建模的基础 ,描述数据怎样转换以及转换的功能;
状态转换图(State-Transition Diagram,STD):作为行为建 模的基础,表示系统的各种行为状态以及状态间的转换方式。
出错处理需求(有选择地提出) 接口需求:软件同其它系统元素的接口细节 约束需求:软件设计的约束,主要有:精度,工具和语言约束,设 计约束,应该使用的标准,应该使用的硬件平台 逆向需求:系统不应该做什么 将来可能提出的要求
8
2 与用户沟通获取需求的方 法
访谈 访谈有正式的访谈和非正式的访谈 发放调查表 情景分析技术
(1)用户解决问题或达到目标所需的条件或能力; (2)系统或系统部件要满足合同、标准、规范或其它正式规定 文档所需具有的条件或能力。 (3)一种反映(1)或(2)所描述的条件或能力的文档说明。 定义从两个角度阐述需求: 用户角度 系统的外部行为 开发者角度 系统的内部特性 其关键的问题:编写需求文档。
20
1.需求变更控制
一些需求的改进是合理的且不可避免。 不被控制的变更是项目陷入混乱、不能按进度执行或软件质量 低劣的共同原因,因此,需求变更应该实现以下要求: ● 应仔细评估已建议的变更; ● 挑选合适的人选对变更做出决定; ● 变更应及时通知所有涉及的人员; ● 项目要按一定的程序来采纳需求变更。
使用需求跟踪能力矩阵分析变更产生的影响
CMM:软件能力成熟度模型的目标之一:进行需求管理
25
2.需求管理工具 需求管理工具有两种类型: a.以文档为核心的 b.以数据库核心的
26
3.3 分析建模
现在在主导地位的分析方法为: 结构化分析方法(SA)和面向对象的分析方法(OOA) 本节主要讲SA。 结构化分析方法最早开始于20世纪60年代末和70年代 初。DeMaro在1979年出版的《Structured Analysis and System Specification》一书中,给出了数据流 图等结构化分析工具,并使用数据字典和加工说明等 作为图形工具的补充。
需求分析研究的对象是软件项目的用户要求 确定对系统的综合要求 功能需求:系统必须完成的所有功能 性能需求:系统必须满足的定时约束或容量约束,如速度、信息量速 率、主存容量、磁盘容量、安全性等方面的需求 可靠性和可用性需求
可靠性需求:系统的可靠性,如“某系统一月内不能出现2次故障” 可用性需求:与可靠性需求相关,量化了用户可以使用系统的程度, “任何时候主机或备份机上的系统应该至少有一个是可用的,且在一 月内在任何计算机上该系统不可用的时间不能超过总时间的2%”
需求传递(编制需求文档)
软件需求说明书 数据要求说明书 初步的用户手册 修改、完善与确定软件开发实施计划 注:格式见附录
四 需求验证(需求评审) 系统定义的目标是否与用户的要求一致; 系统需求分析阶段提供的文档资料是否齐全; 文档中的所有描述是否完整、清晰、准确反映用户要求; 与所有其它系统成分的重要接口是否都已经描述;
30
一.实体 -联系图(Entity-Relationship Diagram)
数据模型有三种基本元素:数据对象、属性、关系。
⑴ Entities ⑵ Relations
1 1
Student , Instructor 例:
,
Class Teach N
例:
1
Enrolled in N M
⑶ Attributes
17
被开发项目的数据流与数据结构是否足够,确定; 所有图表是否清楚,在不补充说明时能否理解; 主要功能是否已包括在规定的软件范围之内,是否都已 充分说明; 设计的约束条件或限制条件是否符合实际; 开发的技术风险是什么; 是否考虑过软件需求的其它方案; 是否考虑过将来可能会提出的软件需求; 是否详细制定了检验标准,它们能否对系统定义是否成 功进行确认;
2
3.1.2 需求的层次
软件需求包括四个不同的层次: 1.业务需求:描述了组织结构或客户对系统的高层次的目标要求。 2.用户需求:描述了用户使用产品必须要完成的任务,使用实例模型描述。 3.功能需求:定义了开发人员实现的软件的功能。 4.约束需求:描述系统的约束和限制条件。
注:以上需求应详细的写到软件需求规格说明书里。
13
问题识别的另一项工作是建立分析所需要的通信途径, 以保证能顺利地对问题进行需求分析。
14
(2) 分析与综合
A.主要任务(建立系统的逻辑模型) 从信息流和信息结构出发,逐步细化所有的软件功能, 找出系统各元素之间的联系、接口特性和设计上的约 束,分析它们是否满足功能要求,是否合理。剔除其 不合理的部分,增加其需要部分。最终综合成系统的 解决方案,给出目标系统的详细逻辑模型。 B.常用的分析方法
(1) 问题识别 从系统的角度来理解软件并评审软件范围是否恰当 确定对目标系统的综合要求,即软件的需求 提出这些需求实现条件,以及需求应达到的标准
软件的需求包括:
功能需求 性能需求 环境需求 可靠性需求 安全保密要求 用户界面需求
资源使用需求 成本消耗需求 开发进度需求 预先估计以后系统可 能达到的目标
18
需求开发流程
19
3.2.2 需求管理
需求管理从形成需求基线开始,分析变更影响并控制变更过 程。 主要包括变更控制、版本控制和需求跟踪等活动。
变更控制就是在一定的程序下有效地实施整个变更过程;
版本管理保证了在需求文档中记录和反映所有的需求变化;
需求跟踪帮助人们全面地分析变更带来的影响,从而作出正确 的变更决策。 三者统一起来,真正做到了管理需求变化过程,以及维护需求 变化后的一致性和完整性。
3
3.1.3 需求错误的原因
需求描述模棱两可,有时写的过于简单; 用户的要求不断变换,需求也不断变化; 参与的用户过少,而且忽略了用户的分类; 追求个性化,添加不必要的特性。
需求越来越复杂,但很重要,现在提出了采用工 程化的思想对需求进行分析,引出需求工程的概念。