第三章需求分析1PPT课件
合集下载
需求分析 PPT课件
9
3.3 分析建模与规格说明 3.3.1 分析建模
模型:就是为了理解事物而对事物做出的一 种抽象,是对事物的一种无歧义的书面描述。 通常,模型由一组图形符号和组织这些符号 的规则组成。
结构化分析过程:实质上是一种创建模型的 活动。系统分析员从不同角度抽象出目标系 统的特性,使用精确的表示方法构造系统的 模型,验证模型是否满足用户对目标系统的 需求,并在设计过程中逐渐把和实现有关的 细节加进模型中,直至最终用程序实现模型。
带箭头的连线:称为状态转换,箭头指明了转 换方向。
19
状态图中使用的主要符号
20
活动表的语法格式: 事件名(参数表)/动作表达式
“事件名”可以是任何事件的名称。 常用的3种标准事件:
entry事件指定进入该状态的动作; exit事件指定退出该状态的动作; do事件则指定在该状态下的动作。
数据对象 数据对象的属性 数据对象彼此间相互连接的关系
14
实体-联系图的符号
ER图中包含: 实体(即数据对象),用矩形框表示; 关系,用连接相关实体的菱形框表示; 属性,用椭圆形或圆角矩形表示,并用直线
把实体(或关系)与其属性连接起来。
15
例1:某校教学管理系统的ER图
16
状态转换图
需要时可以为事件指定参数表。活动表中的 动作表达式描述应做的具体动作。
21
事件表达式的语法: 事件说明[守卫条件]/动作表达式
事件说明的语法为:事件名(参数表)。 守卫条件是一个布尔表达式。如果同时使用
事件说明和守卫条件,则当且仅当事件发生 且布尔表达式为真时,状态转换才发生。如 果只有守卫条件没有事件说明,则只要守卫 条件为真状态转换就发生。 动作表达式是一个过程表达式,当状态转换 开始时执行该表达式。
3.3 分析建模与规格说明 3.3.1 分析建模
模型:就是为了理解事物而对事物做出的一 种抽象,是对事物的一种无歧义的书面描述。 通常,模型由一组图形符号和组织这些符号 的规则组成。
结构化分析过程:实质上是一种创建模型的 活动。系统分析员从不同角度抽象出目标系 统的特性,使用精确的表示方法构造系统的 模型,验证模型是否满足用户对目标系统的 需求,并在设计过程中逐渐把和实现有关的 细节加进模型中,直至最终用程序实现模型。
带箭头的连线:称为状态转换,箭头指明了转 换方向。
19
状态图中使用的主要符号
20
活动表的语法格式: 事件名(参数表)/动作表达式
“事件名”可以是任何事件的名称。 常用的3种标准事件:
entry事件指定进入该状态的动作; exit事件指定退出该状态的动作; do事件则指定在该状态下的动作。
数据对象 数据对象的属性 数据对象彼此间相互连接的关系
14
实体-联系图的符号
ER图中包含: 实体(即数据对象),用矩形框表示; 关系,用连接相关实体的菱形框表示; 属性,用椭圆形或圆角矩形表示,并用直线
把实体(或关系)与其属性连接起来。
15
例1:某校教学管理系统的ER图
16
状态转换图
需要时可以为事件指定参数表。活动表中的 动作表达式描述应做的具体动作。
21
事件表达式的语法: 事件说明[守卫条件]/动作表达式
事件说明的语法为:事件名(参数表)。 守卫条件是一个布尔表达式。如果同时使用
事件说明和守卫条件,则当且仅当事件发生 且布尔表达式为真时,状态转换才发生。如 果只有守卫条件没有事件说明,则只要守卫 条件为真状态转换就发生。 动作表达式是一个过程表达式,当状态转换 开始时执行该表达式。
第3章需求分析ppt课件
观点对数据建立的模型。它描述了从用户角度看到的数据, 反映了用户的现实环境,而且与在软件系统中的实现方法无 关。 数据模型中包含3种相互关联的信息:数据对象(实体)、数 据对象的属性及数据对象彼此间相互连接的关系。
(1). 数据对象
数据对象: 是对软件必须理解的复合信息的抽象。 复合信息: 是指具有一系列不同性质或属性的事物,
或升级?
7
(2) 性能需求
软件开发的技术性指标 例如:
• 存储容量限制 • 执行速度、相应时间 • 吞吐量
8
(3) 环境需求
• 硬件设备:机型、外设、接口、
地点、分布、温度、 湿度、磁场干扰等
•软件:
操作系统 网络 数据库
9
(4) 界面需求
• 有来自其它系统的输入吗? • 到自其它系统的输出吗? • 对数据格式有规定吗? • 对数据存储介质有规定吗?
第3章 需求分析
为什么需要需求分析
开发人员往往急于求成 希望对开发进行指导 希望开发人员对用户的要求理解 希望用户理解开发人员 测试部门有理可依
2
需求分析的任务
准确地定义未来系统的目标,确定为了满 足用户的需求系统必须做什么。用 <需求规格 说明书> 规范的形式准确地表达用户的需求。
开发人员同意的。
24
软件客户需求义务书 (1)(Note 13)
客户有下列义务: 1. 给分析人员讲解业务及说明业务方面的术语等专业问题。 2. 抽出时间清楚地说明需求并不断完善。 3. 当说明系统需求时,力求准确详细。 4. 需要时要及时对需求做出决策。 5. 要尊重开发人员的成本估算和对需求的可行性分析。
•建立分析小组
领域专家: 主角 系统分析员:导演
(1). 数据对象
数据对象: 是对软件必须理解的复合信息的抽象。 复合信息: 是指具有一系列不同性质或属性的事物,
或升级?
7
(2) 性能需求
软件开发的技术性指标 例如:
• 存储容量限制 • 执行速度、相应时间 • 吞吐量
8
(3) 环境需求
• 硬件设备:机型、外设、接口、
地点、分布、温度、 湿度、磁场干扰等
•软件:
操作系统 网络 数据库
9
(4) 界面需求
• 有来自其它系统的输入吗? • 到自其它系统的输出吗? • 对数据格式有规定吗? • 对数据存储介质有规定吗?
第3章 需求分析
为什么需要需求分析
开发人员往往急于求成 希望对开发进行指导 希望开发人员对用户的要求理解 希望用户理解开发人员 测试部门有理可依
2
需求分析的任务
准确地定义未来系统的目标,确定为了满 足用户的需求系统必须做什么。用 <需求规格 说明书> 规范的形式准确地表达用户的需求。
开发人员同意的。
24
软件客户需求义务书 (1)(Note 13)
客户有下列义务: 1. 给分析人员讲解业务及说明业务方面的术语等专业问题。 2. 抽出时间清楚地说明需求并不断完善。 3. 当说明系统需求时,力求准确详细。 4. 需要时要及时对需求做出决策。 5. 要尊重开发人员的成本估算和对需求的可行性分析。
•建立分析小组
领域专家: 主角 系统分析员:导演
03需求分析PPT课件
用户类型? 各种用户熟练程度? 需受何种训练? 用户理解、使用系统的难度? 用户错误操作系统的可能性?
2020年9月28日
15
(6) 文档需求
需哪些文档? 文档针对哪些读者?
2020年9月28日
16
(7) 数据需求
输入、输出数据的格式? 接收、发送数据的频率? 数据的准确性和精度? 数据流量? 数据需保持的时间?
2020年9月28日
19
(10) 软件成本消耗与开发进度需求
开发有规定的时间表吗? 软硬件投资有无限制?
2020年9月28日
20
(11) 质量保证
系统的可靠性要求?
系统必须监测和隔离错误吗? 规定系统平均出错时间? 出错后,重启系统允许的时间? 系统变化如何反映到设计中? 维护是否包括对系统的改进? 系统的可移植性?
统
描述现实系统是 如何在物理上实 现的。
目 描述新系统的主要 标 业务功能和用户新 系 的需求,无论系统 统 应如何实施。
2020年9月28日
描述新系统是如 何实施的(包括 技术)。
23
需求分析过程示意
(1) 通过对现实环境的调查,获取请
教务科
购 书 单
12
(3) 环境需求
硬件设备:机型、外设、接口、 地点、分布、温度、 湿度、磁场干扰等
软件: 操作系统 网络 数据库
2020年9月28日
13
(4) 界面需求
有来自其它系统的输入吗? 到自其它系统的输出吗? 对数据格式有规定吗? 对数据存储介质有规定吗?
2020年9月28日
14
(5) 用户或人的因素
准确地定义未来系统的目标,确定为了 满足用户的需求“系统必须做什么”。用 《需求规格说明书》规范的形式准确地表 达用户的需求。
2020年9月28日
15
(6) 文档需求
需哪些文档? 文档针对哪些读者?
2020年9月28日
16
(7) 数据需求
输入、输出数据的格式? 接收、发送数据的频率? 数据的准确性和精度? 数据流量? 数据需保持的时间?
2020年9月28日
19
(10) 软件成本消耗与开发进度需求
开发有规定的时间表吗? 软硬件投资有无限制?
2020年9月28日
20
(11) 质量保证
系统的可靠性要求?
系统必须监测和隔离错误吗? 规定系统平均出错时间? 出错后,重启系统允许的时间? 系统变化如何反映到设计中? 维护是否包括对系统的改进? 系统的可移植性?
统
描述现实系统是 如何在物理上实 现的。
目 描述新系统的主要 标 业务功能和用户新 系 的需求,无论系统 统 应如何实施。
2020年9月28日
描述新系统是如 何实施的(包括 技术)。
23
需求分析过程示意
(1) 通过对现实环境的调查,获取请
教务科
购 书 单
12
(3) 环境需求
硬件设备:机型、外设、接口、 地点、分布、温度、 湿度、磁场干扰等
软件: 操作系统 网络 数据库
2020年9月28日
13
(4) 界面需求
有来自其它系统的输入吗? 到自其它系统的输出吗? 对数据格式有规定吗? 对数据存储介质有规定吗?
2020年9月28日
14
(5) 用户或人的因素
准确地定义未来系统的目标,确定为了 满足用户的需求“系统必须做什么”。用 《需求规格说明书》规范的形式准确地表 达用户的需求。
《需求分析》课件
2
需求验证
确认需求是否满足用户期望和项目目标。
3
需求变更
控制需求变更,确保变更符合项目目标。
需求跟踪和追踪
介绍如何跟踪和追踪需求,确保项目的需求得到满足并实现。
需求与设计的关系
讨论需求分析与设计之间的密切联系,以及设计如何满足需求。
《需求分析》PPT课件
通过本课件,我们将深入探讨需求分析的重要性、定义和作用,以及步骤流 程、方法技巧,并介绍需求文档的编写和维护,需求评审和验证的重要性, 以及需求的变更和控制等方面知识。
理解需求分析的重要性
深入理解需求分析在项目开发中的关键作用,如何准确识别用户和业务需求,并对需求变更进行控制。
需求分析的定义和作用
详细介绍需求分析的定义和作用,以及为什么需求分析在项目开发过程中至 关重要。
需求分析的步骤和流程
1
需求识别
确保全面获取项目的用户需求和业务需求。
2
需求分析
对收集到的需求进行分析、整理和归纳。
3
需求验证
确认需求的准确性、一致性和完整性。
需求收集的方法和技巧
用户访谈
与用户面对面交流,深入问卷,收集用户的反馈和意见。
观察研究
观察用户在实际场景中的行为和需求。
用户需求和业务需求的区别
解释用户需求和业务需求的概念,并强调两者的重要区别和关联。
需求文档的编写和维护
提供编写和维护高质量需求文档的方法、技巧和最佳实践。
需求评审和验证
1
需求评审
确保需求的准确性和可行性,提前发现和解决潜在问题。
第3章需求分析PPT课件
49%不正确的事实,31%疏忽,l 3%不一致,5%二义性
28.09.2020
6
需求分析的重要性
需求错误是可以被检查出来的
28.09.2020
7
需求分析的重要性
在需求过程中会产生很多错误。 许多错误并没有在早期被发现。 这样的错误是能够在产生的初期被检查出来的。 如果没有及时检查出来这些错误,软件费用会直
T h e top factors w ere rep orted to b e
1 . in co m p lete req u irem en ts (1 3 .1 % )
2 . la ck o f u ser in v o lv em en t (1 2 .4 % )
3 . la ck o f reso u rces (1 0 .6 % )
28.09.2020
3
需求分析的重要性
To u n d ersta n d w h y, Sta n d ish (1 9 9 5 ) a sk ed th e su rv e y
resp o n dຫໍສະໝຸດ en ts to ex p la in th e ca u ses of th e fa iled p ro jects.
线上升
28.09.2020
8
需求工程
需求是什么?需求就是以一种清晰、简洁、一致
且无二义性的方式,对一个待开发系统中各个有 意义方面的陈述的一个集合。
需求工程一般指应用已证实有效的原理、方法,
通过合适的工具和记号,系统地描述出待开发系 统及其行为特征和相关约束;通常是一些过程的 集合:需求获取(需求引出)、需求分析和编写软 件规格说明书(SRS)及验证(包括鉴定和证实)。
28.09.2020
6
需求分析的重要性
需求错误是可以被检查出来的
28.09.2020
7
需求分析的重要性
在需求过程中会产生很多错误。 许多错误并没有在早期被发现。 这样的错误是能够在产生的初期被检查出来的。 如果没有及时检查出来这些错误,软件费用会直
T h e top factors w ere rep orted to b e
1 . in co m p lete req u irem en ts (1 3 .1 % )
2 . la ck o f u ser in v o lv em en t (1 2 .4 % )
3 . la ck o f reso u rces (1 0 .6 % )
28.09.2020
3
需求分析的重要性
To u n d ersta n d w h y, Sta n d ish (1 9 9 5 ) a sk ed th e su rv e y
resp o n dຫໍສະໝຸດ en ts to ex p la in th e ca u ses of th e fa iled p ro jects.
线上升
28.09.2020
8
需求工程
需求是什么?需求就是以一种清晰、简洁、一致
且无二义性的方式,对一个待开发系统中各个有 意义方面的陈述的一个集合。
需求工程一般指应用已证实有效的原理、方法,
通过合适的工具和记号,系统地描述出待开发系 统及其行为特征和相关约束;通常是一些过程的 集合:需求获取(需求引出)、需求分析和编写软 件规格说明书(SRS)及验证(包括鉴定和证实)。
03第三章 软件需求分析精品PPT课件
统计资料:
In 1994, the Standish Group surveyed over 350 companies about their over 8000 software projects to find out how well they were faring. The results are sobering. Thirty-one percent of the software projects were canceled before they were completed. Moreover, in large companies, only 9% of the projects were delivered on time and cost what they were budgeted, and 16% met those criteria in small companies (Standish 1994).
2021/1/1
仲恺农业技术学院计算机与电子工程学院
4
在美国高科技历史上曾有过令人痛心的事件: 大家知道,DEC曾经是美国三大计算机公司之一,几年前
被康柏收购,从地球上消失,成为美国计算机界一大憾事。 DEC曾以众多的高新技术著称于世。其中,它在最后的几年里 研发出的 Alpha 计算机芯片更以卓越的技术在性能上超过了 Intel, sun 和其他厂家的芯片。微软也曾大力协助 DEC ,将 Windows Nt 移植到 Alpha 系统,然而,Alpha 在市场上彻底地 失败了,成为 DEC 最终失败的原因之一。
the Ariane-5, a space rocket belonging to the European Space Agency (ESA). On June 4, 1996, on its maiden flight, the Ariane-5 was launched and performed perfectly for approximately 40 seconds. Then, it began to veer off course. At the direction of an Ariane ground controller, the rocket was destroyed by remote
需求分析PPT课件
4 运行环境接口 4.4 控制
3.4 实体-联系图(ER)
➢ ER图 ---- 是用来建立数据模型的工具。 ➢ 数据模型 ---- 它描述了从用户角度看到的数据,
反映了用户的现实环境,而且与在软件系统中 的实现方法无关。 ➢ 数据模型中包含3种相互关联的信息:数据对象 (实体)、数据对象的属性及数据对象彼此间 相互连接的关系。
❖ 抽象和分解是这个方法的主要手段,由于数 据传递与变换而形成的数据流,是这个方法 的主要依据。
面向数据流自顶向下求精
需求分析的结果
❖需求分析所要做的工作是深入描述软件的功 能和性能,确定软件设计的约束和软件同其 他系统元素的接口细节,定义软件的其他有 效性需求。
❖分析员通过需求分析,逐步细化软件分配, 描述软件要处理的信息域,并给软件开发提 供一种可转化为数据设计、结构设计和过程 设计的信息与功能表示。
第3章 需求分析
3.1 需求分析的任务 3.2 与用户沟通获取需求的方法 3.3 分析建模与规格说明 3.4 实体-联系图 3.5 数据规范化 3.6 状态转换图+有穷状态机 3.7 其他图形工具 3.8 验证软件需求 3.9 小结
需求分析的意义
软件需求的深入理解是软件开发工作获得成 功的前提条件,不论我们把设计和编码做得如何 出色,不能真正满足用户需求的程序只会令用户 失望,给开发带来烦恼。
3. 表格中各行 (行表示元组) 互不相同,行的次序任意。
教工号 001 002
姓名 张毅坤 李林
性别 男 女
职称 教授 讲师
职务 院长
通常用范式定义消除数据冗余的程度
1、随着范式级别的提高,数据的存储结构与基 于问题域的结构间的匹配程度也随之下降。 2、范式级别提高则需要访问的表增多,因此性能 (速度)将下降。
管理经济学-第三章需求分析
06
需求的收入弹性
定义
需求的收入弹性是指当消费者的收入发生变化时,需 求量变动的程度。具体来说,它衡量了需求量对收入 变动的敏感程度。
需求的收入弹性通常用需求量变动的百分比与收入变 动的百分比的比值来表示。
分类
01
正常品
需求的收入弹性大于零的商品, 即随着收入的增加,需求量也相 应增加。
劣等品
非线性需求函数
非线性需求函数是指需求量与价格之间呈非线性关系,通常表示为:Qd = f(P) 其中,f(P)是一个关于P的函数,可以 是二次函数、三次函数或其他形式的函数。
指数需求函数
指数需求函数是指需求量与价格之间呈指数关系,通常表示为:Qd = e^(-aP) 其中,a是常数,Qd和P 分别代表需求量和价格。
具体计算时,需要先确定商品B需求变化量 以及商品A价格变化量,然后带入公式进行
计算。
应用场景
交叉弹性在市场营销中具有重要应用价值。例如,当企业分析其产品与竞争对手产品之间的关系时,可以利用交叉弹性来评 估产品之间的替代或互补程度,从而制定有效的营销策略。
另外,交叉弹性也可以用于分析不同产品之间的关联程度,帮助企业了解市场需求和消费者行为,从而更好地制定产品定价 、促销和分销策略。
05
需求的交叉弹性
定义
交叉弹性是指一种商品的需求量对另一种商品价格变动的反 应程度。具体来说,它衡量了一种商品价格变化百分之一时 ,另一种商品需求量变化的百分比。
交叉弹性可以分为正交叉弹性和负交叉弹性,正交叉弹性表 示两种商品为替代品,负交叉弹性表示两种商品为互补品。
计算方法
交叉弹性 = (商品B需求变化量 / 商品B原始 需求量) / (商品A价格变化量 / 商品A原始价 格)
第三章:需求分析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章_需求分析
• 输入输出数据的格式 • 数据的取值范围 • 接收或发送数据的频率 • 数据的精确性如何? • 数据必须保存多久时间?
需求内容——接口
• 有来自其它系统的输入吗 • 有到其它系统的输出吗 • 对数据格式有规定吗 • 对数据存储介质有特殊要求
需求内容——性能
• 对执行速度有无限制? • 对响应时间有无限制? • 对吞吐率有无限制? • 对存储容量有无限制?
• 系统的可靠性如何? • 系统必须监测和隔离错误吗? • 平均出错时间为多少? • 系统可移植性如何?
需求内容——安全性
• 必须对访问系统或系统信息加以控制吗? • 一个用户的数据与其他用户的数据关系
如何? • 用户程序与其它程序或操作系统要隔离
开来吗? • 多长时间需要备份? • 备份数据存放位置 • 需要防火或防盗吗?
2.在对数据流图分层细化时,必须保持信息的连续 性。即:分解前、后的输入/输出数据流必须相同。
3.在功能级数据流图中,可根据需要给处理和数据 存储增加编号,便于引用和追踪。同时编号应反 映处理的分解层次;
4.一张数据流图中的包含的处理控制在5~9个,因此 数据流图应该使用分层和画分图的方法。
需求获取的内容
• 功能性需求和非功能性需求. • 功能性需求:定义系统做什么,包括系统的
所有输入,输出,以及如何从输入到输出. • 非功能性需求(性能):系统对效率,可靠性,
安全性,可维护性,可移植性,吞吐量及符合 某种标准等要求.
需求内容——功能
• 系统将做什么? • 系统何时及如何修改?
需求内容——数据
• 二个阶段:需求获取和需求规约. • 系统分析员 • 对象:用户 • 目标:对要达到的目标或所解决的问题有
一个清楚而明确的认识. • 成果:需求规格说明书
需求内容——接口
• 有来自其它系统的输入吗 • 有到其它系统的输出吗 • 对数据格式有规定吗 • 对数据存储介质有特殊要求
需求内容——性能
• 对执行速度有无限制? • 对响应时间有无限制? • 对吞吐率有无限制? • 对存储容量有无限制?
• 系统的可靠性如何? • 系统必须监测和隔离错误吗? • 平均出错时间为多少? • 系统可移植性如何?
需求内容——安全性
• 必须对访问系统或系统信息加以控制吗? • 一个用户的数据与其他用户的数据关系
如何? • 用户程序与其它程序或操作系统要隔离
开来吗? • 多长时间需要备份? • 备份数据存放位置 • 需要防火或防盗吗?
2.在对数据流图分层细化时,必须保持信息的连续 性。即:分解前、后的输入/输出数据流必须相同。
3.在功能级数据流图中,可根据需要给处理和数据 存储增加编号,便于引用和追踪。同时编号应反 映处理的分解层次;
4.一张数据流图中的包含的处理控制在5~9个,因此 数据流图应该使用分层和画分图的方法。
需求获取的内容
• 功能性需求和非功能性需求. • 功能性需求:定义系统做什么,包括系统的
所有输入,输出,以及如何从输入到输出. • 非功能性需求(性能):系统对效率,可靠性,
安全性,可维护性,可移植性,吞吐量及符合 某种标准等要求.
需求内容——功能
• 系统将做什么? • 系统何时及如何修改?
需求内容——数据
• 二个阶段:需求获取和需求规约. • 系统分析员 • 对象:用户 • 目标:对要达到的目标或所解决的问题有
一个清楚而明确的认识. • 成果:需求规格说明书
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第 44页页
注意 ① 需求分析阶段,系统分析员的主要关注点是“做什
么( what ) ” ,不是“怎样做( how)”; ② 需求分析阶段,系统分析员应该给出软件需求规格
书。
第 55页页
§3.1需求分析的任务
▪ 四项主要任务: 1 、确定对系统的综合要求 2 、分析系统的数据要求 3 、导出系统的逻辑模型 4 、修正系统开发计划
▪ 数据流图(Data Flow Diagram,DFD) :用来创建功能模 型,描述了信息流和数据转换。
▪ 教学目的:了解需求分析的任务和步骤、评审标准 和过程;掌握基本技术,理解需求规格说明书的作 用与组成。
▪ 教学重点:基本技术、需求规格说明书的作用与组 成。
▪ 教学难点:基本技术。
第 33页页
需求分折简介
▪ 软件需求指用户对所开发的软件在功能、性能、 环境、可靠性等各方面的要求。
▪ 需求分析主要回答待开发的系统必须“做什么” ,并用 《 需求规格说明书 》 的形式准确、详细、 规范地表达出来。
第 2222页页
例:结构化分析方法建立的需求模型
▪ 结构化分析( Structured Analysis , SA )是面向数据流 进行分析的方法,主要建立以下几种模型:
▪ 实体关系图(Entity-Relationship Diagram,E-R图)来创建数 据模型,描述系统中所有重要的数据对象;
密切合作,共同标识问题,提出解决方案要素,商 讨不同方案并指定基本需求。 ▪ 具体过程见教材 P60 面 ▪ 提问:此方法将产生什么样的产品?
第 1188页页
§3.2.4快速建立软件原型
▪ 快速原形就是快速建立起来的旨在演示目标系统主要 功能的可运行的程序。
▪ 要点: ▪ 实现用户看得见的功能,省略目标系统“隐含”功能
第 2200页页
§3.3分析建模与规格说明
▪ §3 . 3 . 1 分析建模 ▪ 什么是模型? ▪ 为了理解事物而对事物做出的一种抽象,是对事
物的一种无歧义的书面描述。
▪ 模型通常由一组图形符号和组织这些符号的规则 组成。
第 2211页页
模型的作用
在建模过程中了解系统。 通过抽象降低复杂性。 有助于回忆所有的细节。 有助于开发小组间的交流。 有助于与用户的交流。 为系统的维护提供文档
包括建立:
详细的数据流图,描绘数据在软件系统内从输入移动到输 出的过程中所经受到变换;
数据字典:定义数据流图中包含的元素; 实体关系( ER )图:从用户角度描述数据; IPO 图:描述数据流图中处理框的功能和算法。
第 1166页页
面向数据流自顶向下求精过程
第 1177页页
§3.2.3简易的应用规格说明技术 ▪ 一种面向团队的需求收集法,提倡用户与开发者
需求分析
第 11页页
第三章 软件需求分析
3 . 1 需求分析的任务 3 . 2 与用户沟通获取需求的方法 3 . 3 分析建模与规格说明 3 . 4 实体一联系图 3 . 5 数据规范化 3 . 6 状态转换图 3 . 7 其他图形工具 3 . 8 验证软件需求 3 . 9 小结
第 22页页
教学要求
可采用调查表形式 可使用情景分析技术
第 1144页页
例:某出版社系统调查表
编号
提出问题
1
您在哪个部门工作?每日都处理哪些文件、数据、报表?
2
出版业务流程是什么?
3
工作中手工处理特别麻烦的事情是什么?
4
手工处理有什么问题解决不了?影响效率的问题有哪些?
5
您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?
第 66页页
提问并思考:
▪
如果你是一个用户,你会对将要开发的软件
有哪些要求?
第 77页页
§3.1.1确定对系统的综合要求
① 功能需求。指定系统必须提供的服务。 ② 性能需求。指定系统必须满足的定时约束或容量约束等。 ③ 可靠性和可用性需求。应定量指定。 ④ 出错处理需求。指环境错误,非系统本身的错误。 ⑤ 接口需求。常见的接口需求:用户接口需求;硬件接口需求;
6
您的部门需要成本核算和统计的内容有哪些?
7
您的部门采用计算机管理工作情况如何?
8
如何改进业务流程使之更合理?
9
哪些问题是目前传统手工方法根本无法解决的?
10 出版社计算机管理信息系统需要解决什么问题?
第 1155页页
§3.2 面向数据流自顶向下求精
▪ 结构化分析方法的实质。 ▪ 进一步细化可行性研究阶段获得到高层数据流图。
软件接口需求;通信接口需求。
⑥ 约束。常见的约束:精度;工具和语言约束;设计约束;应
该使用的标准;应该使用的硬件平台。
⑦逆向需求。指定系统不应该做什么, ⑧将来可能提出的要求。
第 88页页
§3.1.2分析系统的数据要求 ▪ 提问并思考: ▪ 如果你是设计者,除了上述需求以外,你觉得还
需要得到哪些要求? ▪ 答:软件系统本质上是信息处理系统,要考虑数
第 1111页页
图:软件需求分析的通信途径 ▪ 分析小组成员主要包括领域专家、系统分析员; ▪ 客户访谈 ▪ 问题分析与确认
第 1122页页
与用户沟通的方法 ▪ 1、访谈 ▪ 2、面向数据流自顶向下求精 ▪ 3、简易的应用规格说明技术 ▪ 4、快速建立软件原型
第 1133页页
§3.2.1 访谈 ▪ 分正式和非正式访谈。
。
第 1199页页
§3.2.4快速建立软件原型
▪ 建立和修改原型的方法和工具: ▪ (1)第四代技术。包括众多数据库查询和报表语言、程序和应用系
统生成器以及其他非常高级的非过程语言。能快速生成可执行的 代码。 ▪ (2)可重用的软件构件。使用一组已有的软件构件(也称为组件) 来装配(而不是从头构造)原型。 ▪ (3)形式化规格说明和原型环境。在交互式环境下,用自动工具把 基于形式语言的规格说明翻译成可执行的程序代码。
据和数据处理的问题。
第 99页页
对系统数据的分析 ▪ 建立数据(3. 4 节) ; ▪ 描绘数据结构(3. 7 节) ; ▪ 规范化( 3. .1.3 导出系统的逻辑模型
▪ 用数据流图、实体一联系图、状态转换图、数据字 典和主要的处理算法描述这个逻辑模型。
§ 3. 1 . 4 修正系统开发计划 根据在分析过程中获得的对系统的更深入更具体的 了解,可以比较准确地估计系统的成本和进度,修 正以前制定的开发计划。
注意 ① 需求分析阶段,系统分析员的主要关注点是“做什
么( what ) ” ,不是“怎样做( how)”; ② 需求分析阶段,系统分析员应该给出软件需求规格
书。
第 55页页
§3.1需求分析的任务
▪ 四项主要任务: 1 、确定对系统的综合要求 2 、分析系统的数据要求 3 、导出系统的逻辑模型 4 、修正系统开发计划
▪ 数据流图(Data Flow Diagram,DFD) :用来创建功能模 型,描述了信息流和数据转换。
▪ 教学目的:了解需求分析的任务和步骤、评审标准 和过程;掌握基本技术,理解需求规格说明书的作 用与组成。
▪ 教学重点:基本技术、需求规格说明书的作用与组 成。
▪ 教学难点:基本技术。
第 33页页
需求分折简介
▪ 软件需求指用户对所开发的软件在功能、性能、 环境、可靠性等各方面的要求。
▪ 需求分析主要回答待开发的系统必须“做什么” ,并用 《 需求规格说明书 》 的形式准确、详细、 规范地表达出来。
第 2222页页
例:结构化分析方法建立的需求模型
▪ 结构化分析( Structured Analysis , SA )是面向数据流 进行分析的方法,主要建立以下几种模型:
▪ 实体关系图(Entity-Relationship Diagram,E-R图)来创建数 据模型,描述系统中所有重要的数据对象;
密切合作,共同标识问题,提出解决方案要素,商 讨不同方案并指定基本需求。 ▪ 具体过程见教材 P60 面 ▪ 提问:此方法将产生什么样的产品?
第 1188页页
§3.2.4快速建立软件原型
▪ 快速原形就是快速建立起来的旨在演示目标系统主要 功能的可运行的程序。
▪ 要点: ▪ 实现用户看得见的功能,省略目标系统“隐含”功能
第 2200页页
§3.3分析建模与规格说明
▪ §3 . 3 . 1 分析建模 ▪ 什么是模型? ▪ 为了理解事物而对事物做出的一种抽象,是对事
物的一种无歧义的书面描述。
▪ 模型通常由一组图形符号和组织这些符号的规则 组成。
第 2211页页
模型的作用
在建模过程中了解系统。 通过抽象降低复杂性。 有助于回忆所有的细节。 有助于开发小组间的交流。 有助于与用户的交流。 为系统的维护提供文档
包括建立:
详细的数据流图,描绘数据在软件系统内从输入移动到输 出的过程中所经受到变换;
数据字典:定义数据流图中包含的元素; 实体关系( ER )图:从用户角度描述数据; IPO 图:描述数据流图中处理框的功能和算法。
第 1166页页
面向数据流自顶向下求精过程
第 1177页页
§3.2.3简易的应用规格说明技术 ▪ 一种面向团队的需求收集法,提倡用户与开发者
需求分析
第 11页页
第三章 软件需求分析
3 . 1 需求分析的任务 3 . 2 与用户沟通获取需求的方法 3 . 3 分析建模与规格说明 3 . 4 实体一联系图 3 . 5 数据规范化 3 . 6 状态转换图 3 . 7 其他图形工具 3 . 8 验证软件需求 3 . 9 小结
第 22页页
教学要求
可采用调查表形式 可使用情景分析技术
第 1144页页
例:某出版社系统调查表
编号
提出问题
1
您在哪个部门工作?每日都处理哪些文件、数据、报表?
2
出版业务流程是什么?
3
工作中手工处理特别麻烦的事情是什么?
4
手工处理有什么问题解决不了?影响效率的问题有哪些?
5
您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?
第 66页页
提问并思考:
▪
如果你是一个用户,你会对将要开发的软件
有哪些要求?
第 77页页
§3.1.1确定对系统的综合要求
① 功能需求。指定系统必须提供的服务。 ② 性能需求。指定系统必须满足的定时约束或容量约束等。 ③ 可靠性和可用性需求。应定量指定。 ④ 出错处理需求。指环境错误,非系统本身的错误。 ⑤ 接口需求。常见的接口需求:用户接口需求;硬件接口需求;
6
您的部门需要成本核算和统计的内容有哪些?
7
您的部门采用计算机管理工作情况如何?
8
如何改进业务流程使之更合理?
9
哪些问题是目前传统手工方法根本无法解决的?
10 出版社计算机管理信息系统需要解决什么问题?
第 1155页页
§3.2 面向数据流自顶向下求精
▪ 结构化分析方法的实质。 ▪ 进一步细化可行性研究阶段获得到高层数据流图。
软件接口需求;通信接口需求。
⑥ 约束。常见的约束:精度;工具和语言约束;设计约束;应
该使用的标准;应该使用的硬件平台。
⑦逆向需求。指定系统不应该做什么, ⑧将来可能提出的要求。
第 88页页
§3.1.2分析系统的数据要求 ▪ 提问并思考: ▪ 如果你是设计者,除了上述需求以外,你觉得还
需要得到哪些要求? ▪ 答:软件系统本质上是信息处理系统,要考虑数
第 1111页页
图:软件需求分析的通信途径 ▪ 分析小组成员主要包括领域专家、系统分析员; ▪ 客户访谈 ▪ 问题分析与确认
第 1122页页
与用户沟通的方法 ▪ 1、访谈 ▪ 2、面向数据流自顶向下求精 ▪ 3、简易的应用规格说明技术 ▪ 4、快速建立软件原型
第 1133页页
§3.2.1 访谈 ▪ 分正式和非正式访谈。
。
第 1199页页
§3.2.4快速建立软件原型
▪ 建立和修改原型的方法和工具: ▪ (1)第四代技术。包括众多数据库查询和报表语言、程序和应用系
统生成器以及其他非常高级的非过程语言。能快速生成可执行的 代码。 ▪ (2)可重用的软件构件。使用一组已有的软件构件(也称为组件) 来装配(而不是从头构造)原型。 ▪ (3)形式化规格说明和原型环境。在交互式环境下,用自动工具把 基于形式语言的规格说明翻译成可执行的程序代码。
据和数据处理的问题。
第 99页页
对系统数据的分析 ▪ 建立数据(3. 4 节) ; ▪ 描绘数据结构(3. 7 节) ; ▪ 规范化( 3. .1.3 导出系统的逻辑模型
▪ 用数据流图、实体一联系图、状态转换图、数据字 典和主要的处理算法描述这个逻辑模型。
§ 3. 1 . 4 修正系统开发计划 根据在分析过程中获得的对系统的更深入更具体的 了解,可以比较准确地估计系统的成本和进度,修 正以前制定的开发计划。