首页 百科知识 管理信息系统设计

管理信息系统设计

时间:2022-07-15 百科知识 版权反馈
【摘要】:一、系统设计概述所谓系统设计,就是根据目标系统逻辑功能的要求,结合实际情况,采用一定的方法,详细地确定目标系统的结构和具体实施方案,即建立目标系统的物理模型。④处理过程设计。当两个模块之间除了传递数据信息之外,还传递控制信息时,则被称为控制耦合。

一、系统设计概述

所谓系统设计,就是根据目标系统逻辑功能的要求,结合实际情况,采用一定的方法,详细地确定目标系统的结构和具体实施方案,即建立目标系统的物理模型。

1. 系统设计的内容

(1) 系统的总体设计。

系统的总体设计主要根据系统分析报告中所描述的系统目标、系统功能与环境条件,确定系统的总体结构,将系统按照功能划分为若干个子系统,按照层次结构关系,划分功能模块,确定模块间的相互关系,画出系统结构图。

(2) 系统的详细设计。

①代码设计。

②数据库设计。

③输入输出设计。

④处理过程设计。

2. 系统设计的原则

(1) 系统的观点。

(2) 采用模块化的结构。

(3) 阶段划分明确、分步实现。

(4) 尽可能地选用先进及合适的计算机语言进行程序设计。

3. 系统设计的评价指标

(1) 可靠性

(2) 工作质量。

(3) 可维护性。

(4) 工作效率。

(5) 经济性。

4. 系统设计的方法

20世纪70年代以前,程序流程图几乎是系统分析员、系统设计员和程序员的唯一的设计工具。

20世纪70年代初,人们提出并逐渐发展了结构化系统分析与设计 (Structured Systems Analysis and Design) 的思想和相应的方法。

在系统设计中所使用的、有代表性的方法主要有Constantine的结构化设计技术,它依赖于贯穿系统始终的数据流; Jackson、Warnier等人的方法则以数据结构为基础; 还有Ledgard的数据流与数据结构相结合的方法。

二、系统总体结构设计

1. 结构化设计概述

(1) 结构化设计的概念与任务。

结构化设计的基本思想是模块化,即将一个系统分解成若干大小适当、功能明确、彼此具有较强独立性、又有一定联系的组成部分,即模块。

结构化设计的任务是根据数据流程图来建立系统结构图,用系统结构图来描述系统分层次的模块结构以及模块之间的通信与控制关系。

(2) 模块。

模块是可以组合、分解和更换的功能单元,它具有以下三种基本属性。

①功能: 说明该模块实现什么。

②逻辑: 描述模块内部如何实现所需要的功能。

③状态: 描述模块的使用环境或条件以及和其他模块间的相互关系。

模块加上数据流、控制流以及模块之间的调用关系,就组成了系统结构图。

(3) 系统结构图。

系统结构图的基本符号如图8-17所示。

图8-17 系统结构图的基本符号

模块用一个矩形框表示,框内给出模块的名称。

从一个模块指到另一个模块的箭头,表示模块间的调用关系。箭尾连接的是调用模块,箭头连接的是被调用模块。而连接在箭尾的菱形,则是表示该模块对其下属模块的选择调用关系。用一个带箭头的弧形线段来表示一个模块对其下属模块的循环调用关系。

另外还有符号S和T表示数据流名,并用一端连一个空心小圆圈,另一端连一个箭头的线段表示。符号P表示控制流名,并用一端连一个实心小圆圈,另一端连一个箭头的线段表示,箭头的方向表明信息传递的方向。

(4) 系统结构图形成案例。

原始某“订单处理”数据流程图如图8-18所示。

图8-18 某“订单处理”数据流程图

其对应的“订单处理”功能的系统结构图如图8-19所示:

图8-19 “订单处理”功能的系统结构图

2. 系统功能模块的划分

系统功能模块的划分主要参考模块的聚合性、模块的耦合性以及模块的控制范围和影响范围。

(1) 模块的聚合性 (Cohesion)。

模块的聚合性是衡量一个模块内部各组成部分之间整体统一性的指标。模块的聚合性从弱到强一共分为6种聚合,依次为: 偶然聚合→逻辑聚合→时间聚合→过程聚合→顺序聚合→功能聚合。

①偶然聚合。

如果一个模块是由若干个彼此毫无关系的功能成分偶然地组合在一起构成的,则称之为偶然聚合模块。

②逻辑聚合。

如果一个模块是由若干个结构不同但具有处理逻辑相似关系的功能成分组合在一起构成的,则称之为逻辑聚合模块。

③时间聚合。

