第6章 结构化系统分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据流程图中的四大要素:
外部实体、数据处理、数据流、数据存储。
考核要求:
掌握绘制数据流程图的方法
1、数据流图的基本成分
数据流图用来记录系统中的数据和数据在特定的过程中的 流动,即数据如何被采集、处理、保存和使用的(围绕信 息系统的功能)
p1
1)外部实体
2)数据处理
3)数据流
4)数据存储
另一方面,需要系统分析员与用户精诚合作。 系统的思想与方法,这是我们分析复杂事物的有力武器。系统论 的思想方法强调系统的整体性、综合性、层次性,强调系统元素 之间的有机联系。 这里说的工具是指一些合理的图表。如作业流程图、数据流程图、 数据字典等。
② 系统的思想与方法
③ 系统分析工具
•
6.2 系统分析的主要工具
P2.2.1
识别 读者身份 图书管理员
标识部分(层次化的功能编号) 功能描述部分(动宾词组) 功能执行的角色(人,部门,计
算机程序),通常可省略
3)、数据流
数据流是指处理功能的输入或输出(箭头表示数据流向)。 例如:数据,订单,查询要求等
编 辑 合格订单 计 算 订货单 应收款
编制财 务报表
经理
构建模型首先需要识别用户的需求,识别需求一 般可以从两个方面着手:
识别系统中的事件(Events)建立过程模型(数据 流图,DFD) 识别系统中的事物(Things) 建立数据模型(实体 关系图,ER)
4) 事件与系统需求
事件——在特定时间、特定地点发生的,能够描述出 来并值得保存的的事情。 系统的所有处理过程都是由事件驱动的,所以将事件 列表并进行分析,对于定义系统需求是十分有意义的。 事件的类型: ① 外部事件(external event) ② 时间事件(temporal event) ③ 状态事件(state event)
事件名称 触发点 客户希望检查 产品的查 产品可订量 询请求
事件和DFD
事件列表中的每一个事件都可以画出一个DFD图 (需要额外添加数据存储元素)
事件列表可以作为画数据流图的一个基础和检验
列表
事件对应DFD模型的中间层 事件可以继续分解绘制其具体的处理过程(向 下细化) 系统中事件较多时,应进行分组(向上抽象)
① 在总体规划的基础上,用系统的思想和方法,与用户密切配合,对
② 分析现行系统的局限性和不足之处,找出制约现行系统的“瓶颈”,
提出新系统的逻辑模型。 ③ 最后,用《系统说明书》表达出来。
二、系统分析阶段的重要性
系统分析阶段弄清楚“现行系统是什么”,并要回答“新系统 做什么”这个关键性的问题。只有明确了问题,才有可能解决 问题。
① 外部事件
外部事件是指在系统之外发生,通常是由外部的人或 组织激发的事件,这些人或组织是数据的提供者和接 收者。
–
比如图书馆流通系统中的读者
外部事件能够导出系统需要处理的关键事务。
② 时间事件
时间事件是指当系统时间到达某一刻时发生的事件, 这些事件通常要求系统能定时自动地完成某些输出或 处理。
客户
退货确认 交易信息
客户 银行
网上订单系统的事件表
事件名称 触发点 未来客户需要 产品目录 目录 的查询请 求 客户更新基本 客户信息 信息 修改通知 市场部给客户 促销产品 发送促销材料 细节 调整产品目录 产品目录 更新细节 每日交易汇总 每天末 事件源 活动 未来客 提供产品目录 户 信息 客户 更新客户基本 信息 分发促销单 促销单 客户和未来 客户 响应结果 产品目录 事件目的地 未来客户
商品编号#_ 计算销售总额
其他图形表示
数据流图中的图形元素有不同的画法,本书使用GaneSarson画法
存取要求 储户 存折 业务 处理 帐目
2、怎样画数据流程图
数据流程图是分层次的,绘制时采取自上而下,逐层 分解的办法。
① 首先画出顶层(第一层)数据流程图。顶层数据流程
图只有一张,它说明了系统的总的处理功能、输入和
区分事件与具体响应过程
–
事件响应中的一系列交互过程是完整具体的实现, 而不是独立的一个事件。例如:拿信用卡交费 跟踪读者实现从图书馆借书的全部过程 如管理员登录系统,修改口令,每天的备份
跟踪关键业务的整个生命周期来发现事件
–
暂时忽略技术性依赖事件和系统控制事件
–
网上订单系统的事件表
事件名称 触发点 客户希望检查 产品的查 产品可订量 询请求 客户建立一个 新订单 订单 事件源 活动 客户 查询产品的 可用量 客户 建立新订单 响应结果 产品可用量详 细情况 实时连接 订单确认 订单细节 交易信息 事件目的地 客户
4)、数据存储
数据存储表示某种数据保存后的逻辑统称。不是指保存数 据的物理地点或物理介质。 流入数据存储的数据流
• 将处理后的数据写入或修改到数据存储中
流出数据存储的数据流
• 从数据存储中查询获取数据,不改变原来的数据
D2 产品 D5 职工 D2 产品
计算 销售量
销售量 D2 产品销售帐
累计销售量单价
市场部
销售部
更新产品目录
产生交易汇总 报告 产生订单汇总 报告
交易汇总报 财务部 告 订单汇总报 管理部门 告
每周订单汇总 每周末
6) 由事件导出DFD - 一个事件的DFD
事件表中能找到数据流图中出现的一些元素:
• • • • 活动对应于处理框 事件源和事件目标对应于外部实体 触发点和响应结果是与外部实体相连的数据流 只有数据存储在事件响应表中没有对应的描述 事件源 活动 客户 查询产品 的可用量 响应结果 产品可用量 详细情况 事件目的地 客户
结构化系统分析工具主要包括:
1. 作业流程图 2. 数据流程图 3. 数据字典 4. 表达处理逻辑的工具
5. 数据立即存取图
一、作业流程图
作业流程图,也称业务流程图,就是用一些规定的符号及连线 来表示某个具体业务的处理过程。
特点:
•
•
作业流程图的不足是总体观念不强,具体的处理内容表
达也不详细,很难表达决策。 对于简单的数据处理系统,用它可以分析得相当透彻,
–
如:图书馆流通系统中的按月发布逾期催还名单。
注意命名时必须包含所要完成的处理和规定期限。
③ 状态事件
系统内部的变化触发系统对某个处理的需要,这种情 况的发生称为状态事件。
–
比如:销售系统中库存数一旦低于控制点就产生订 货单
状态事件一般是外部事件的结果,它的发生是不定时 的。
5) 识别事件的规则
主要内容:
1) 需求的来源? 2) 需求有哪些种类? 3) 如何表述需求? 4) 事件与系统需求 5) 事件的识别 6) 由事件导出DFD
1) 需求的来源—系统相关者
系统需求的主要来源是与系统相关的各类人员,他们是对 系统成功感兴趣的所有人(与系统有关系的所有人,也称 涉众stakeholder)。 系统相关者:
单个DFD的组合
• 事件之间有一定的联系,一般通过数据存储建立关联
完整的数据流图
根据事件表重新组织,绘制完整的DFD模型:
按照事件表,对每一个事件建立一个DFD片段图。
把所有的DFD片段进行分组,归纳为大的处理逻辑, 形成上一层DFD(复杂系统层次更多)。
将属于一组内的DFD片段放在一张图上,形成事件层 的DFD图。 对每个事件的数据处理进一步分解为下一层DFD (复杂系统层次更多)。
及系统性能、可靠性、安全性等质量特性。
3) 如何表述需求
自然语言
不需要任何准备 但既要保证精确无二义性,又要保证叙述不至于晦 涩难懂,是困难的(随意性、误会) 模型是人们对复杂问题的一种抽象或者对实物的一 种简单实现或规划蓝图。 例如:飞机模型,建筑模型,数学模型等等。
模型
如何着手建模?
一、系统分析的任务
系统所要求解决的问题是什么 — 系统规划阶段 现行系统“是什么”和新系统“做什么”— 系统分析阶段
基本任务:
企业的业务活动进行全面的调查分析。详细掌握企业的工作流程, 收集反映业务情况的数据、报表、账单等信息资料。通过一套分层 次的数据流程图,辅以数据字典、小说明等工具来描述现行系统。
第六章 结构化系统分析
信息系统分析与设计
章节内容
本章介绍:系统分析阶段的任务、方法和工具。涉及作业流程图、
数据流程图、数据字典等主要工具。该阶段产生的系统说明书,既是 后续开发工作的依据,也是衡量一个信息系统优劣的依据。
主讲内容: 6.1 系统分析的任务 6.2 系统分析的主要工具
1、作业流程图 2、数据流程图 3、数据字典 4、表达处理逻辑的工具 5、数据立即存取图
高校教学管理系统的作业流程图
二、数据流程图
系统分析的根本目的是分析出合理的信息流动、处理、存储的过程。 数据流程分析有许多方法,基本思想都是一样的。即把一个系统看 成一个整体功能,明确信息的输入与输出,系统为了实现这个功能, 内部必然有信息的处理、传递、存储过程。这些处理又可以分别看做 整体功能,其内部又有信息的处理、传递、存储过程。如此一级一级 地剖析,直到所有处理步骤都很具体为止。
客户改变或作 修改订单 废订单 的请求 客户和管理层 订单状态 检查订单状态 的查询请 求 为订单发货 订单发货 通知 客户退货 订单退货 通知
客户 客户或 管理部 门 发装部
更新订单 查询订单的 状态 记录订单的 执行 建立退货记 录
信用卡处理 系统 客户 发装部门 银行 修改确认 客户 订单修改细节 发装部门 交易信息 银行 订单状态的详 客户或管理 细情况 部门
1)、外部实体
外部实体指系统以外又与系统有联系的人或事物。它表达 了该系统数据的外部来源和去处。 例如:人、组织、外部系统等等。 外部实体是数据的来源(谁提供了最初始的数据?) 外部实体是数据的去处(数据对谁有价值?)
读者
图书 管理员
馆长
读者
图书 管理员
2)、数据处理
处理指对数据的逻辑处理功能,就是对数据的变换功能。 别名:功能、处理过程,数据加工
6.3 6.4
提出新系统逻辑方案 系统说明书
6.1 系统分析的任务
系统分析是应用系统思想和方法,把复杂的对象 分解成简单组成部分,找出这些部分的基本属性 和彼此间的关系。
几个基本问题 :
系统分析的任务有哪些?
为什么说系统分析是研制信息系统最重要的阶段?
为什么说系统分析是研制信息系统最困难的阶段? 如何做好系统分析工作?
① 业务用户; ② 信息用户; ③ 管理用户;
④ 主管用户;
⑤ 外部用户; ⑥ 客户; ⑦ 技术人员
ห้องสมุดไป่ตู้
2) 系统需求的种类
功能性需求:功能需求是系统必须完成的活动或过程,也 就是系统将要涉及的商业应用。功能需求是根据业务过程 和业务规则确定的。
技术性需求:也称非功能性需求,是和公司的环境、硬件 和软件有关的所有可操作目标。例如:系统必须能支持 100个并发用户;保存订单的时间不能超过0.5秒等等,涉
输出。 ② 下一步是对顶层数据流程图中的“处理”进行分解。 第2张图是第一层中的处理被分解后的第二层数据流 程图中的一个。
数据流图的层次
纵观
顶层
第一层
第二层
由需求事件导出DFD
分析的重要任务是理解和表达需求,数据流图是重要的 工具之一。所以要绘制数据流图,首先要了解系统需求。 系统需求是新系统必须完成的功能或其局限性。
大量实践经验表明:如果没有搞清楚系统做什么,就直接考虑
“如何去做”,直接用编程工具去编写程序,所开发的信息系 统是要失败的。
一个信息系统开发成功的关键在于对问题的理解和描述是否准 确。可见,系统分析阶段是极其重要的。
三、系统分析的困难
系统分析的困难主要来自三个方面:
① 问题空间的理解 系统分析员缺乏足够的对象系统的业务知识;
但是用它很难表达复杂的系统。
学习要求: • 掌握作业流程图的绘制方法
实例分析:高校教学管理系统
作为高校教学管理系统,它应具有如下几项基本业务:
① 建立学生情况档案 ② 统计学生情况并形成各种统计报表
③ 建立学生变动台账
④ 制定教学计划 ⑤ 排出教师教学任务分配表
⑥ 发放教学计划编排课程表
⑦ 日常事务处理 ⑧ 更新学生成绩档案以及学生情况档案
另一方面,用户缺乏计算机方面的足够知识,不了解计算机能
做什么和不能做什么。
② 人与人之间的沟通
“隔行如隔山”
③ 环境的不断变化 IS生存在不断变化的环境中,环境会对它不断提出新的要求。
四、如何做好系统分析
① 系统分析员的素质
• •
• •
系统分析这一重要而困难的任务主要由系统分析员承担。 一方面,要求系统分析员不但具备坚实的信息系统知识,而且还 必须具备管理科学的知识。