结构化系统分析与设计.ppt
《结构化系统分析与设计.ppt》由会员分享,可在线阅读,更多相关《结构化系统分析与设计.ppt(206页珍藏版)》请在三一文库上搜索。
1、结构化系统分析与设计,第5章,Chapter 5,Structured System Analysis and Design,本章内容,5.1 结构化方法的基本思想 5.2 结构化分析概述 5.3 数据流分析技术 5.4 IDEF0分析技术 5.5 逻辑分析工具 5.6 系统设计概述 5.7 结构化设计原理 5.8 模块化设计 5.9 面向数据流的设计,自顶向下、逐步求精;采用模块化技术、分而治之的方法;模块内部由顺序、分支、循环基本控制结构组成;应用子程序实现模块化,结构化方法的基本思想,5.1 结构化方法的基本思想,结构化方法由于采用了模块分解和功能抽象,自顶向下、分而治之的手段,从而可以
2、有效将一个较复杂的系统分成若干易于控制和处理的子系统,子系统又可以分解成更小的子任务,结构化方法强调功能抽象和模块化,5.1 结构化方法的基本思想,结构化分析 结构化设计,5.1 结构化方法的基本思想,结构化方法的缺陷 分解与割裂 不同的分解线索导致系统结构的不同 不利于可重用部分的分析,5.1 结构化方法的基本思想,本章内容,5.1 结构化方法的基本思想 5.2 结构化分析概述 5.3 数据流分析技术 5.4 IDEF0分析技术 5.5 逻辑分析工具 5.6 系统设计概述 5.7 结构化设计原理 5.8 模块化设计 5.9 面向数据流的设计,重点:应用需求 任务:确定用户对系统的应用要求 理
3、解判断综合表达 工作内容:逐步导出新系统逻辑模型 现行系统的逻辑模型 新系统功能需求的逻辑描述 新系统的逻辑模型,1、系统分析的任务,5.2 结构化分析概述,作用:在用户与系统设计人员之间起着桥梁与翻译的作用;变模糊为明确,变要求为方案 职责:作为用户与设计人员的接口;从各种来源收集数据,并综合出解决问题的方法;评价现行的系统,并分析新系统;不断吸收先进的科学技术,并合理地加以应用;整理、起草文档,2、系统分析员,5.2 结构化分析概述,要点 独立客观:协调(双方利益的代表),合理(需求与技术的结合) 知识与经验:看破、判断真实合理的需求 围绕总体思路,反映敏锐 交流技巧,消除沟通障碍,2、系
4、统分析员,5.2 结构化分析概述,结构化分析方法就是用一组标准的准则和工具,从事系统分析工作,并用来表达系统分析的工作成果 阐述新系统能够“做什么”,而不是关心“怎么做”,3、结构化分析方法,5.2 结构化分析概述,数据分析工具 数据流图 数据字典 数据存储规范化 数据立即存取图 功能分析工具 决策树 决策表 结构式语言 IDEF0,4、结构化分析工具,5.2 结构化分析概述,本章内容,5.1 结构化方法的基本思想 5.2 结构化分析概述 5.3 数据流分析技术 5.4 IDEF0分析技术 5.5 逻辑分析工具 5.6 系统设计概述 5.7 结构化设计原理 5.8 模块化设计 5.9 面向数据
5、流的设计,数据流分析,数据流分析(Data Flow Analysis,简称DFA)方法是一种以数据流技术为基础的、自顶向下、逐步求精的系统分析方法,5.3 数据流分析技术,数据流分析,数据流分析的核心特征是“分解”和“抽象”,分解是指将一个复杂的问题按照内在的逻辑划分为若干个相对独立的子问题,从而简化复杂问题的处理,抽象就是将一些具有某些相似性质的事物的公共之处概括出来,暂时忽略其不同之处,或者说,抽象是抽象出事物的本质特性而暂时不考虑它们的细节,5.3 数据流分析技术,数据流分析,上图中,自顶向下的过程,即从顶层到1层再到2层的过程,我们称之为“分解”,上图中,自底向上的过程,即从2层到1
6、层再到顶层的过程,我们称之为“抽象”,5.3 数据流分析技术,数据流图,数据流图(Data Flow Diagram,简称DFD)是结构化系统分析的主要工具,它能图形化地显示出系统中数据的使用,表达数据在系统内部的逻辑流向以及系统的逻辑功能和数据的逻辑变换,数据流图有四种基本符号:外部项、数据流、处理过程和数据存储,5.3 数据流分析技术,数据流图,数据流,数据存储,外部项,处理过程,5.3 数据流分析技术,数据流图,外部项(external entity)是指不受系统控制的,在系统以外的人、程序、机构或其他实体,外部项与系统通过数据交互,表达了该数据的外部来源或去处,确定系统的外部项,实际上
7、就是确定系统与外界的分界线,5.3 数据流分析技术,数据流图,数据流(data flow)就是一束按特定的方向从源点流到终点的数据,它指出了数据及其流动方向,对每一条数据流都要给予简单的描述,5.3 数据流分析技术,数据流图,处理过程(process)是对数据进行变换操作,即把流向它的数据进行一定的变换处理,产生出新的数据,处理过程对数据的操作主要有两类: 变换数据的结构,如将数据的格式重新排列; 在原有数据内容基础上产生新的数据内容,如对数据进行累计或计算平均值。,5.3 数据流分析技术,数据流图,数据存储(data store)指出了数据保存的地方,这里所说的地方,并不指保存数据的物理地点
8、或物理存储介质,而是数据存储的逻辑描述,5.3 数据流分析技术,数据流图,数据流的画法示例,5.3 数据流分析技术,数据流图的建立自顶向下扩展,方法:先用少数几个处理过程高度概括、抽象地描述整个系统的逻辑功能,然后针对处理过程逐步地分解、扩展,从而详细地加以描述,数据流图可在不同的层次上描述,以表示系统在该层的内容,5.3 数据流分析技术,数据流图的建立自顶向下扩展,建立方法:,决定系统或处理过程的范围,即通过输入、输出数据确定系统的边界或处理过程的范围 决定系统或处理过程内部的细节,并加以描述,5.3 数据流分析技术,数据流图的建立自顶向下扩展,示例:销售部门接到顾客送来的订货单后, 根据库
9、存情况向用户发货 订货单处理 确定发货量 开发货单及其相关处理 填写暂存订货单 对照暂存订货单,5.3 数据流分析技术,订货处理第1层DFD,顾客,1 销售处理,订货单,发货单,库存帐,5.3 数据流分析技术,顾客,1.1 验收订货单,订货单,库存帐,1.2 确定发货量,合格订货单,1.3 开发货单修改库存,可发货的订货单,应收帐,订货单存档,1.4 填写暂存订货单,1.5 对照暂存订货单,暂存订货单,未满足的订货单,采购部门,到货通知,顾客,发货单,订货处理第2层DFD,不合格订货单,5.3 数据流分析技术,数据流图的建立建立原则,建立原则:,数据流图的建立过程必须遵循自顶向下、逐层分解的原
10、则 分层的数据流图总是由顶层、中间层和底层组成的(或:上下文图+0级图+n级图) : 顶层数据流图确定了系统的边界 中层图描述了某个处理过程的分解,而它的组成部分又要进一步被分解 底层图描述的是无须分解的基本处理过程,5.3 数据流分析技术,确定系统的外部项及系统正常运行时的输入与输出,在高层的数据流图中只反映主要的、正常的逻辑功能,突出系统的总体情况,由外向里、从左到右地画数据流图,先在左侧画外部项,然后画出由该外部项产生的数据流和其对应的处理过程,接收系统数据的外部项一般画在数据流图的右侧,数据流图的建立建立原则,5.3 数据流分析技术,适当地命名及给出编号,有利于系统的理解。对处理过程的
11、编号,随着逐层展开,也应反映出它的层次关系,应集中精力于主要的数据流,对一些诸如例外情况、出错处理等问题不必花较多精力分析下去,只需标出即可,数据流图的建立建立原则,5.3 数据流分析技术,一个数据流图中所包含的处理过程应限在七个以内,经验证明,多于七个将会影响分解效果,数据流图逐层分解时,应在概念上合理、清晰、自然,不影响图的易理解性。合理的分解是将一个问题分成相对独立的几个部分,减少相互之间的联系。分解应力求均匀,避免在同一张数据流图中,有些处理过程描述的是细节,而另一些描述的却是较高层的抽象,数据流图的建立建立原则,5.3 数据流分析技术,分解是处理功能的分解,我们称某一处理过程细化后的
12、图是该处理的子图,该处理所在的图为子图的父图。子图与父图应保持输入与输出数据流的一致,随着数据流图的细化,图越来越复杂,为便于阅读和绘图,允许以父图和子图对应的方式分别绘图,也可以将几个子图绘制在一张图中。为保证各子图的整体性,子图之间应通过公共的数据存储联系起来,数据流图的建立建立原则,5.3 数据流分析技术,在数据流图中,数据存储的输入来源与输出去向不能是外部项,而只能是处理过程,数据流图与程序流程图不同。前者不反映时间的顺序,只反映数据的流向、逻辑处理和必要的逻辑数据存储;后者有严格的时间顺序,有起始点和终止点,数据流图的建立建立原则,5.3 数据流分析技术,理解一个问题总要经过从不正确
13、到正确,从不恰当到恰当的过程,系统分析人员要随时准备修改甚至抛弃旧的数据流图,而用更好的来替代。分析阶段重画几张图的代价是小的,倘若草草了事,留下隐患,那么到开发后期再去纠正,代价就太大了,数据流图不反映判断和控制条件,不应在数据流图上出现表明控制逻辑的数据流,数据流图的建立建立原则,5.3 数据流分析技术,根据学校的教学计划,向选课的学生及时供应所需的教材 审查学生(个人或班级)购书单的有效性,对有效书单并且有库存的发售教材 对暂时缺货的教材进行缺书登记 根据缺书登记补充采购所缺的教材,通知学生补购 将缺书登记表汇总为缺书单,由书库管理员采购 待购教材到货后,及时通知学生补购,教材购销系统,
14、课堂练习,5.3 数据流分析技术,教材购销系统顶层DFD,课堂练习,5.3 数据流分析技术,教材购销系统第二层(0级)DFD,课堂练习,5.3 数据流分析技术,教材购销系统第三层DFD之销售子系统,课堂练习,5.3 数据流分析技术,教材购销系统第三层DFD之采购子系统,课堂练习,5.3 数据流分析技术,处理过程 不能只有输出,或只有输入 输入和输出不能完全相同 用动词短语命名 外部项 数据流不能直接从一个外部项到另一个外部项,必须通过处理过程 为了便于DFD的布局,外部项可以重复出现 用名词短语命名,数据流图的画图规则,5.3 数据流分析技术,数据存储 数据流不能直接从一个数据存储到另一个数据
15、存储,必须通过处理过程 数据流不能直接从一个外部项到一个数据存储,反之也不行,必须通过处理过程 为了便于DFD的布局,数据存储可以重复出现 用名词短语命名,数据流图的画图规则,5.3 数据流分析技术,数据流 只能单向 数据流不能直接流入它所流出的处理过程,必须通过其他处理过程,产生新数据流的同时,将原数据流返回 数据流进入数据存储表示更新,离开数据存储表示检索 用名词短语命名,一个数据流可以包括多项一起流动的项目,数据流图的画图规则,5.3 数据流分析技术,数据流图中所有名字的定义及描述就构成了一本字典,它包括数据流、数据存储、外部项和处理过程的详细条目 数据流、数据存储等数据型条目构成数据字
16、典(data dictionary) 逻辑分析的有关工具用于处理型条目,仅仅一套数据流图并不能构成系统说明书,只有当图中出现的每一个成分都给出详细定义之后,才能较全面地描述一个系统,数据字典,5.3 数据流分析技术,数据字典通过以数据项和数据结构的定义来描述数据流、数据存储的逻辑内容,数据字典是数据流图的辅助资料,对数据流图起注解作用。数据字典主要用于描述数据流和数据存储的逻辑内容,以及外部项和处理过程的某些数据特性,数据字典,5.3 数据流分析技术,数据字典,5.3 数据流分析技术,数据流的定义有以下内容: 数据流的名称 数据流的简述 数据流的来源 数据流的去向 数据流的组成 数据流的流通量
17、 高峰时的流通量,数据字典数据流,5.3 数据流分析技术,数据流名称:选课单 简 述:学生填写并交给系里的所选课程列表 数据流来源:学生 数据流去向:“选课统计”过程 数据流组成:学号 课程 教师 课程表 流 通 量:20份/天 高峰流通量:学期开始时,100份/天,5.3 数据流分析技术,数据结构的定义有以下内容: 数据结构的名称 数据结构的组成,数据结构用来定义数据项之间的组合关系,是对数据的一种逻辑描述,数据字典数据结构,5.3 数据流分析技术,数据结构名称:课程 简述:用于记录有关课程的基本信息 组成:课程名 学时 学分 教材 组织:按课程名顺序存放 有关的数据流/数据结构:教师档案、
18、教材表 有关的处理过程:排定课程表、教学查询,示例,数据字典数据结构,5.3 数据流分析技术,数据项的定义有以下内容: 数据项的名称 数据项的值域 数据项的数据类型 数据项的长度,数据项是数据的最小组成单位,即不可再分的数据单位,数据字典数据项,5.3 数据流分析技术,数据存储的定义有以下内容: 数据存储的名称以及必要时所给的编号 流入/流出的数据流 数据存储的组成,即它所包含的数据结构,数据字典数据存储,5.3 数据流分析技术,数据存储名称:学生成绩 编号:D20 简述:记录学生所考各门课程的考试成绩 流入的数据流:“考试成绩单”,来源是“登记成绩单”处理过程 流出的数据流:“成绩”,去向是
19、“成绩统计”处理过程 数据存储的组成:学号 课程号 成绩,5.3 数据流分析技术,处理过程的定义有以下内容: 处理过程在数据流图中的名称、编号 对处理过程的简单描述 该处理过程的输入数据流、输出数据流及其来源与去向 其主要功能的简单描述,对处理过程中具体操作的描述,不属于数据字典的范围,这里仅对处理过程的部分数据特性作简单的描述,数据字典处理过程,5.3 数据流分析技术,处理过程名称:编辑学生成绩单 编号:3.1.1 简述:将学生某门课程的考试成绩录入系统,并产生某学生已考课程的成绩单 输入:课程成绩单,来源为外部项“教师” 处理:按一定的格式将所有学生该门课程的考试成绩一次录入“考试成绩”数
20、据存储,根据学号将该课程的考试成绩分别转入该学号的“成绩单”数据存储 输出:考试成绩,去向为“成绩单”数据存储、“确定补考”处理过程,5.3 数据流分析技术,外部项的定义有以下内容: 外部项的名称 对外部项的简述 有关的数据流,数据字典外部项,5.3 数据流分析技术,外部项名称:财务处 简述:处理企业内部财务工作的职能部门 有关的数据流:工资单、成本、利润等,示例,数据字典外部项,5.3 数据流分析技术,数据流图的修改与完善,将导致数据字典的修改,这样才能保持数据字典的一致性和完整性,数据字典的内容是随着数据流图自顶向下、逐层扩展而不断充实的,数据字典的建立,5.3 数据流分析技术,一是由人工
21、将有关内容随时建立在一叠卡片上,对卡片进行分类、排序,从而得到数据字典,数据字典的建立方式:,数据字典的建立,二是使用自动化数据字典系统,由计算机来代替人工登记、分类等工作,5.3 数据流分析技术,本章内容,5.1 结构化方法的基本思想 5.2 结构化分析概述 5.3 数据流分析技术 5.4 IDEF0分析技术 5.5 逻辑分析工具 5.6 系统设计概述 5.7 结构化设计原理 5.8 模块化设计 5.9 面向数据流的设计,本章内容,5.1 结构化方法的基本思想 5.2 结构化分析概述 5.3 数据流分析技术 5.4 IDEF0分析技术 5.5 逻辑分析工具 5.6 系统设计概述 5.7 结构
22、化设计原理 5.8 模块化设计 5.9 面向数据流的设计,最基本的部分是处理的逻辑,即用户对这个处理过程的逻辑要求以及该过程的输出数据流与输入数据流之间所具有的逻辑关系,功能分析的任务是把数据流图中各个处理过程的功能加以详尽的说明,并精确地描述用户要求一个处理过程“做什么”,这包括处理过程的激发条件、处理逻辑、容错处理等,5.5 逻辑分析工具,处理过程中对数据的所谓处理和加工,一般包括以下三个含义: 数学运算。对输入数据进行数学变换,通过数学工具予以表达(可精确表述) 数据交换。与数据存储或外部实体进行信息交流(可精确表述) 逻辑判断。根据判别各种条件的结果,执行不同的操作或采取不同的行动(不
23、可精确表述),5.5 逻辑分析工具,所以结构化系统分析方法采用了若干种决策分析工具,来对逻辑判断作出描述,示例:某企业根据推销人员所推销出去产品的价值来确定给予相应的奖励,具体方法是,按照推销出去的产品金额减去事先确定的推销指标为条件建立起三种不同的奖励政策 当超额部分大于或等于100000元,则奖励超额的1% 50000元到99999元的奖励为0.8% 小于50000元的奖0.5% 若推销人员没有完成推销指标,则不予奖励,5.5 逻辑分析工具,5.5 逻辑分析工具,决策树,5.5 逻辑分析工具,决策树(decision trees)是一种图形,它能顺序地表示出条件和行动,它也表示出各条件和所
24、允许的行动的关系,决策树图形的左边是树根,它是决策序列的起点。紧跟着的是各个分支,它们依赖于存在的条件和所作的决策 树中非叶结点代表条件 树的叶结点表明要采取的行动,决策树,5.5 逻辑分析工具,当系统本身太复杂时,会存在许多步骤和组合条件的序列,结果树的规模变得难以控制 分支的数目太大和通过的路径太多,对分析不但没有帮助而且会使分析人员束手无策,决策树的缺点:,决策树,5.5 逻辑分析工具,决策表,决策表(decision table)是显示条件和行动的一个表格(行列矩阵),而不是树。决策表中还包括决策规则,它说明当某些条件成立时,采取的该是什么行动,5.5 逻辑分析工具,列出所有的条件,列
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 结构 系统分析 设计
链接地址:https://www.31doc.com/p-3167966.html