如果一个模块是由若干个处理内容不同但几乎是要在相同的时间内执行的功能成分组合在一起构成的,则称之为时间聚合模块。

④过程聚合。

如果一个模块是由若干个为实现某项业务处理、执行次序受同一个控制流支配的功能成分组合在一起构成的,则称之为过程聚合模块。

⑤顺序聚合。

如果一个模块内部的各个处理功能密切相关,顺序执行,前一个处理的输出直接作为后一个处理的输入,各处理功能处在同一线性链上,则这种模块被称为顺序聚合模块。

⑥功能聚合。

如果一个模块是由一个单独的且能够确切定义的处理功能组成,则称之为功能聚合模块。这种模块对确定的输入进行一定的处理,并输出可以预期的结果。

(2) 模块的耦合性 (Coupling)。

模块的耦合性是衡量一个模块与其他模块之间相互作用程度的指标。模块耦合程度的高低将直接影响到系统的可修改性和可维护性。模块的耦合性从弱到强分为三个层次,依次是数据耦合、控制耦合和内容耦合。

①数据耦合。

两个模块之间的联系只是通过数据交换即得以实现,则被称为数据耦合。

②控制耦合。

当两个模块之间除了传递数据信息之外,还传递控制信息时,则被称为控制耦合。

③内容耦合。

如果一个模块与另一个模块的内部属性有关系,则这种模块之间的连接关系被称为内容耦合。

(3) 模块的控制范围和影响范围。

一个模块的控制范围,是指它可以调用的所有下层模块和其本身所组成的集合。而一个模块的影响范围,是指由该模块中所包含的判断处理所影响到的所有其他模块的集合。

模块的控制范围和影响范围的关系,直接决定了系统中模块关系的复杂性和系统的可修改性和可维护性。因此,在系统结构设计当中,应遵循以下基本原则: 对于任何一个具有判断功能的模块,其影响范围应当是它的控制范围的一个子集。

对于模块的控制范围和影响范围的关系所存在的各种不同情况,可以归结为以下四种基本类型: 影响范围超出控制范围、判断点位置过高、判断点位置居中和理想设计。

各类型分别如图8-20~图8-23所示。

图8-20 影响范围超出控制范围

图8-21 判断点位置过高

图8-22 判断点位置居中

图8-23 理想设计

对于模块的影响范围不在其控制范围之内的情况,必须加以改进。一般可以通过以下几种方法来改进。

①在整个系统结构中向上移动判断点的位置,以扩大模块的控制范围。

②将具有判断功能的模块合并到它的上层调用模块当中去,从而提高判断点的位置。

③在系统结构层次中,将受到某判断模块影响而又不在其控制范围内的模块下移,使它处于判断模块的控制范围之内。

本书举例说明如何处理模块的影响范围超出控制范围的情况:

图8-24所示的是一个存在问题的系统结构图。

图8-24 某存在问题的系统结构图

在图8-24中,P1模块的影响范围不只是P11和P12,而且还包括了P21和P22。因为P1模块执行处理完毕之后给出一个控制参数,P2模块接到控制参数之后,据此再判断调用P21还是调用P22。因此,P1模块的影响范围超出了控制范围。这种分解不但造成了P0模块和P1模块以及P0模块和P2模块之间的控制耦合,而且产生了双重判断,这将导致维护工作难度增大,系统的可变性差。

改进后的系统结构如图8-25所示。

图8-25 改进后的系统结构图

3. 系统结构图

系统结构图 (SC,Structured Chart) 也被称为模块结构图或控制结构图。它不仅表示了一个系统功能模块的结构关系,还表示了模块的调用关系以及模块之间数据流和控制流等信息的传递关系。

(1) 模块间调用关系的有关规定。

①模块之间的调用关系应符合军事调度的原则,每一模块均有自己独立的工作任务,只有上级模块的命令才能执行。

②模块之间的信息交流只局限于其上级模块与下级模块,任何模块不能与其他上下级模块或同级模块直接发生信息交流。

③若某一个模块要与其邻近的同级模块发生联系,则必须通过它们各自的上级模块进行传递。

④在系统结构图中,按照一般习惯,模块之间的调用次序是从上到下,自左向右进行。

(2) 系统结构图的基本结构。

系统结构图的基本结构包括内导结构 (Afferent Structure)、外导结构 (Efferent Struc-ture) 和转换结构 (Transform Structure) 三种基本结构。

(3) 系统结构图的设计。

绘制系统结构图的过程,实际上就是对系统功能模块 (先将整个系统当作一个模块)进行分解设计的过程——合理地将数据流程图转变为所需要的系统结构图。

