需求分析PPT课件
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
19
3.2.2 面向数据流的自顶向下求精
❖ 回溯过程中需要回答两个问题深入调查
输出数据的组成?
输出数据的来源?
外部输入或 系统生成
20
3.2.2 面向数据流的自顶向下求精
❖ 回溯时常遇到的问题:为了得到某个数据元素需要 用到数据流图中还没有的数据元素,或者得出这个 数据元素要用的算法尚不完全清楚。
求要不断迭代) ❖ 注意区别”可行性分析”和”需求分析”的
异同; ❖ 设计出系统的”数据模型”、细化的“逻辑
模型”和“行为模型”;(关键所在) 3
需求分析做什么?
所有的结构化分析方法都遵守下述准则:
(1) 必须理解并描述问题的信息域,根据这条 准则应该建立数据模型。
(2) 必须定义软件应完成的功能,这条准则要 求建立功能模型。
❖ 确定系统综合要求和分析系统数据要求顺利 完成之后即可导出详细的系统功能模型。
❖ 阶段性成果:
细化后并经过多次校验的数据流图(DFD) 与数据流图相辅相存的数据字典(DD) 概要性的描述主要加工的处理算法(IPO)
10
3.1.4 分析和设计系统的行为模型
❖ 确定系统的动态变化的方式,采用状态转换 图来描述。
❖ 系统分析员应该从不同角度抽象出目标 系统的特性,使用精确的表示方法构造
系统的模型。
数据角度、功能角 度、行为角度
DFD、DD、STD、 E-R
35
模型的作用
现实世界
影射
计算机世界
36
模型的作用
现实世界
面
OOA
向 对
象
开 OOD 发
方
OOP 法
结构化
结 分析
构
化 结构化 开 设计
发
方 法
结构化 编程
21
面向数据流方法的分析过程
❖ 沿数据流图回溯 ❖ 用户复查 ❖ 细化数据流图 ❖ 修正开发计划 ❖ 书写文档 ❖ 审查和复审
22
沿数据流图回溯
❖ 从数据流图的输出向输入回溯,依次确定每 个数据元素的来源(组成和实现算法);
❖ 把数据元素的信息记录到数据字典中; ❖ 把对算法的简明描述记录到IPO图中; ❖ 补充的数据流、数据存储和处理应该添加到
第3章 需求分析
1
为什么需要需求分析?
❖ 开发人员往往急于求成 ❖ 希望对开发进行指导 ❖ 希望开发人员对用户的要求理解 ❖ 希望用户理解开发人员 ❖ 测试部门有理可依
2
需求分析做什么? Is What Not How
❖ 准确地回答”系统必须做什么?”这个问题; ❖ 对系统提出完整、准确、清晰、具体的要求; ❖ 写出软件需求规格说明书; ❖ 用户要很好地参与到需求分析过程中来;(需
逐一确定元 素的来源
定义:定货报表 = 零件编号 +零件名称+
定货数量+目前价格+主要供应
商+次要供应商
位置:定货报告
定货信息
库存清单
29
面向数据流方法的分析的应用
6 D1 库存清单
包含零件编号、 名称、目前价格 1
事务
1
5
2 定货报表
仓库管理员
处理
产生
采购员
事务
报表
形成定货数量 2
4
D2 定货信息
计算机世界
37
结构化分析模型的组成结构
数
加
据 E-R图
数据流图 工
对 象
(DFD) 说
数据字典
明
(DD)
说
明
状态转换图
(STD图)
38
控制说明
面向对象分析模型的组成结构
操作、
类/对象
对象-关
模型
使用实例
(Use Case)
系模型
对象-行为模型
39
3.3 分析建模与规格说明
❖ 结构化分析方法的创建的几个主要模型及关 键元素如下:
数据流图的适当位置上。
23
用户复查
❖ 数据流图是帮助复查的极好工具; ❖ 分析员向用户解释数据的来源(组成和处理,
它反映了分析员建立的对系统已有的认识。) ❖ 用户要及时纠正和补充分析员的认识
❖ 它验证了已知的元素,补充了未知的元素, 填补了文档中的空白;
❖ 分析员对系统的认识是一个螺旋式上升的过 程。
❖ 总之,可以由一组属性来定义的实体都可以 被认为是数据对象。
43
3.4.2 属性
❖ 数据对象的基本属性,它是原子的。 ❖ 关键字属性是什么?
❖ 属性的确定要依据实际的软件问题。(究竟 是否为属性或究竟是什么属性?)
44
3.4.2 联系
❖ 实体之间是存在联系的
1:1 1:N M:N
❖ 联系也可以有属性
15
3.2.1 访谈
❖ 情景分析 (1) 它在某种程度上演示目标系统的行为,便
于用户理解,而且还可能进一步揭示出一些 分析员还不知道的需求。 (2) 由于情景分析较易为用户所理解,使用这 种技术能保证用户在需求分析过程中始终扮 演一个积极主动的角色。
16
可行性分析 忽略了细节
3.2.2 面向数据流的自顶向下求精
❖ 信息系统的本质决定数据是需求分析的起点 ❖ 系统分析员一定要搞清楚数据的细节
❖ 分析的对象:高层数据流图(什么阶段得到 的?)
❖ 主要目标:把数据流和数据存储定义到元素
级别(不可分解为止)
数据的来源、去向、数 据结构定义等
17
3.2.2 面向数据流的自顶向下求精
自顶向下,逐 层细化的方法
❖ 结构化分析方法是一种什么方法呢? ❖ 从数据流图的输出端着手分析,这是因为系
据建模的基础。
41
3.4.1 数据对象
❖ 它是指用一系列的属性和性质对现实中的事 物加以更加形象的描述。
❖ 它也称为实体,可以是有生命的或没有生命 的。
❖ 实体之间不是孤立的。 ❖ 注意区分面向对象中的“对象”和ER中的
“数据对象”。
42
3.4.1 数据对象
❖ 它的范畴很大,可以是外部实体(例如,产生 或使用信息的任何事物)、事物(例如,报表)、 行为(例如,打电话)、事件(例如,响警报)、 角色(例如,教师、学生)、单位(例如,会计 科)、地点(例如,仓库)或结构(例如,文件) 等。
改
8
3.1.2 分析和设计系统的数据要求
❖ 软件系统的本质是对数据进行处理。
❖ 通常要求建立完整的概念模型(E-R模型)
❖ 数据字典缺乏直观性(考虑图形化的描述复 杂数据的组成)
❖ 必要时需要对数据模型进行规范化(范式)
❖ 阶段性成果:
E-R图
层次方框图或Warnier图
9
3.1.3 分析和设计系统的功能模型
24
细化数据流图
❖ 为了追踪更详细的数据流,应该把数据流图 扩展到更低的层次;
❖ 通过追踪这些细化的数据流图产生了新的问 题,新的问题的答案可能在数据字典中增加 新的条目,并且将产生新的算法;
❖ 功能分解可以完成数据流图的细化; ❖ 细化过程中注意及时的更新数据字典;
25
书写文档
❖ 需求规格说明 ❖ 数据要求 ❖ 用户系统描述 ❖ 修正的开发计划
❖ 阶段性成果:
状态转换图(STD)
11
3.1.5 编写需求规格说明,可能需要 修正系统的开发计划
❖ 根据上述的阶段性成果,汇总为“软件需求 规格说明书”,以提交评审
❖ 在可行性分析的基础上,较准确地估计系统 的开发成本和进度
❖ 修正开发计划
12
3.2 与用户沟通获取需求的方法
❖ 访谈
❖ 面向数据流自顶向下求精
❖ 快速建立起来的旨在演示目标系统主要功能 的可运行的程序。
❖ 它是最准确、有效和强大的需求分析技术。 ❖ 基本特性:
快速:快速的提供给用户一个可运行的软件; 容易修改:根据用户的要求可迅速构建新的原型;
34
3.3 分析建模与规格说明
❖ 模型,就是为了理解事物而对事物做出 的一种抽象,是对事物的一种无歧义的 书面描述。
❖ 因此,需要向用户等有关人员请教,他们的回答使 分析员对目标系统的认识更深入具体,系统中更多 的数据元素被划分出来,更多的算法搞清楚了。
❖ 把分析过程中得到的有关数据元素的信息记录在数 据字典中,把对算法的简明描述记录在IPO图中。 通过分析而补充的数据流、数据存储和处理,应该 添加到数据流图的适当体任务:
确定对系统的综合要求(系统需要什么?)
分析和设计系统的数据要求 (处理的数据对象 是什么?)
在可行性分析的基础之上分析和设计系统的功 能模型(系统功能的模型表示是什么?)
分析和设计描述软件动态变化的行为模型(系 统的状态是如何改变的?)
编写软件需求规格说明书,可能需要修正系统
统的基本功能是产生这些输出的关键原因。 ❖ 输出数据决定了系统必须具有的最基本的组
成元素(包括功能和数据结构组成)。
18
3.2.2 面向数据流的自顶向下求精
❖ 注意1:第2章给出了1种数据流图的分析方法 (教材),其目的主要是导出较高层次较粗 糙的数据流图,而需要准确地收集需求,采 用本章的从数据流图的输出向输入的回溯方 法。
开发计划
7
3.1.1 确定系统的综合要求
基本的、
核心的
❖ 功能要求
时间、存储 量、安全性
MTTF
用户、硬件、 软件、通信
系统不应该 做什么
❖ 性能要求
❖ 可靠性和可用性要求 ❖ 出错处理要求
对环境错误 应该如何响
应
❖ 接口要求 ❖ 约束
限制条件、 精度、语言
❖ 逆向要求 ❖ 扩展要求
对系统可能 的扩充或修
数据模型:E-R图(E-RD)(本章介绍) 功能模型:数据流图(DFD) 行为模型:状态转换图(STD)(本章介绍) 数据字典:模型中心(DD)
❖ 根据上述模型整理出软件需求规格说明书
40
3.4 实体-联系图
❖ 信息模型,或概念性数据模型。 ❖ 现实世界的数据抽象,它是真实世界的最好
反映,它完全依赖于用户的角度(语义)。 ❖ 信息系统数据库分析与设计的基础,也是数
26
需求分析的过程示图
27
面向数据流方法的分析的应用
来源、数据组 成是什么?
仓库管理员
事务
定货系统
定货报表
采购员
来源:由哪个加工产生或从哪个文件读出?
数据组成:数据字典应该如何设计,大概有哪些 数据项?
28
面向数据流方法的分析的应用
名字:定货报表
别名:定货信息
描述:每天一次送给采购员的 需要定货的零件表
❖ 简易的应用规格说明技术 ❖ 快速原型法
13
用户和系统其他人员参与需求分 析
14
3.2.1 访谈
❖ 最早并且仍然广泛使用 ❖ 正式的访谈:具体问题的问答形式 ❖ 非正式的访谈:开放式、交互性的问答 ❖ 需要调查大量人员时采用“调查表”技术 ❖ 还使用“情景分析技术”(用户角度),就是
对用户将来使用目标系统解决某个具体问题 的方法和结果进行分析。
主流技术 ❖ 它提倡用户与开发者密切合作、共同标识问
题、提出解决方案,确定基本需求
32
简易的应用规格说明技术流程
初步访谈
召开讨论会
分会讨论
汇总需求
待解决问 题的范围 和方案
是否需要这个 软件以及对需 求进行组合
单独议题需求 列表的讨论
完整的需求规 格说明书
针对每个议题制
定一统一的需求 列表
33
3.2.4 快速原型法
50
3.6.1 状态
❖ 三种状态类型:初态、终态和中间态
State_1
❖ 状态图可表示循环运行过程以及单程运行过 程。
State_1
State_2
State_1
State_3
51
3.6.2 事件
❖ 某个特定时刻发生的“事情”。 ❖ 它是对引起系统做动作或(和)从一个状态转
(3) 必须描述作为外部事件结果的软件行为, 这条准则要求建立行为模型。
(4) 必须对描述信息、功能和行为的模型进行 分解,用层次的方式展示细节。
4
需求获取面临的挑战
客户说不清楚需求 需求易变性 问题的复杂性和对问题空间 理解的不完备性与不一致性
5
优秀需求具有的特性
❖ 1. 完整性 ❖ 2. 正确性 ❖ 3. 可行性 ❖ 4. 必要性 ❖ 5. 划分优先级 ❖ 6. 无二义性 ❖ 7. 可验证性
3
30
面向数据流方法的分析的应用
6
D1 库存清单
7
仓库
事务 1.1 接收
管理员
事务
事务 1.2 更新 库存
5
库存信息 1.3 处理 定货
D3 供应商信息 1
2 定货报表 产生 报表
采购员
4
2
8 D2 定货信息
3
31
3.2.3 简易的应用规格说明技术
❖ 前两种方法中,用户比较被动 ❖ 它是一种面向团队的需求收集方法,是一种
45
46
“化学制品跟踪系统”实体联系
图
化学制品仓 库存货清单
化学制品 请求
1
1
存储
执行
M M
化学制品容器
47
3.5 数据规范化
❖ 概念模型转化为数据模型后考虑的问题 ❖ 数据库中范式的定义
第一范式:原子属性 第二范式:消除部分函数依赖 第三范式:消除传递函数依赖
48
3.6 状态转换图
❖ 通过描绘系统的状态及引起系统状态转换的 事件,来表示系统的行为。
例如:上课铃响了,同学们应该进入教室准备上 课。
❖ 状态图还指明了作为特定事件的结果,系统 将做哪些动作(例如,处理数据)。
49
3.6.1 状态
❖ 状态代表系统的行为模式; ❖ 它规定了系统对事件的响应方式;(3种)
改变状态(绝大多数的系统都如此响应) 做动作(完成一定的“操作”) 既改变状态,又做动作(比较复杂)
3.2.2 面向数据流的自顶向下求精
❖ 回溯过程中需要回答两个问题深入调查
输出数据的组成?
输出数据的来源?
外部输入或 系统生成
20
3.2.2 面向数据流的自顶向下求精
❖ 回溯时常遇到的问题:为了得到某个数据元素需要 用到数据流图中还没有的数据元素,或者得出这个 数据元素要用的算法尚不完全清楚。
求要不断迭代) ❖ 注意区别”可行性分析”和”需求分析”的
异同; ❖ 设计出系统的”数据模型”、细化的“逻辑
模型”和“行为模型”;(关键所在) 3
需求分析做什么?
所有的结构化分析方法都遵守下述准则:
(1) 必须理解并描述问题的信息域,根据这条 准则应该建立数据模型。
(2) 必须定义软件应完成的功能,这条准则要 求建立功能模型。
❖ 确定系统综合要求和分析系统数据要求顺利 完成之后即可导出详细的系统功能模型。
❖ 阶段性成果:
细化后并经过多次校验的数据流图(DFD) 与数据流图相辅相存的数据字典(DD) 概要性的描述主要加工的处理算法(IPO)
10
3.1.4 分析和设计系统的行为模型
❖ 确定系统的动态变化的方式,采用状态转换 图来描述。
❖ 系统分析员应该从不同角度抽象出目标 系统的特性,使用精确的表示方法构造
系统的模型。
数据角度、功能角 度、行为角度
DFD、DD、STD、 E-R
35
模型的作用
现实世界
影射
计算机世界
36
模型的作用
现实世界
面
OOA
向 对
象
开 OOD 发
方
OOP 法
结构化
结 分析
构
化 结构化 开 设计
发
方 法
结构化 编程
21
面向数据流方法的分析过程
❖ 沿数据流图回溯 ❖ 用户复查 ❖ 细化数据流图 ❖ 修正开发计划 ❖ 书写文档 ❖ 审查和复审
22
沿数据流图回溯
❖ 从数据流图的输出向输入回溯,依次确定每 个数据元素的来源(组成和实现算法);
❖ 把数据元素的信息记录到数据字典中; ❖ 把对算法的简明描述记录到IPO图中; ❖ 补充的数据流、数据存储和处理应该添加到
第3章 需求分析
1
为什么需要需求分析?
❖ 开发人员往往急于求成 ❖ 希望对开发进行指导 ❖ 希望开发人员对用户的要求理解 ❖ 希望用户理解开发人员 ❖ 测试部门有理可依
2
需求分析做什么? Is What Not How
❖ 准确地回答”系统必须做什么?”这个问题; ❖ 对系统提出完整、准确、清晰、具体的要求; ❖ 写出软件需求规格说明书; ❖ 用户要很好地参与到需求分析过程中来;(需
逐一确定元 素的来源
定义:定货报表 = 零件编号 +零件名称+
定货数量+目前价格+主要供应
商+次要供应商
位置:定货报告
定货信息
库存清单
29
面向数据流方法的分析的应用
6 D1 库存清单
包含零件编号、 名称、目前价格 1
事务
1
5
2 定货报表
仓库管理员
处理
产生
采购员
事务
报表
形成定货数量 2
4
D2 定货信息
计算机世界
37
结构化分析模型的组成结构
数
加
据 E-R图
数据流图 工
对 象
(DFD) 说
数据字典
明
(DD)
说
明
状态转换图
(STD图)
38
控制说明
面向对象分析模型的组成结构
操作、
类/对象
对象-关
模型
使用实例
(Use Case)
系模型
对象-行为模型
39
3.3 分析建模与规格说明
❖ 结构化分析方法的创建的几个主要模型及关 键元素如下:
数据流图的适当位置上。
23
用户复查
❖ 数据流图是帮助复查的极好工具; ❖ 分析员向用户解释数据的来源(组成和处理,
它反映了分析员建立的对系统已有的认识。) ❖ 用户要及时纠正和补充分析员的认识
❖ 它验证了已知的元素,补充了未知的元素, 填补了文档中的空白;
❖ 分析员对系统的认识是一个螺旋式上升的过 程。
❖ 总之,可以由一组属性来定义的实体都可以 被认为是数据对象。
43
3.4.2 属性
❖ 数据对象的基本属性,它是原子的。 ❖ 关键字属性是什么?
❖ 属性的确定要依据实际的软件问题。(究竟 是否为属性或究竟是什么属性?)
44
3.4.2 联系
❖ 实体之间是存在联系的
1:1 1:N M:N
❖ 联系也可以有属性
15
3.2.1 访谈
❖ 情景分析 (1) 它在某种程度上演示目标系统的行为,便
于用户理解,而且还可能进一步揭示出一些 分析员还不知道的需求。 (2) 由于情景分析较易为用户所理解,使用这 种技术能保证用户在需求分析过程中始终扮 演一个积极主动的角色。
16
可行性分析 忽略了细节
3.2.2 面向数据流的自顶向下求精
❖ 信息系统的本质决定数据是需求分析的起点 ❖ 系统分析员一定要搞清楚数据的细节
❖ 分析的对象:高层数据流图(什么阶段得到 的?)
❖ 主要目标:把数据流和数据存储定义到元素
级别(不可分解为止)
数据的来源、去向、数 据结构定义等
17
3.2.2 面向数据流的自顶向下求精
自顶向下,逐 层细化的方法
❖ 结构化分析方法是一种什么方法呢? ❖ 从数据流图的输出端着手分析,这是因为系
据建模的基础。
41
3.4.1 数据对象
❖ 它是指用一系列的属性和性质对现实中的事 物加以更加形象的描述。
❖ 它也称为实体,可以是有生命的或没有生命 的。
❖ 实体之间不是孤立的。 ❖ 注意区分面向对象中的“对象”和ER中的
“数据对象”。
42
3.4.1 数据对象
❖ 它的范畴很大,可以是外部实体(例如,产生 或使用信息的任何事物)、事物(例如,报表)、 行为(例如,打电话)、事件(例如,响警报)、 角色(例如,教师、学生)、单位(例如,会计 科)、地点(例如,仓库)或结构(例如,文件) 等。
改
8
3.1.2 分析和设计系统的数据要求
❖ 软件系统的本质是对数据进行处理。
❖ 通常要求建立完整的概念模型(E-R模型)
❖ 数据字典缺乏直观性(考虑图形化的描述复 杂数据的组成)
❖ 必要时需要对数据模型进行规范化(范式)
❖ 阶段性成果:
E-R图
层次方框图或Warnier图
9
3.1.3 分析和设计系统的功能模型
24
细化数据流图
❖ 为了追踪更详细的数据流,应该把数据流图 扩展到更低的层次;
❖ 通过追踪这些细化的数据流图产生了新的问 题,新的问题的答案可能在数据字典中增加 新的条目,并且将产生新的算法;
❖ 功能分解可以完成数据流图的细化; ❖ 细化过程中注意及时的更新数据字典;
25
书写文档
❖ 需求规格说明 ❖ 数据要求 ❖ 用户系统描述 ❖ 修正的开发计划
❖ 阶段性成果:
状态转换图(STD)
11
3.1.5 编写需求规格说明,可能需要 修正系统的开发计划
❖ 根据上述的阶段性成果,汇总为“软件需求 规格说明书”,以提交评审
❖ 在可行性分析的基础上,较准确地估计系统 的开发成本和进度
❖ 修正开发计划
12
3.2 与用户沟通获取需求的方法
❖ 访谈
❖ 面向数据流自顶向下求精
❖ 快速建立起来的旨在演示目标系统主要功能 的可运行的程序。
❖ 它是最准确、有效和强大的需求分析技术。 ❖ 基本特性:
快速:快速的提供给用户一个可运行的软件; 容易修改:根据用户的要求可迅速构建新的原型;
34
3.3 分析建模与规格说明
❖ 模型,就是为了理解事物而对事物做出 的一种抽象,是对事物的一种无歧义的 书面描述。
❖ 因此,需要向用户等有关人员请教,他们的回答使 分析员对目标系统的认识更深入具体,系统中更多 的数据元素被划分出来,更多的算法搞清楚了。
❖ 把分析过程中得到的有关数据元素的信息记录在数 据字典中,把对算法的简明描述记录在IPO图中。 通过分析而补充的数据流、数据存储和处理,应该 添加到数据流图的适当体任务:
确定对系统的综合要求(系统需要什么?)
分析和设计系统的数据要求 (处理的数据对象 是什么?)
在可行性分析的基础之上分析和设计系统的功 能模型(系统功能的模型表示是什么?)
分析和设计描述软件动态变化的行为模型(系 统的状态是如何改变的?)
编写软件需求规格说明书,可能需要修正系统
统的基本功能是产生这些输出的关键原因。 ❖ 输出数据决定了系统必须具有的最基本的组
成元素(包括功能和数据结构组成)。
18
3.2.2 面向数据流的自顶向下求精
❖ 注意1:第2章给出了1种数据流图的分析方法 (教材),其目的主要是导出较高层次较粗 糙的数据流图,而需要准确地收集需求,采 用本章的从数据流图的输出向输入的回溯方 法。
开发计划
7
3.1.1 确定系统的综合要求
基本的、
核心的
❖ 功能要求
时间、存储 量、安全性
MTTF
用户、硬件、 软件、通信
系统不应该 做什么
❖ 性能要求
❖ 可靠性和可用性要求 ❖ 出错处理要求
对环境错误 应该如何响
应
❖ 接口要求 ❖ 约束
限制条件、 精度、语言
❖ 逆向要求 ❖ 扩展要求
对系统可能 的扩充或修
数据模型:E-R图(E-RD)(本章介绍) 功能模型:数据流图(DFD) 行为模型:状态转换图(STD)(本章介绍) 数据字典:模型中心(DD)
❖ 根据上述模型整理出软件需求规格说明书
40
3.4 实体-联系图
❖ 信息模型,或概念性数据模型。 ❖ 现实世界的数据抽象,它是真实世界的最好
反映,它完全依赖于用户的角度(语义)。 ❖ 信息系统数据库分析与设计的基础,也是数
26
需求分析的过程示图
27
面向数据流方法的分析的应用
来源、数据组 成是什么?
仓库管理员
事务
定货系统
定货报表
采购员
来源:由哪个加工产生或从哪个文件读出?
数据组成:数据字典应该如何设计,大概有哪些 数据项?
28
面向数据流方法的分析的应用
名字:定货报表
别名:定货信息
描述:每天一次送给采购员的 需要定货的零件表
❖ 简易的应用规格说明技术 ❖ 快速原型法
13
用户和系统其他人员参与需求分 析
14
3.2.1 访谈
❖ 最早并且仍然广泛使用 ❖ 正式的访谈:具体问题的问答形式 ❖ 非正式的访谈:开放式、交互性的问答 ❖ 需要调查大量人员时采用“调查表”技术 ❖ 还使用“情景分析技术”(用户角度),就是
对用户将来使用目标系统解决某个具体问题 的方法和结果进行分析。
主流技术 ❖ 它提倡用户与开发者密切合作、共同标识问
题、提出解决方案,确定基本需求
32
简易的应用规格说明技术流程
初步访谈
召开讨论会
分会讨论
汇总需求
待解决问 题的范围 和方案
是否需要这个 软件以及对需 求进行组合
单独议题需求 列表的讨论
完整的需求规 格说明书
针对每个议题制
定一统一的需求 列表
33
3.2.4 快速原型法
50
3.6.1 状态
❖ 三种状态类型:初态、终态和中间态
State_1
❖ 状态图可表示循环运行过程以及单程运行过 程。
State_1
State_2
State_1
State_3
51
3.6.2 事件
❖ 某个特定时刻发生的“事情”。 ❖ 它是对引起系统做动作或(和)从一个状态转
(3) 必须描述作为外部事件结果的软件行为, 这条准则要求建立行为模型。
(4) 必须对描述信息、功能和行为的模型进行 分解,用层次的方式展示细节。
4
需求获取面临的挑战
客户说不清楚需求 需求易变性 问题的复杂性和对问题空间 理解的不完备性与不一致性
5
优秀需求具有的特性
❖ 1. 完整性 ❖ 2. 正确性 ❖ 3. 可行性 ❖ 4. 必要性 ❖ 5. 划分优先级 ❖ 6. 无二义性 ❖ 7. 可验证性
3
30
面向数据流方法的分析的应用
6
D1 库存清单
7
仓库
事务 1.1 接收
管理员
事务
事务 1.2 更新 库存
5
库存信息 1.3 处理 定货
D3 供应商信息 1
2 定货报表 产生 报表
采购员
4
2
8 D2 定货信息
3
31
3.2.3 简易的应用规格说明技术
❖ 前两种方法中,用户比较被动 ❖ 它是一种面向团队的需求收集方法,是一种
45
46
“化学制品跟踪系统”实体联系
图
化学制品仓 库存货清单
化学制品 请求
1
1
存储
执行
M M
化学制品容器
47
3.5 数据规范化
❖ 概念模型转化为数据模型后考虑的问题 ❖ 数据库中范式的定义
第一范式:原子属性 第二范式:消除部分函数依赖 第三范式:消除传递函数依赖
48
3.6 状态转换图
❖ 通过描绘系统的状态及引起系统状态转换的 事件,来表示系统的行为。
例如:上课铃响了,同学们应该进入教室准备上 课。
❖ 状态图还指明了作为特定事件的结果,系统 将做哪些动作(例如,处理数据)。
49
3.6.1 状态
❖ 状态代表系统的行为模式; ❖ 它规定了系统对事件的响应方式;(3种)
改变状态(绝大多数的系统都如此响应) 做动作(完成一定的“操作”) 既改变状态,又做动作(比较复杂)