810 likes | 955 Views
第六章 管理信息系统的系统设计. 学习目的:. 通过本章学习了解系 系统设计概述,系统总体结构设计,系统配置方案设计,输 出 设 计, 输 入 设 计 ,编写系统设计报告. 管理信息系统系统设计的主要任务见下表. 第一节 系统设计概述. 一、 系统设计的任务 系统设计的 任务 在系统分析提出的逻辑模型的基础上,科学合理地进行物理模型的设计。主要是解决“怎样做”的问题。 系统设计的 具体工作 总体设计 代码设计和设计规范的制定 系统物理配置方案设计 数据存储设计 计算机处理过程设计. 系统设计应注意什么?. 二、系统设计的原则 系统性
E N D
学习目的: 通过本章学习了解系 系统设计概述,系统总体结构设计,系统配置方案设计,输 出 设 计, 输 入 设 计 ,编写系统设计报告
第一节 系统设计概述 一、 系统设计的任务 • 系统设计的任务 • 在系统分析提出的逻辑模型的基础上,科学合理地进行物理模型的设计。主要是解决“怎样做”的问题。 • 系统设计的具体工作 • 总体设计 • 代码设计和设计规范的制定 • 系统物理配置方案设计 • 数据存储设计 • 计算机处理过程设计
系统设计应注意什么? 二、系统设计的原则 • 系统性 • 从整个系统的角度考虑,如系统的代码要统一,设计规范要标准,传递语言要尽可能一致,对系统的数据采集要做到数出一处、全局共享等。 • 灵活性 • 要求系统具有很强的环境适应性,如尽量采用模块化结构,提高各模块的独立性。 • 可靠性 • 如安全保密性、检错、纠错能力、抗病毒能力等。 • 经济性 • 如不要盲目追求技术上的先进,尽量避免不必要的复杂化。
第二节 系统总体结构设计 • 总体设计又称为概要设计,其主要任务是以整体的观点,按照自顶向下、逐步求精的原则,借助于一套标准的设计准则和图表工具,将系统划分为若干个子系统或模块。
(一) 功能模块设计概述 1.模块和模块化概述 • 模块化是指将系统的总任务(系统功能)分解为若干小任务,小任务再分解为更小的任务,依次类推,直到分解的任务具体、明确、单一为止,这些任务汇集起来便组成一个系统。分解过程中的小任务称为模块,分解的结果用模块结构图表示。
2.模块独立性 • 模块独立性是指每个模块只完成一个相对独立的特定子功能,并且和其他模块之间的关系很简单。
(二)功能结构图 • 用于描述系统内各个组成部分的结构及其相互关系的图称为功能结构图。 • 功能结构图按照系统的功能从属关系描述系统各组成部分的功能,图中每一个框表示一个功能,各层功能模块与数据流图中的加工相对应。如下图。
(三)系统流程图 • 管理信息系统系统处理过程设计采用系统流程图。 • 系统流程图的基本概念:系统流程图是用于描述信息在系统内部的处理过程,即用简单的图形表达输入、处理、输出之间的关系,说明信息在系统内部的流动、转换、存储和处理的情况。
系统流程图是描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描绘系统里面的每个部件(程序、文件、数据库、表格、人工过程等)。系统流程图是描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描绘系统里面的每个部件(程序、文件、数据库、表格、人工过程等)。 数据关系的一般形式
脱机操作 手工输入 人工操作 直接存取的数据 (磁盘等) 磁盘 顺序存取的数据如:磁带 处理 脱机存储 显示器 打印报告 通讯连接 穿孔卡片 • 绘制信息系统流程图应当使用统一符号。目前国际上所用的符号日趋统一,我国国家标准GB15-79信息处理流程图图形符号和国际标准化组织标准ISO1028、2636以及美国国家标准协会ANSI的图形符号大致相同。常用的系统流程图符号: • 从数据流程图变换成信息系统流程图并不是单纯的符号改换,信息系统流程图中仅表示的是计算机的处理流程,而并不像数据流程图那样还反映了人工操作那一部分。因此绘制信息系统流程图的前提是已经确定了系统的边界、人机接口和数据处理方式。 从数据流程图到信息系统流程图还应考虑哪些处理功能可以合并,或进一步分解,然后把有关的处理看成是系统流程图中的一个处理功能。
绘制信息系统流程图的步骤:先为数据流程图中的每个处理功能画出数据关系图。然后,把各个处理功能的数据关系图综合起来,形成整个系统的数据关系图,即信息系统流程图。绘制信息系统流程图的步骤:先为数据流程图中的每个处理功能画出数据关系图。然后,把各个处理功能的数据关系图综合起来,形成整个系统的数据关系图,即信息系统流程图。
数据存储#1 数据存储#2 报告1 报告2 处理1 处理1 处理2 处理3 输入1 新系统逻辑模型转换为系统流程图示例图 实体1 实体2 处理1 中间 文件 存储 #2 存储 #1 处理2 处理3 处理4 输出1 输出2 • 从数据流程图导出信息系统流程图的例子
工 资 单 工资汇总表 人事变动通知 电费扣款通知 病假扣款通知 房租变动通知 主文件更新模块 建立扣款文件模块 上月主文件 本月主文件 扣款文件 计算打印模块 工资管理子系统的信息系统流程图
(1)业务流程图是一种描述系统内各单位、人员之间业务关系、作业顺序和管理信息流向的图表,利用它可以帮助分析人员找出业务流程中的不合理流向。 所以说业务流程图是一种物理模型。(2) 数据流程图是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符号综合地反映出信息在系 统中的流动、处理和存储情况。它是一种逻辑模型。 打个比方,业务流程图主要是描述业务走向,比如病人首先要去挂号,然后在到医生那 里看病开药,然后再到药房领药,然后回家 。 而数据流程则是描述数据的走向,继续以病人为例,这个时候主要画的是病人挂号系统需要那些表,数 据改怎么存,医生看病用到那些表,数据改怎么存等。(3)系统流程图又叫事务流程图,是在计算机事务处理应用进行系统分析时常用的一种描述方法 (另一个是数据流图),它描述了计算机事务处理中从数据输入开始到获得输出为止,各个处理工序的逻辑过程。
(四)子系统与功能模块的划分 • 系统总体设计的一个主要任务是划分管理信息系统的子系统,将整个MIS划分为若干个子系统,每个子系统划分为若干个功能模块,每个功能模块又划分为若干个子功能模块。
优秀的设计方案也不是惟一的,通常的划分方法和原则如下。优秀的设计方案也不是惟一的,通常的划分方法和原则如下。 1.子系统的划分方法 • (1)子系统与当前的业务部门对应,每一个独立的业务管理部门,划分为一个子系统。
(2)按功能划分子系统,将功能上相对独立、规模适中、数据使用完整的部分作为一个子系统,例如学生管理系统中的学籍管理子系统、成绩管理子系统。(2)按功能划分子系统,将功能上相对独立、规模适中、数据使用完整的部分作为一个子系统,例如学生管理系统中的学籍管理子系统、成绩管理子系统。 • (3)采用企业系统规划法(BSP),利用U/C矩阵划分子系统。
2.划分功能模块的原则 • (1)功能模块或子系统有其相对独立性,即功能模块或子系统内部联系紧密(高内聚),而功能模块或子系统之间依赖性尽量小(低耦合)。 • (2)模块的作用范围应在控制范围之内。 • (3)模块的扇出(调用其他模块)数尽量小,系统平均扇出是3或4;扇入(被其他模块调用)数尽量大。
(4)模块为单入口、单出口,每个模块只归其上级模块调用。(4)模块为单入口、单出口,每个模块只归其上级模块调用。 • (5)模块的大小适中(50~100个语句)。 • (6)模块的功能可以预测,即相同的输入数据能产生相同的输出。 • (7)建立公用模块,以减少冗余,消除不必要的重复劳动。 • (8)模块具有信息隐蔽性。
(五)模块之间的联系 • 耦合衡量不同模块间相互联系的紧密程度;内聚衡量一个模块内部各个元素之间联系的紧密程度。
1.模块耦合(Coupling of module) • 模块耦合性越低,表明模块间相互联系越少,模块的独立性越强。模块耦合有四种类型 。
模块耦合的七种类型 • ①数据耦合(Data Coupling)。两个模块之间通过调用关系来传递信息,相互传递的信息是数据,则两模块间的联系是一种数据耦合。数据耦合联系简单,耦合程度低,模块的独立性强,模块的可修改性和可维护性高,是一种较为理想的耦合形式。 • ②控制耦合(Control Coupling)。两个模块之间,除了传递数据信息外,还传递控制信息。这种耦合对系统的影响比较大,它直接影响到接收该控制信号模块的内部运行,因此,这种模块不是一个严格意义上的“黑盒”,对系统的修改工作很不利,尤其是自上而下传递控制信号,影响面更大,使系统维护工作更加复杂化。一般来说,控制耦合出现在模块的中上层。
③公共耦合(Common Coupling)。当两个或多个模块通过一个公共数据环境相互作用时,它们之间的耦合称为公共耦合。公共耦合可以是全程变量、内存的公共覆盖区、存储介质中的文件等。 • ④内容耦合(Content Coupling)。如果一个模块不经调用直接使用或修改另一个模块中的数据,则这种模块之间的连接关系为内容耦合。在修改其中一个模块时,必然直接影响到另一个模块,所以,内容耦合使得模块的独立性、系统的可修改性和可维护性最差,因此,在设计时必须避免这种模块耦合。
2.模块内聚(Cohesion of Module) • 模块内聚性越高,表明模块内部各组成部分相互联系越紧密,模块的独立性越强。模块内聚有七种类型 。
模块聚合可以划分为七个等级 • ①功能聚合(Functional Cohesion)。一个模块只完成一个单独的、能够确切定义的功能。它对确定的输入进行处理后,输出确定的结果,如计算机语言中的一个函数,这是一种理想的聚合方式。 • ②顺序聚合(Sequential Cohesion)。一个模块内部各个组成部分执行几个处理功能,且一个处理功能所产生的输出数据直接成为下一处理功能的输入数据。 • ③数据聚合(Data Cohesion),也称通讯聚合。一个模块内各个组成部分的处理功能,都使用相同的输入数据或产生相同的输出数据,且其中各个处理功能是无序的。
④过程聚合(Procedure Cohesion)。一个模块内各个组成部分的处理功能各不相同,彼此也没有什么关系,但它们都受同一个控制流支配,决定它们的执行次序,它可能是一个循环体,也可能是一个判断过程,也可能是一个线性的顺序执行步骤。 • ⑤时间聚合(Temporal Cohesion),也称暂时聚合。一个模块内各个组成部分的处理功能和时间有关,即各个处理动作必须在特定的时间限制之内执行完,典型的有初始化模块和结束模块。
⑥逻辑聚合(Logical Cohesion)。一个模块内各个组成部分的处理功能彼此无关,但处理逻辑相似。逻辑聚合模块的调用,常常有一个功能控制开关,根据上层模块的控制信号,在多个逻辑相似的功能中选择执行某一个功能。 • ⑦偶然聚合(Coincidental Cohesion)。一个模块由若干个并不相关的功能偶然地组合在一起。如为了缩短程序长度而将具有部分相同语句段的无关功能组合在一起,则会形成偶然聚合。 • 上述七种模块聚合方式中,其聚合程度是依次下降的。由于功能性聚合模块的聚合程度最高,所以在划分模块的过程中,应尽量采用功能性聚合方式。其次根据需要可以适当考虑采用顺序性聚合或数据性聚合方式。
(六)模块结构图的设计方法 • 模块结构图是结构化设计中描述系统结构的图形工具,它用于描述系统模块结构及模块之间的联系,反映了系统功能模块之间的调用关系,数据流和控制流信息的传递关系。
结构设计要解决的一个主要问题是把系统分解成一个个模块,并以结构图的形式表达出它们之间的内在联系。结构图的构成主要有以下几个基本部分。结构设计要解决的一个主要问题是把系统分解成一个个模块,并以结构图的形式表达出它们之间的内在联系。结构图的构成主要有以下几个基本部分。 • (1) 模块。结构图中,模块用矩形方框表示。矩形方框中要写有模块的名称,模块的名称应能恰当地反映这个模块的功能。
(2) 调用。调用是结构图中模块间的联系方式,它将系统中所有模块结构化地有序组织在一起。模块间的调用关系用箭头表示,箭尾表示调用模块,箭头表示被调用模块。调用只能是上一级模块调用下一级模块,不允许下一级模块调用上一级模块,通常也不允许同级模块间的调用。模块间的调用分为直接调用、判断调用和循环调用三种。一个模块可以直接调用一个下层模块,也可直接调用多个下层模块。模块间的判断调用表示根据判断条件,决定是否调用或调用哪个下级模块,判断条件用菱形符号表示。模块间的循环调用表示调用模块中存在一个主循环,以便循环调用某个或多个下级模块。循环调用可用带箭头的弧形线段来表示。
(3)数据。调用箭头线旁边带圆圈的小箭头线,表示从一个模块传送给另一个模块的数据。(3)数据。调用箭头线旁边带圆圈的小箭头线,表示从一个模块传送给另一个模块的数据。 • (4)控制信息。调用箭头线旁边带圆点的小箭头,表示从一个模块传递给另一个模块的控制信息。 • 模块加上数据流、控制流以及模块之间的调用关系,就组成了系统结构图。结构图中的基本符号如图所示。
A A x x,y z y p B B A A B C D B C D • 图(a)中,模块A调用模块B,A将数据x,y传递给B,调用结束时,B将数据z返回给A。 • 图(b)中,模块A调用模块B,A将数据x和控制信息p传递给B,调用结束时,B将数据y返回给A。 • 图(c)中,模块A选择调用B、C模块,直接调用D模块。 • 图(d)中,模块A循环地调用模块B、C和D。
销售订单处理 订货单 备货单 已处理订单信息 缺货信息 库存信息 图6-3销售订单处理功能的数据流程图 • 例题:销售订单处理功能数据流程图
销售订单处理 输入 处理 输出 输入订单 确定能否供货 处理缺货订单 处理可供货订单 打印备货单 • “销售订单处理”功能的输入部分为销售订单;处理部分为根据订单内容先确定能否供货,然后再结合库存信息决定是处理缺货订单还是处理可供货订单;输出部分是备货单。相应的结构图如图所示 。
模块结构图与数据流图的区别 • (1)数据流图是从数据在系统中流动的角度来考虑系统;而模块结构图是从功能层次的角度来考虑系统。 • (2)数据流图说明系统“做什么”,即描述系统的逻辑模型;而模块结构图说明“如何做”,即描述系统的物理模型。
(3)数据流图的绘制过程是从具体到抽象,逐步去掉物理部分,只剩下抽象的信息流动的处理方法,以便抽象地描述系统的逻辑模型;而模块结构图则相反,它从抽象的系统功能出发,逐一具体化,逐步考虑具体实现的方法和技术手段,即从抽象到具体的过程。(3)数据流图的绘制过程是从具体到抽象,逐步去掉物理部分,只剩下抽象的信息流动的处理方法,以便抽象地描述系统的逻辑模型;而模块结构图则相反,它从抽象的系统功能出发,逐一具体化,逐步考虑具体实现的方法和技术手段,即从抽象到具体的过程。
第三节 系统配置方案设计 (一) 系统配置方案设计的基本原则 • (1)根据系统调查和系统分析结果、实际业务需要、业务性质综合考虑选择、配置系统设备。 • (2)根据企业或组织中各部门地理分布情况设置系统结构。
(3)根据系统调查和系统分析所估算出的数据容量确定存储设备。(3)根据系统调查和系统分析所估算出的数据容量确定存储设备。 • (4)根据系统通信量、通信频率确定网络结构、网络类型、通信方式等。 • (5)根据系统的规模和特点配备系统软件,选择软件工具。 • (6)根据系统实际情况确定系统配置的各种指标,例如处理速度、传输速度、存储容量、性能等。
(二)硬件设备的选择 • 选型的原则为:实用性好,技术上成熟可靠,近期内保持一定的先进性,表现为可扩充,可升级,可维护性好,稳定性好,具有良好的兼容性;选择性能价格比高,技术力量较强,售后服务周到,信誉好的厂家产品。 • 选型的方法可采用招标法、信息调查法、方案征集法、基准程序测试法等。
选购管理信息系统计算机硬件设备时主要考虑以下技术指标。选购管理信息系统计算机硬件设备时主要考虑以下技术指标。 • (1)运行速度 • (2)主存储器容量 • (3)外存储器容量 • (4)吞吐量和处理量 • (5)系统的对外通信能力
(三)网络设计 • 网络设计是指利用网络技术将管理信息系统的各个子系统合理布置和连接。 • 网络由服务器、交换机、集线器、路由器、调制解调器、线路等设备组成,其中服务器是全网的核心,一定要选好。
(四)管理信息系统系统平台的选择 • 系统软件是应用程序运行的环境,其中操作系统是软件平台的核心,操作系统所具备的功能和性能在一定程度上决定系统的整体水平,在MIS运行过程中改变操作系统,会付出很大代价,选择时应慎重考虑,一旦选定不要轻易改变操作系统。 • 目前常用的操作系统有Windows系列操作系统和UNIX操作系统等。
(五)开发工具与程序设计语言的选用 • 目前程序设计语言和其他开发工具可以有多种选择,例如:VB、VC++、Delphi、PowerBuilder、Java以及Microsoft公司推出的C#、Visual Studio.NET工具包等都是目前流行的优秀的前端开发工具。除了开发语言,还要考虑在办公自动化方面所需的软件,包括文字处理、图形处理、表格处理软件等,例如Word、WPS、Visio、Excel等。
第四节 代码设计 • 代码的定义 • 代码是代表事物名称、属性、状态等的符号。 • 代码的功能是什么? • 为事物提供一个概要而不含糊的认定,便于数据的存贮和检索。 • 提高数据的全局一致性。 • 代码有时可以帮助用户理解数据的含义,避免数据的二义性和多种数据形式对同一信息的描述;