利用SD方法进行系统结构图的设计,通常分为两个步骤: 首先,由数据流程图导出初始系统结构图。然后,利用评价模块结构质量的三个具体标准 (聚合性、耦合性、影响范围与控制范围) 对系统结构图进行逐步改进。

数据流程图有两种典型的结构: 变换中心型和事务中心型。

变换中心型数据流程图是一种线状结构,它可以比较明显地分成输入、中心加工和输出三部分。

事务中心型数据流程图是一种束状结构。在事务中心型数据流程图当中,一个数据处理将它的输入分解成一束平行的数据流,然后对后面的处理进行选择性执行。

需要提出的是,实际中存在的数据流程图都是线状和束状两种结构的混合形式,前者往往存在于上层的数据流程图当中,而后者则通常存在于下层的数据流程图当中。

三、代码设计

代码 (code) 又被称为编码,它是客观实体的名称、属性、状态等内容的标识。

在信息系统中,代码是一连串字母、数字、符号的组合,它是人和计算机的共同语言,是便于计算机对信息进行分类、核对、统计和检索的关键,因而代码设计是实现一个信息系统的前提条件。

1. 代码的定义和主要功能

(1) 代码的定义。

代码是代表事物名称、属性、状态等的符号。

(2) 代码的主要功能。

代码的功能主要包括以下几个方面。

①为事物提供一个概要而不含糊的认定,便于数据的存储和检索。

②可以提高处理的效率和精度。

③提高了数据的全局一致性。

④代码是人和计算机的共同语言,是两者交换信息的工具。

2. 代码的种类

(1) 顺序码。

它由连续的数字所组成; 对代码对象从头开始按自然数顺序进行连续编码。

如某院各系部编码是顺序码。

代码对象: 会计系 工商管理系 物资经贸系 信息科学系…

代 码: 1系 3系 3系 4系…

顺序码由于没有逻辑含义作基础,一般不能说明信息的任何特征,且不易进行分类处理; 但它的优点是简单明了、短小精悍。

(2) 分组码。

将一定位长的代码根据需要分成若干组,代码中的每一组都有一定的含义。

例如,学生的学号,可用分组码进行编码如下:

分组码的优点是代码对象分类基准明确,每一组都有特定的分类意义,容易记忆与追加; 其缺点是占用位数较多。信息系统中的代码许多都采用分组码,因为分组码十分便于进行分类处理。

(3) 块码。

按照代码对象所具有的共同特性将代码分成若干块,在每一个块内再按顺序号进行编码。

如全国范围硕士研究生招生专业目录及名称代码即块码。

01 哲学

02 经济学

12 管理学

1201 管理科学与工程

120100 管理科学与工程

1202 工商管理

120201 会计学

120202 企业管理 (含财务管理、市场营销、人力资源)

120203 旅游管理

120204 技术经济及管理

1203 农林经济管理

1204 公共管理

1207 图书馆、情报与档案管理

块码占用位数不多,而且区分功能较强; 但缺点是当分组过多时,处理起来不太方便。

(4) 助记码。

将代码对象的名称、规格等用汉语拼音或巩缩写等形式编成代码,帮助记忆。

TV-B-14 表示14英寸黑白电视机

TV-C-29 表示29英寸彩色电视机

ZCL 表示总产量

助记码适用于数据较少的情况,否则容易引起联想错误。优点是直观明了; 缺点则是处理不便。

(5) 缩略码

缩略码是从代码对象的名称中提取几个常用的关键字母作为代码。

代码对象 代码

男 M

女 W

千克 KG

毫米 MM

总额 AMT

合同 Cont (contract)

发票号 Inv.No (invoice number)

缩略码实际上是助记码的特例,其优点是容易理解与记忆; 缺点则是应用有局限性。

3. 代码的校验

(1) 常见代码校验方法。

常见的代码校验方法主要有以下两种。

①带校验位的代码校验方法。

带校验位的代码校验方法要求所设计的代码结构中含有校验位,通常是代码的最后一位(或多位)。校验位的值是按某种计算方法,由代码的各个位的值计算出来的。

带校验位的代码校验方法的缺点是,使代码长度增加了一位 (或多位)。

②代码库检索校验方法。

代码库检索校验方法采用检索代码库的办法,实现代码的校验。具体地说,就是首先建立起标准的代码库,然后,当输入代码时,都要到代码库中检索该代码,如果检索成功,则说明所输入的代码是正确的。

代码库检索校验方法的校错率为百分之百。其缺点是频繁检索代码库会使系统效率降低,尤其对于大型数据库。

