MIS原理与应用 第七讲 系统需求分析之 逻辑模型
业务流程图的绘制方法 数据流程图的绘制步骤 数据流程图的绘制原则 数据字典的主要内容 数据字典的编写要求 数据加工逻辑的描述方法 第七讲 系统需求分析之逻辑模型 业务流程图的绘制方法 数据流程图的绘制步骤 数据流程图的绘制原则 数据字典的主要内容 数据字典的编写要求 数据加工逻辑的描述方法 新系统逻辑模型的开发过程 系统分析说明书的内容与格式
业务流程图的绘制方法 详细调查同步绘制业务流程图(BPD)业务流程分析和业务流程重组(BPR)绘制数据流程图(DFD)。 若企业存在业务流程重组的规划: BPR尚未实施:详细调查针对原有业务流程 BPR已经实施:详细调查针对重组后的业务流程 分层业务流程图: 一般来说,反映系统总体业务概况的高层业务流程图只有一张。从主要负责人面谈开始,随着调查内容的深入,逐步向下扩展形成若干低层业务流程图。 高层业务流程图不应过于关注流程的细节。 业务流程图的审查: 与用户管理人员共同审查是否正确、有无遗漏。 检查高层与低层BPD之间的完整性和一致性。 对无输入或无输出的业务功能进行复审。 审查业务活动和数据载体的名称,确认名称准确,不存在同名异义或异名同义的现象。 审查确认无误后,形成正式文档,用户签字确认,纳入基线管理。
数据流程图的绘制步骤 确定系统的外部项,即系统的数据来源与去处。 确定系统的输入数据流和输出数据流,把系统作 为一个加工环节,画出关联图(背景图) 。 参教材P164图6-23 确定系统的主要功能,据此将系统分解为几个子 系统; 确定各个功能的输入输出数据流、以及与功能相 关的数据存储; 给各数据加工、数据流、数据存储命名和编号, 绘出DFD的顶层图。 参教材P165图6-24(图0)
数据流程图的绘制步骤 采用自顶向下、逐步细化的原则,对顶层图中全 部或部分数据加工进行分解,画出分解后的DFD 。逐层重复分解,直至各功能足够简单(可用一 张A4纸清晰说明)。参教材P165-166图6-25 至图6-28(图1至图5) 审查和修改DFD:主要检查分解是否恰当和彻底 、各层之间的完整性和一致性、命名和编号是否 正确合理。 用户确认DFD:描述是否准确合理、是否符合实 际情况、是否满足信息需求,有无进一步的意见 和要求。修改DFD直到双方满意为止。
数据流程图的绘制原则 明确系统边界(界面):识别出不受系统控制、但又影响 系统运行的外部因素,即外部项。 自顶向下逐步细化地分解过程中,要始终保持数据加工 功能、数据流、数据存储、外部项等在各层之间的完整 性和一致性,防止分解时的功能削弱、增强或变异。 由外到里、从左到右画DFD,先在左侧画外部项、及其 数据流和对应的数据加工,接收系统数据的外部项一般 画在DFD的右侧。 对DFD及其构成元素进行命名和编号,编号要体现元素 类型和层次。参P164-166图6-23至图6-28 加工为P,数据流为F,数据存储为D,外部项为S。 顶层图为图0,以下各层图的编号为图1、图1.1等。
数据流程图的绘制原则 两个元素(加工/数据存储/外部项)之间可以有多个数据 流,但DFD并不表明各数据流的先后或主次等关系。不 考虑外部项之间的数据流。 数据存储上一定要有数据流,可能单向也可能双向。 加工要逐层分解;顶层加工是系统名称;加工名应简单概 括,不可用空洞的动词命名(如计算)。 每个DFD要足够简单和明确,既能被用户所理解,又能 使系统设计人员明白。 一个DFD中所包含的处理应限制在七个以内。经验证明, 多于七个将会影响处理效果。 应集中精力于主要的数据流,对例外情况不必花较多精 力分析下去,只需标出即可。
数据流程图的绘制原则 逐层分解DFD时,应在概念上合理、清晰,分解要自然,不影响图的易理解性。 合理的分解是:将一个问题分成相对独立的几个部分,尽量保证其相对独立性,减少相互之间的联系。 分解应力求均匀,避免在同一张DFD中,有些处理过程描述的是细节,而另一些描述的却是较高层的抽象。 数据流程图不反映判断和控制条件,不应在DFD上出现表明控制逻辑的数据流。 理解一个问题总是需要一个过程的,系统分析人员要随时准备修改甚至抛弃旧的DFD,而用更好的来替代。分析阶段重画几张图的代价是很小的,倘若草草了事,留下隐患,到后期再去纠正,代价就太大了。因此,系统分析人员要有足够的耐心,花大力气去了解和分析系统,以建立正确、完整的DFD。
举例:数据流程图的绘制 例1:银行柜台取款处理系统(参教材P149图6-11和图6-12) 注意:用数据流做功能之间的接口 例2:图书预订系统(参教材P150图6-13至图6-15) 注意:用数据存储做功能之间的接口
数据字典的主要内容 数据字典 对数据流程图中的每个成分进行定义和说明。 数据字典的主要内容 数据元素:不可再分解的简单数据项。 数据结构:若干数据元素或数据结构的组合。 数据流:表明数据元素或数据结构的传输路径 数据存储:数据结构暂存或持久保存的地方。 数据加工:将输入数据流变换成为输出数据流 外部项:不受系统控制但影响系统运行的外部因素,包括人或其他系统等。
数据字典的主要内容 数据元素(参教材P167图6-29和图6-30) 系统名:所属子系统名称。 编号:数据元素在DD中的统一编码。 条目名:数据元素的名称。 别名:可用拼音或字母缩写。 含义:此数据元素的含义,包括编码规则等。 值域:取值范围。 数据类型和长度:数据类型包括数值型/字符型/日期型/逻辑型等;长度表示此数据元素所占存储空间大小。 所属数据流:所有使用此数据元素的数据流。 存储处:存放此数据元素的数据存储。 简要说明:对此数据元素的必要说明。
数据字典的主要内容 数据结构 用来定义数据项之间的组合关系。一个数据结构可以是若干数据项的组合,也可以是若干数据结构的组合。 名称:如“课程”。 组成:包括数据项或数据结构。如“课程名、教师、教材、课程表等”,其中“课程表”是另一个数据结构。 组织方式:如“按课程名顺序存放”。 简单描述:如“用于记录有关课程安排的基本信息”。 有关的数据流、数据结构:如“教师档案、教材表”。 有关的数据加工处理:如“排定课程表、教学查询”。
数据字典的主要内容 数据流(参教材P169图6-34) 只定义底层DFD中的数据流、所有DFD中的输入输出数据流;流入流出数据存储的数据流可不定义。 系统名、编号、条目名、别名 数据来源、数据去向 数据流结构:组成数据流的所有数据元素及组合状态 例:学生成绩通知={学号+学生姓名+{课程名称+成绩}+(补考课程名称+补考时间+补考地点)}所有在册学生 =:由…组成;+:两边项目同时出现;m..n:表示值域; []:括号内项目只有一项出现;():括号内项目可能会出现 {}:重复出现;{}条件:在满足给定条件下重复; n{}:重复n次;m{}n:括号内项目从m重复到n。 参考教材P153例1、例2。 简要说明:正常数据流量、高峰期数据流量、其他必要的说明。
数据字典的主要内容 数据存储(参教材P169图6-32) 系统名、编号、条目名、别名 记录组成、数据类型及长度:组成此数据存储的所有数据元素名及其类型和长度。 存储组织:一般文件存储或二维关系表存储 记录数、数据量:数据量大小 主键/辅键:关键字 流入和流出的数据流 简要说明
数据字典的主要内容 数据加工(参教材P168图6-31) 常用结构化语言、决策树、决策表描述数据加工的处理逻辑(稍后介绍)。 只定义所有的基本加工,即底层DFD中的加工。 系统名、编号、条目名、别名 输入:输入给此加工的所有数据流和数据存储 输出:此加工输出的所有数据流和数据存储 加工逻辑:用结构化语言、决策树、决策表描述。 简要说明
数据字典的主要内容 外部项(参教材P169图6-33) 系统名、编号、条目名、别名 输入数据流:流入外部项的数据流 输出数据流:从外部项流出的数据流 主要特征:基本组成、处理数据概况等 简要说明 系统的外部项不能过多,否则系统的独立性不好。此时应重新考虑系统的人机界面,设法减少外部项。
数据字典的编写要求 编写数据字典的基本要求 命名、编号与DFD中保持一致。 符合完整性和一致性要求 格式规范、风格统一、文字精练。 无重复内容或相互矛盾的内容。 无同名异义或异名同义者。 格式规范、风格统一、文字精练。
三类词汇:动词、名词、保留字(如关系运算符) 三类语句:陈述语句、判断语句、循环语句 三种结构:顺序结构、选择结构、循环结构 数据加工逻辑的描述方法 结构化语言(参教材P168图6-31) 三类词汇:动词、名词、保留字(如关系运算符) 三类语句:陈述语句、判断语句、循环语句 三种结构:顺序结构、选择结构、循环结构 顺序结构:按执行先后顺序给出陈述语句。 选择结构:IF-ENDIF、IF-ELSE-ENDIF、DO CASE-END CASE 循环结构:DO WHILE-ENDDO 整个DD中意义相同的多个动词应当统一使用同一个动词,所有的名词应在DD中已定义。
数据加工逻辑的描述方法 决策树 构成元素:三点两枝 决策结点 、状态结点 、结果结点 方案枝、条件枝 搬 正常 0.73 决策结点 、状态结点 、结果结点 方案枝、条件枝 搬 正常 0.73 1.8*2=3.6万 -0.5万 -3.6 高水位 0.25 -0.5万 修堤 期望值 -1.7 洪水 0.02 不搬 -60.5万 -1.7 -1.7 正常 0.73 0万 不修堤 期望值 -3.7 高水位 0.25 -10万 洪水 0.02 -60万
数据加工逻辑的描述方法 决策表 例1:P161表6-20 及表6-21 例2:P168图6-31 中的“判断学生 奖学金” 决策表的优化 删除矛盾的条件组合 部分条件组合可合并 各种条件 各种 条件组合 各种 决策方案 对应各种条件组合的 决策规则
新系统逻辑模型的开发过程 新系统逻辑模型的开发过程 对当前系统进行详细调查 建立当前系统的逻辑模型(业务流程图) 分析现行系统的薄弱环节 提出新系统的总体功能需求(功能结构图) 分层绘制新系统的数据流程图 编写新系统的数据字典 编写系统分析说明书
系统分析说明书的内容与格式 主要内容与格式(参教材P170-171) 参考: 项目概述(引言): 现行系统状况: 需求说明: 项目名称、目标和背景 现行系统状况: 现状调查说明、现行系统业务流程说明 需求说明: 现行系统的薄弱环节、用户要求 新系统的目标、功能和逻辑模型: 系统目标 功能说明:包括功能结构、数据流程图、数据字典。 数据要求说明:包括数据逻辑结构。 项目实施计划: 主要工作内容、工作量估算、任务分解、进度计划、财务预算 参考: 《国家经济信息系统设计与应用标准化规范》 《GB/T 9385-2008:计算机软件需求规格说明规范》
课后作业 结构化语言和决策表: 教材P171第6题 决策树: 教材P171第7题 业务流程图和数据流程图: 教材P172第8题和第9题,要求同时绘制业务流程图和分层数据流程图。 要求:每位同学提交一份作业,于2012年4月24日前Email提交至13710879918@139.com,本次作业计入平时成绩。
我们的明天更美好! THANK YOU!