(2) 带校验位的代码校验方法。

带校验位的代码校验方法的基本原理是按预先规定的算法,根据原代码值算出校验位值,附加在源代码后。代码输入后再用同样的算法,根据原代码自动计算校验位的值,以校验输入的正确性。带校验位的代码校验方法事实上是将校验位变成代码的一个组成部分,即“代码值=原代码+校验位”。

带校验位的代码校验方法具有很强的校错能力,可以发现以下各种错误。

①抄写错误,例如1写成7。

②易位错误,例如1234写成1324。

③双易错误,例如1234写成1423。

④随机错误,包括以上两种或三种综合性错误或其他错误。

(3) “加权取余”方法。

计算校验值的方法有许多种,各具不同的优缺点。“加权取余”方法是其中一种常用的方法。

①校验值的生成过程。

第一步: 对原代码中的每一位加权求和S。

n位代码为: C1,C2,C3,…,Cn

权因子为: P1,P2,P3,…,Pn

加权和为: S=C1×P1+C2×P2+C3×P3+…+Cn×Pn

即:S=C1P1+C2P2+…+CnPn=(CiPi)

其中,权因子可以任意选取,选取原则以提高错误发生率为基础。常用的有: 全取1; 几何级数20,21,22,…; 摆动数列1,2,1,2,…; 质数2,3,5,…; 等等。

第二步,求余数R。

用加权和S除以模数M可得余数R,即: S/M=Q…R (Q为商数)。

其中,模数M也可任意选取,同样以提高错误发生率为基础。常用的模数为10和11。

第二步,选择校验值。

可选用下述方法中的一种获得校验值:

一是余数R直接作为校验值。

二是把模数M和余数R之差 (即M-R) 作为校验值。

三是取R的若干位作为校验值。

把获得的数校验值放在原代码的最后作为整个代码的组成部分。

②实例计算校验值。

例: 假设原代码是35186,采用“加权取余”校验方法生成该代码的校验值。

首先,选取加权因子为24,23,22,21,20,然后加权求和:

S=3×24+5×23+1×22+8×21+6×20=48+40+4+16+6=114

其次,求余数: S/M=114/11=10…4 (R)。如果余数R为10,则按0处理。

最后,加上校验值7以后的代码值为351867。

4. 代码设计的原则

合理的代码设计是信息处理系统是否具有生命力的一个重要影响因素,在代码设计时,应该遵循以下原则。

(l) 设计的代码在逻辑上必须能满足用户的需要,在结构上应当与处理的方法相一致。例如,在设计用于统计的代码时,为了提高处理速度,往往使之能够在不需调出有关数据文件的情况下,直接根据代码的结构进行统计。

(2) 一个代码应唯一标志它所代表的事物或属性。

(3) 代码设计时,要预留足够的位置,以适应不断变化的需要。否则,在短时间内,随便改变编码结构对设计工作来说是一种严重浪费。一般来说,代码越短,分类、准备、存储和传送的开销越低; 代码越长,对数据检索统计分析和满足多样化的处理要求就愈好。但编码太长,留空太多,多年用不上,也是一种浪费。

(4) 代码要系统化,代码的编制应尽量标准化,尽量使代码结构对事物的表示具有实际意义,以便于理解及交流。

(5) 要注意避免引起误解,不要使用易于混淆的字符。如0、2、1、S、V与O、Z、I、5、U易混; 不要把空格作代码; 要使用24小时制表示时间等。

(6) 要注意尽量采用不易出错的代码结构,例如,字母—字母—数字的结构 (如W)比字母—数字—数字的结构 (如W2W) 发生错误的机会要少一些。

(7) 当代码长于4个字母或5个数字字符时,应分成小段,这样人们读写时不易发生错误。如726—499—6135比7264996135易于记忆,并能更精确地记录下来。

(8) 若已知码的位数为p,每一位上可用字符数为Si,则可以组成码的总数为: C=∏Si。例如,对每位字符为0~9的三位码,共可组成C=10×10×10=1000种码。

5. 代码设计步骤

代码设计的步骤会因代码设计方法和工具的不同而有所差异,但是基本符合以下步骤和流程。

(1) 明确代码目的。

(2) 决定代码对象。

对所要处理的所有信息逐项进行研究,以决定哪些项目需要代码化。对已经存在代码的对象要整理出代码调查书,以便重新研究。

(3) 决定代码使用范围和期限。

(4) 分析代码对象的特性,包括代码使用频率、变更周期、追加删除情况及处理要求等。

(5) 决定代码结构。

(6) 对每一种代码编写代码设计书。

(7) 汇集全部的代码设计书编制成代码本,并建立相应的代码管理制度,以便于代码的使用与维护。

四、数据库设计

数据库设计是指在现有数据库管理系统的基础上建立数据库的过程。

设计的主要依据是系统分析阶段提供的数据流程图、数据字典以及所使用的数据库管理系统提供的功能和描述工具。

设计的主要任务是设计出能够反映实际信息关系、数据冗余少、存储效率高、易于实施与维护,并能满足各种应用要求的数据模型。

在数据库设计中常用的一种实用方法被称为实体―联系方法 (Entity-Relations Ap-proach),简称为E-R方法。其整个设计过程分为四个阶段。

①概念模型设计。

②逻辑模型设计。

③物理设计。

④数据库实现。

1. 概念模型设计

概念模型是一种面向问题的数据模型,它描述了从用户角度看到的数据库的内容及其联系,是一种纯粹的现实反映,而与存储结构、存取方式等数据库的具体实现内容无关。用E-R图表示。

E-R图有三种基本成分: 实体、联系和属性。

(1) 实体。

实体是现实世界中客观存在的事物,例如,凭证、账簿、报表等都是实体。在E-R图中,实体用方框表示,方框中写明实体的名称。

(2) 联系。

实体之间可能存在着各种联系,这种联系通过信息系统的功能活动表现出来。在E-R图中,联系用一个带有两条以上连线的菱形框表示,菱形框中写明联系的名称,它往往是一个动词短语。

在E-R图中还应注明这种关系的类型: 一对一(1∶1)、一对多(1∶N) 或多对多(N∶M)。

(3) 属性。

实体或联系的性质就是属性。例如,记账凭证有凭证号、凭证日期、凭证摘要、借方科目、贷方科目、金额等属性。属性具有值,在E-R图中,属性用一个带有一条连线的圆圈表示,圆圈中写明属性的名称。

我们通常可以用实体的某一个属性来唯一区分实体中的各个记录,这个属性就称为关键字。

E-R图的实例如图8-26所示。

图8-26 E-R图实例

2. 逻辑模型设计

数据库的逻辑模型设计就是设计数据的结构,即将数据组织成一个和计算机提供的数据库管理系统所采用的数据模型相符合的形式。

从E-R图转换导出关系数据模型,实际上就是将实体属性和联系属性这两类数据转换成关系数据模型中的关系。其转换的基本规则相应的有以下两条。

(1) 一个实体用一个关系来表示。

这个关系的属性由实体的所有属性组成,实体的关键字就是这个关系的关键字。

(2) 一个带有属性的联系用一个关系来表示。

在多对多的情况下,这个关系的属性由联系的所有属性和构成此联系的每一个实体的关键字组成,构成此联系的每一个实体的关键字组合就是这个关系的关键字。

3. 物理模型设计

数据库的物理设计是指为了将数据库的逻辑模型在计算机的物理存储设备上实现,如何组织和存取数据,以建立起一个既节省存储空间,又有较高存取速度的性能良好的物理数据库。

物理数据模型是在概念数据模型的基础上根据一个具体的DBMS特性建立的数据模型,它是数据库应用的蓝本。物理数据模型涉及以下一些基本概念。

(1) 表。

表是数据库中用来保存信息的一种数据结构,由概念模型中的实体转化而来。一个表中记录着关于实体的信息,是整个数据库组织的框架。

(2) 列。

列是组成表的基本单位,由概念模型中的属性转化而来。一个表由多个列组成,每个列都有一个数据类型。

(3) 主键与候选键。

主键是用来唯一标识表中每个记录的一个或多个列的集合,由概念模型中的主标识符转化而来。在物理数据模型中,每张表必须有一个主键。主键通常用pk表示

候选键也是用来唯一标识表中记录的一个或多个列的集合,通常由概念模型中的次标识符转化而来。候选键通常用ak表示。

(4) 外键。

外键是与其他表连接的公共列,这个列通常是其他表的主键。外键一般是由概念模型中的联系产生的。外键通常用fk表示。

(5) 视图。

视图是从基本表导出的表,它只存储视图的定义,不把数据独立地存储在数据库中。视图的主要优点有:

①支持数据的逻辑独立性。

②简化了数据查询和处理操作,使应用程序简单灵活。

③简化了用户权限的管理。

(6) 存储过程。

存储过程是存储在服务器上的一组预编译的SQL语句,通常用来实施企业规则。使用存储过程有以下优点:

①可以与其他应用程序共享逻辑。

②提供安全机制。

③加速SQL语句的执行,提高了系统的性能。

④减少网络交通负担。

(7) 触发器

触发器是一种特殊类型的存储过程,当有操作影响到触发器保护的数据时,触发器就自动执行。触发器的主要作用有:

①实施企业规则。

②保证实体的相关完整性。

(8) 索引

索引描述了数据在表中是如何组织的,是用来加速数据检索速度的一种机制。一般数据库系统支持以下索引类型:

①唯一索引。

②复合索引。

③簇索引。

(9) 用户定义数据类型。

用户定义数据类型并不是真正的新数据类型,它是描述已有数据类型的一种方式。用户定义数据类型提供了一种加强数据库或服务器内部和它们之间的数据类型一致性的机制,使用户能使用针对特定用途定制的描述名称和格式,从而扩展了数据库系统的基本数据类型,简化了对常用规则和缺省值的管理。概念模型中的域通常转化为用户定义数据类型。

(10) 默认值和规则。

默认值用来向无值的列提供一个预先指定的值。规则可以在数据库管理中指定哪些值允许或不允许插入某些列中。

(11) 完整性检查约束。

完整性是指数据库中数据的正确性和一致性。为了保证数据的完整性,可以使用默认值、规则、触发器、存储过程,也可以用以下约束。

①检查约束: 该约束能够限制插入列中的值。

②唯一性和主键约束: 该约束能够保证同一表中的任意两行在某些列上不能具有相同的值,另外,主键约束还要求在指定的列上不允许空值。

③参照完整性约束: 该约束能够保证插入某些列的数据必须已存在于被指定表的列中。

利用默认值、规则及完整性检查约束等手段,可以完成概念模型中定义的有关业务规则。

五、人—机接口设计

系统建立之后,其运行和使用必定涉及人、机两个方面。如何使系统能够正常顺利地运行,如何使人们对系统的使用简单方便,一个重要的方面就是在系统设计时必须做好人—机接口设计。人—机接口设计的内容包括输出设计、输入设计与人—机对话设计三个方面。

1. 输出设计

输出设计的任务是使管理信息系统输出满足用户需求的信息。输出设计的目的是为了正确及时反映和组成用于管理各部门需要的信息。信息能够满足用户需要,直接关系到系统的使用效果和系统的成功与否。

(1) 输出设计的内容。

①输出信息使用情况,包括信息的使用者、使用目的、信息量、输出周期、有效期、保管方法和输出份数。

②输出信息内容,包括输出项目、精度、信息形式 (文字、数字)。输出格式表格、报告、图形等。

③输出设备和介质。设备如打印机、显示器等; 介质如磁盘、磁带、纸张 (普通、专用) 等。

(2) 输出方式的选择。

在系统设计阶段,设计人员应给出系统输出的说明,这个说明既是将来编程人员在软件开发中进行实际输出设计的依据,也是用户评价系统实用性的依据。因此,设计人员要能选择合适的输出方式,并以清楚的方式表达出来。常见的输出方式包括显示输出、打印输出、磁盘输出、磁带输出、光盘输出和绘图输出等几种。

(3) 输出设计的评价。

输出设计的评价一般要考虑以下几个方面。

①能否为用户提供及时、准确、全面的信息服务。

②是否便于阅读和理解,符合用户的习惯。

③是否充分考虑和利用了输出设备的功能。

④是否为今后的发展预留一定的余地。

2. 输入设计

输入是管理信息系统与用户之间交互的纽带,设计的任务是根据具体业务要求,确定适当的输入形式,使管理信息系统获取管理工作中产生的正确的信息。输入设计的目的是提高输入效率,减少输入错误。

(1) 输入设计的原则。

输入设计的设计原则包括以下几个方面: 一是要控制输入量。尽可能利用计算过程减少输入延迟; 二是要减少输入错误,采用多种校验方法和验证技术; 三是要避免输入的额外步骤并简化输入过程。

(2) 输入设计的内容。

输入设计的内容主要包括输入界面设计和输入设备选择两个方面的内容。输入设计首先要确定输入设备的类型和输入介质,目前常用的输入设备有以下几种: 键盘—磁盘输入装置、光电阅读器和终端输入等。

(3) 输入数据的校验。

输入数据的校验方法包括数据录入前的人工复查、重复录入校验、人工复核、数据类型校验、数值范围及合理性校验、平衡校验和控制总数校验等方法,在进行选择时可根据具体校验对象的不同而有针对性的选择。

3. 人—机对话设计

人—机对话方式主要包括菜单式、填表式和问答式三种。

人—机对话方式的设计要符合以下原则。

(1) 采用面向用户的思想,汉字菜单提示,操作简便实用。

(2) 采用Windows的风格设计各种类型的对话框及图标,实现高度交互性。

(3) 对话要清晰、简洁、明了,不能具有二义性。

(4) 对话应能反映用户的观点,尽可能地考虑用户的业务用语和习惯。

(5) 提供运行指导和联机帮助功能。

(6) 系统应该对操作人员的反应做出迅速的响应,不能让操作人员不知所措地等待,因为这种等待往往是不能忍受的。

(7) 当操作人员输入的内容有错时,系统应将错误信息的细节显示出来给操作人员,并能指导其改正错误,错误信息设计要有建设性。

(8) 需要保密的对话应提供保密措施。

(9) 对话要适应不同操作水平的用户,便于维护和修改。

(10) 关键操作要有强调和警告。

六、处理过程设计

系统结构图设计完成之后,还要对其中的每一个模块进行具体的说明,以便在系统实施阶段中,可以根据系统结构图和模块说明书,比较方便而且正确地编写出程序代码。

处理过程设计的主要工作就是通过一种合适的表达方法来描述每个模块的功能实现过程。这种表达方法应当简明、准确,并由此能直接导出用编程语言表示的程序。处理过程设计的描述工具较多,下面介绍几种常用的各有其特点的工具。

1. 流程图

(1) 流程图的概念。

流程图 (Flow chart) 即程序框图,也被称为控制流程图。流程图是由一些图框和流程线组成的,其中图框表示各种操作的类型,图框中的文字和符号表示操作的内容,流程线表示操作的先后次序。

流程图使用一些标准符号代表某些类型的动作,如处理用矩形框表示,判断用菱形框表示,控制用箭头表示。但比这些符号规定更重要的,是必须清楚地描述处理过程。

(2) 流程图的基本结构。

流程图的三种基本结构包括顺序结构、选择结构 (又被称为分支结构) 和循环结构三种,分别如图8-27~图8-29所示。

图8-27 顺序结构

图8-28 选择结构

(a) 简单选择; (b) 多情况选择

图8-29 循环结构

(a) 当循环; (b) 到循环

(3) 画流程图的软件。

用于流程图绘制的工具有多种,主流的包括以下类型。

Visual graph专业图形系统: 此系统为图形控件,在.NET开发平台下可以灵活应用, Delphi中也可以使用。简单易用,业内应用较广泛。

Visio是当今最优秀的绘图软件之一,它将强大的功能和易用性完美结合,可广泛应用于电子、机械、通信、建筑、软件设计和企业管理等众多领域。

Power designer是一款比较不错的画流程图软件。

SAM业务流程梳理工具软件,为流程从业者梳理流程业务提供便捷、标准化的建模工具,为开展流程梳理、固化、发布工作提供最佳工具支持。

Visio是微软公司推出的非常传统的免费流程图软件,应用范围广泛。采用泳道图的方式能够把流程和流程的部门以及岗位关联起来,实现流程和所有者的对应。随着企业对流程管理应用需求的提升,片段、静态的方式逐渐很难适应企业实际流程管理的需要。

Control是英国Nimbus公司的流程软件,采用全息的方式能够比较全面地展示流程的基本要素,包括活动、输入输出、角色以及相关的文档等各种信息。具有简洁易用的特性,不支持多维度扩展应用。

Aris是IDS公司的流程软件,具有IDS特有的多维建模和房式结构,集成了流程管理平台,可以通过流程平台进行流程分析和流程管理。

Provision是Metastorm公司的流程软件,以多维度系统建模见长,能够集成企业的多种管理功能,是流程管理专家级客户应用的工具。

框图宝 (My Flow Chart) 是Youfabao的在线流程图软件,可以在线绘制流程图,简单、易用,基于云计算,数据永不丢失。

Process on是一个基于Web的免费画流程图的网站。特点是免费、不用安装、可以多人同时登录画一张流程图。

2.NS图

流程图是由一些特定意义的图形、流程线及简要的文字说明构成的,它能清晰明确地表示程序的运行过程。在使用过程中,人们发现流程线不一定是必需的,随着结构化程序设计方法的出现,1973年美国学者I.Nassi和B.Shneiderman提出了一种新的流程图形式,这种流程图完全去掉了流程线,算法的每一步都用一个矩形框来描述,把一个个矩形框按执行的次序连接起来就是一个完整的算法描述。这种流程图用两位学者名字的第一个字母来命名,称为NS流程图。

(1) NS图的基本结构。

NS图包括5种基本结构,分别如图8-30~图8-34所示。

图8-30 顺序结构

图8-31 分支结构

图8-32 多分支结构

图8-33 当循环结构

图8-34 到循环结构

(2) NS图的优缺点。

①NS图的优点。

第一,它强制设计人员按SP方法进行思考并描述他的设计方案,因为除了表示几种标准结构的符号之外,它不再提供其他描述手段,这就有效地保证了设计的质量,从而也保证了程序的质量。第二,NS图形象直观,具有良好的可见度。例如,循环的范围、条件语句的范围都是一目了然,所以容易理解设计意图,为编程、复查、选择测试用例、维护都带来了方便。第三,NS图简单、易学易用,可用于软件教育和其他方面。

②NS图的缺点。

手工修改比较麻烦,这是有些人不用它的主要原因。

3.PAD图

PAD是问题分析图 (Problem Analysis Diagram) 的英文缩写,自1974年由日本日立公司发明以来,已经得到一定程度的推广。它用二维树形结构的图表示程序的控制流,将这种图转换为程序代码比较容易。

(1) PAD图的基本结构。

PAD图包括5种基本结构,分别如图8-35~图8-39所示。

图8-35 顺序结构

图8-36 分支结构

图8-37 多分支结构

图8-38 当循环结构

图8-39 到循环结构

(2) PAD图的优点。

PAD图的优点主要包括以下方面。

①使用结构优化控制的PAD符号所设计出来的程序必然是程序化程序其利用价直高。

②PAD图所描述的程序结构十分清晰。PAD图中最左边的竖线是程序的主线,即第一层控制结构。随着程序层次的增加,PAD图逐渐向右延伸,每增加一个层次,图形向右扩展一条竖线。PAD图中竖线的总条数就是程序的层次数。

③用PAD图表现程序逻辑,易读、易懂、易记。PAD图是二维树型结构的图形,程序从图中最左边上端的节点开始执行,自上而下,从左到右按顺序执行。

④很容易将PAD图转换成高级程序语言源程序,这种转换可由软件工具自动完成,从而省去人工编码的工作,有利于提高软件可靠性和软件生产率。

⑤既可用于表示程序逻辑,也可用于描述数据结构。

⑥PAD图的符号支持自顶向下、逐步求精方法的使用。开始时设计者可以定义一个抽象程序,随着设计工作的深入而使用“def”符号来逐步增加细节,直至完成详细设计。

PAD图是面向高级程序设计语言的,为FORTRAN,COBOL和PASCAL等每种常用的高级程序设计语言都提供了一整套相应的图形符号。由于每种控制语句都有一个图形符号与之对应,显然将PAD图转换成与之对应的高级语言程序比较容易。

PAD是一种程序结构可见性好、结构唯一、易于编制、易于检查和易于修改的详细设计表现方法。用PAD可以消除软件开发过程中设计与制作的分离,也可消除制作过程中的“属人性”。虽然目前仍需要由人来编制程序,一旦开发的PAD编程自动化系统实现的话,计算机就能PAD自动编程,到那时程序逻辑就是软件开发过程中人工制作的最终产品。显然在开发时间上大大节省,开发质量上将会大大提高。

七、系统设计说明书

系统设计完成之后,系统人员应将系统设计的全部结果包括系统结构图、模块说明书、系统配置方案及各项详细设计内容等一并形成系统设计说明书。通常在系统设计完成以后要对其结果进行一次阶段评审,系统设计说明书一经评审通过,并经有关部门和领导审核批准,则系统设计阶段的工作即告结束。

1. 系统设计说明书的引言

系统设计说明书的引言部分主要包括以下内容:

(1) 摘要: 目标系统的名称、目标和主要功能。

(2) 对象。

(3) 工作条件与限制。

(4) 参考和引用的资料。

(5) 专门术语解释。

2. 系统总体设计方案

系统总体设计方案主要包括以下内容:

(1) 模块结构设计。

(2) 系统配置设计。

(3) 数据库设计。

(4) 代码设计。

(5) 输入设计。

(6) 输出设计。

(7) 对话设计。

3. 方案实施计划

方案实施计划主要包括以下内容:

(1) 工作任务的分解。

(2) 任务进度。

(3) 经费预算。

系统设计说明书的内容与格式,还可进一步参照CB8767—88《计算机软件产品开发文件编制指南》中的有关规定。

本章习题

1. 简述系统可行性分析的步骤及意义。

2. 简述数据流程分析的基本符号和数据流程图的表示方法。

3. 简述系统设计的内容和原则。

4. 简述代码设计的原则和步骤。

5. 分析人—机接口设计的原则。

6. 简述系统设计说明书的内容。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