1、第五章信息系统设计本章内容o5.2 系统总体设计方法 o5.3 结构化设计的策略 o5.4 系统详细设计 o5.5 构筑新系统的物理模型 5.1 系统设计概述o 系统设计阶段的任务 o 最优设计的含义 o 系统设计阶段的主要内容 系统设计阶段的任务o 系统设计阶段的任务是依据系统分析报告和设计人员的知识以及经验在各种技术和实施方案中权衡利弊、精心设计、合理地使用各种资源,将分析阶段的逻辑模型转化为具体的计算机实现方案的物理模型,最终确定新系统的详细设计方案。 最优设计的含义o最优设计是指在一定条件的约束下(如时间、资源等)使系统的可靠性、有效性(效率)和可维护性达到最大值,即使系统所期望的目标
2、达到最大满足度。n可靠性,是对系统最基本的要求,是有效性和可维护性的基础。它要求系统运行稳定,较少出错和发生故障,能及时报告出错误信息并分类处理,一旦发生故障后能很快排除。n有效性,通常人们总是希望系统有较高的运行效率。衡量一个系统的有效性有三个参数:处理能力、运行时间和响应时间。o处理能力是指单位时间内处理的业务量;o运行时间是指系统从数据输入到输出信息,完成整个处理的时间;o响应时间则指用户从发出数据请求到得到系统回答之间的等待时间。n可维护性,表现在三个主要方面:适应性、易修改和易扩充。系统设计阶段的主要内容o总体设计:确定系统的模块结构,它包括以下三项工作:n如何把系统分解成一个个模块
3、n如何确定模块间的联系n如何评价模块结构质量o详细设计:是具体确定每一模块采用什么算法,主要考虑:n代码设计n数据库设计n用户界面设计n输入/输出设计n处理过程设计等 系统设计报告o 通过总体设计和详细设计,最终要产生新系统物理模型,并据此形成“系统设计报告”。o 系统设计报告主要包括模块结构和模块功能说明两方面的内容。n模块结构说明系统由哪些模块组成和模块间的关系如何;n模块功能说明描述系统模块具体的输入输出数据,完成的功能和采用的算法。o 系统设计设计报告经过审核之后成为系统开发的下一阶段即系统实施阶段的工作依据。 本章内容o5.1 系统设计概述 o5.3 结构化设计的策略 o5.4 系统
4、详细设计 o5.5 构筑新系统的物理模型 5.2 系统总体设计方法o 结构化设计方法的基本思想 o 结构化设计的工具 o 结构化设计的分解原则 系统总体设计方法结构化设计方法 o 结构化系统设计方法是在结构化思想的基础上,发展起来的一种用于复杂系统结构设计的技术,它是运用一套标准的设计准则和工具,采用模块化的方法进行系统结构设计。o 结构化设计方法适用于任何信息系统的总体设计,它可以和分析阶段的结构化分析方法以及实施阶段的结构化程序设计方法前后衔接起来。 结构化设计方法的基本思想o结构化设计方法的基本思想是使系统模块化,在这一思想的指导下,设计人员根据系统的数据流程图,自顶向下,层层分解,步步
5、求精,最后建立起一个结构良好的模块化系统。o结构化设计的主要内容,包括下列三个方面:研究系统分解成一个个模块的方法;评价模块的方法;从数据流程图导出系统模块结构图的方法。o结构化设计方法的优点是可变更性强,能适应系统环境的变化,每一模块功能单一,模块之间相互独立,便于比较、编程、测试、修改、维护和排错等。 结构化设计的工具系统结构图 o 系统结构图是系统设计阶段描述系统结构的主要工具。它作为一种文档,不仅包括了系统由哪些模块组成,而且还包括了模块与模块之间及每个模块内部各组成部分的联系方式。工资支付子系统计算应发工资计算实发工资打印工资单计算附加工资计算扣除金额系统结构图的符号 结构化设计的分
6、解原则 o 一是把密切相关的子问题划归为系统的同一部分o 二是把不相关的子问题划归为系统的不同部分n模块之间的联系,模块间的联系是衡量模块独立性大小的一个方面n模块内部的联系,是指一个模块内部各个组成部分之间的联系。它是衡量模块独立性的又一方面o 系统设计的总要求是尽量减小模块之间的联系,使模块的独立性达到最大本章内容o5.1 系统设计概述o5.2 系统总体设计方法 o5.4 系统详细设计 o5.5 构筑新系统的物理模型 5.3 结构化设计的策略o 结构化设计的策略有变换分析和事务分析两种。它们都是实现系统设计的具体手段。无论用哪种策略进行设计,都可以分为两步进行:n第一步是从数据流程图导出初
7、始结构图;n第二步是运用一定的规则对初始结构图进行改进。变换分析o 变换型系统结构,变换型系统是最常见的,它有输入、加工和输出三部分组成。这类系统的功能是从某处获得输入数据,在对这些数据进行加工,然后将加工结果输出。 事务分析o 事务型系统结构,这类系统是接受一项事务,然后按事务的不同类型选择,进行某一类事务的处理。选择调用某个事务处理模块,每个事务处理模块,可能调用若干个操作模块,而操作模块又可能需要调用若干个细节模块。结构化设计方法小结o 结构化的设计方法和结构化分析方法一样,都是通过“分解”来控制系统的复杂性。在设计时,“分解”就是将系统划分成一个个模块,即模块化,这体现了结构化设计方法
8、的基本思想。分解过程完成后,系统就被分为相对独立、功能单一的模块结构,每个模块都可单独地进行编程、修改等,这就大大提高了系统质量,简化了开发工作,为系统实施打下了良好基础。 本章内容o5.1 系统设计概述o5.2 系统总体设计方法 o5.3 结构化设计的策略 o5.5 构筑新系统的物理模型 5.4 系统详细设计o 总体设计侧重于设计系统的整体结构,主要进行了模块的划分和确定模块间的关系等。对于每个模块总体设计阶段只定义了模块的外部结构,即模块之间的调用关系以及参数的传递等。对于每一个模块内部的内容,应该在详细设计阶段来完成。详细设计的内容o 详细设计是在总体设计的基础上,对每一模块应具体采用什
9、么算法作进一步描述。主要内容包括:n 代码设计 n 数据库设计 n 用户界面设计 n 输出设计 n 输入设计 代码设计o 代码,指代表事物名称、属性和状态等的一种符号。它是一种特殊的数据,是一种数据的缩写结构,是唯一的标识。o 代码的功能:n唯一性n省存储空间n提高效率代码设计的原则o 代码设计的好坏对系统性能和效率影呐很大。 代码设计应遵循的一般原则是:n唯一性。一个名称可能对应多个事物,每一个事物应该有唯一的编码n合理性。代码的结构应该与事物的分类体系相对应;并适合计算机的处理n尽量使代码在字面上就能反映所代表事物的某些属性,减少出错的机会n尽量短小并有一定的可扩展性。这样可以便于记忆,同
10、时又应留有充分的余地,以便于将来代码的扩充n规范性。代码的长度和格式要统一n代码系统要有一定的稳定性代码的分类o顺序码。这是一种最简单的代码形式,它是从最小的数字开始,按顺序编排;o区间码。这种代码形式也是从最小的数字开始,依次对编码对象进行编号,但区间码把数据项分成若干组,每一区间代表一个组,且每一区间都留有一定空号,以供添加编码对象用;o层次码。这种代码的不同位有不同的含义;o缩写码。这种代码通常把编码对象的英文单词或中文拼音的词头拼在一起作为代码,以便于识别和记忆,此时应注意不要让代码重复。数据库设计o数据库的设计的基础是系统分析阶段所编制的“数据字典”,在这里系统设计人员要根据系统结构
11、图中模块的具体处理需要对数据字典中的数据项进行精炼和修改,确定它们之间的关系,也就是建立数据库的结构。建立数据库结构的原则是,既要满足客户使用数据的要求,又要使计算机保持较高的响应性能。o数据库设计最后还是落实到文件设计。系统的文件可分为共享文件和局部文件两种n共享文件存储的是系统中所有模块都有可能要访问的数据n局部文件中存储的是专为某些模块使用的数据o应首先进行共享文件的设计,然后在此基础上再进行局部文件的设计文件设计的内容o 定义每个文件的作用o 定义每个文件组织方式o 定义文件记录格式、记录数和存储量o 定义文件的存取方法o 定义文件的操作策略o 定义文件的存储介质用户界面设计o 用户界
12、面是系统与用户之间的接口,也是控制和选择信息输入输出的主要途径。用户界面设计应坚持友好、简便、实用和易于操作的原则,尽量避免过于繁琐和花哨。用户界面设计的原则o易用性,所设计的界面必须让用户容易学会使用。在良好的系统界面设计中,用户不需要记忆很多命令和规则。o反馈性。对用户每一次操作都应产生反馈信息,对需要较长时间进行的处理,系统可以显示出一个画面,告诉用户系统正在干什么,并应有完成任务的进度信息提示; o合理性。在设计菜单等提供给用户的操作功能时应注意表示的合理性,即相关功能应尽可能地放在一起。o统一性。指在类似环境中操作方法、屏幕的画面的展现等均应类似,在设计时应特别注意保持一种统一的风格
13、。o容错性。系统应表现出较强的对输入的容错性,对于用户的输入首先应做到无论怎样输入错误,也不会导致系统死机。尽量使操作可逆,允许用户犯错误。其次应根据系统的需要对输入进行必要的检查,如去掉无意义的空格、对数据格式进行校验等。用户界面设计的主要内容o在系统设计阶段不可能设计每一个用户交互过程及其界面,但必须定义用户界面的总的框架。这些框架的内容包括:n确定界面形式。采用字符界面,还是图形界面,采用菜单方式,还是图形化图标方式或基于对象方式;n定义基本的交互控制方式。如图形界面中文本输入框的形状及其操作方式,窗口的种类、形状及其操作方式,另外还有滚动条、列表框等;n定义基本的图形和符号。在图形界面
14、中,常用一些图标表示某些常用的操作或应用系统中某类事物,这些图标及其语义在整个系统中要保持统一和一一对应;n定义类似环境中的操作方法,使其保持一致。如定义通用的功能键和组合键的含义及其操作内容,文本编辑的方式,窗口的转换,事件的取消操作,菜单的返回等;n定义统一的信息反馈策略; n定义统一的帮助策略;n定义统一的色彩。 输出设计的主要内容o 确定输出信息的目的:无用的信息绝对不输出o 确定输出信息的内容:输出数据项、位数、数据形式o 确定输出信息的格式:报表、凭证、单据、公文等的格式o 确定输出信息使用方面的内容:使用者、数据量、使用周期、有效期、保管方法、密级和复写份数等o 选择输出设备:打
15、印机、显示器、绘图仪等o 选择输出介质:纸张、磁盘、光盘、微缩胶卷等输入设计o 输入设计主要考虑三个方面的问题:n 输入设备n 输入方式n 输入数据的校验等输入设备的选择o 随着计算机技术的发展,输入设备的种类越来越多能够输入到计算机中的数据的类型也越来越多。设计人员必须认真分析输入数据的类型,从方便用户使用的角度选择相应的输入设备。目前常用的输入设备有:n键盘n触摸屏n多媒体输入设备nIC卡读写器确定输入方式o 输入方式主要有两种:脱机输入方式和联机输入方式。n脱机输入方式是将数据的输入过程与处理过程分离,这种分离可能是时间上的,也可能是空间上的,还可能两者都有。在这种方式下,先通过输入设备
16、,如键盘,将数据输入到某个存储介质上保存,从而完成输入过程。此时,输入的数据并没有进入系统的主数据库。当计算机需要这些数据进行某种处理时,再将这些数据通过软盘、磁带或网络送入计算机系统的主数据库,并进行处理。这种方式适合非实时性处理和批处理。n联机输入方式是系统采集到数据后,立即进行数据处理,并反映到数据库中。这种方式适合实时系统使用。 输入数据的校验o输入计算机的数据必须保证是正确的,因为输入的是垃圾,无论系统设计的再好,输出的一定也是垃圾。因此必须对输入数据进行校验。o数据校验方式很多,但总的来说分为人工校验和计算机校验两大类。o数据校验的具体方法主要有以下几种:n格式校验。主要检查输入数
17、据的格式,如格式是否符合要求,是否包含非法字符、数据项的位数是否符合要求等;n顺序校验。对于作为标识键使用的代码,为防止上下错位和重码,要进行顺序校验,这种校验可用重复输入的方法进行比较检查;n范围校验,是检查所有数据是否在规定的量值范围以内。n关系校验,主要利用数据之间的量值关系,实现数据之间的平衡检查;n逻辑校验,依据数据值的特性要求进行校验。处理过程设计o 处理过程设计时在总体设计阶段的系统结构图的基础上,更进一步地考虑每一功能模块的具体内容,选择适合的处理方法和确定处理方式。诸如是手工处理还是计算机处理,是脱机处理、联机处理还是实时处理等。o 在处理过程设计阶段要对各模块的内部处理过程
18、进行描述。在结构化系统设计中,处理过程设计要详细描述各个处理模块所用的算法和处理步骤等。 处理过程流程图o 描述模块处理过程的工具有处理过程流程图等。o 处理过程流程图是处理过程设计的表达工具,它说明信息在计算机介质上存贮、传递、转换处理的情况。它为程序流程图的设计提供详细的输入/输出依据。处理过程流程图的详细程度无一定标准,一般对应于将来可以用一段程序来实现的模块画一个处理过程流程图。 本章内容o5.1 系统设计概述o5.2 系统总体设计方法 o5.3 结构化设计的策略 o5.4 系统详细设计 5.5 构筑新系统的物理模型o 新系统物理模型 o 系统设计报告 新系统的物理模型o 一个系统的物
19、理模型主要是以系统结构图、数据存贮说明、输入/输出设计书和处理过程流程图等组成。o 系统结构图将整个系统划分成一个个相互联系的模块,并严格定义了模块间的调用格式如模块名、参数及其类型、返回值等,而处理过程流程图恰恰对各模块的内部处理过程进行了描述,详细地定义了每一个模块的输入、处理、数据存储、以及输出的具体内容,再辅之以数据存储说明、输入输出设计书等内容就形成了一个非常完整的系统物理模型。系统设计报告o 系统设计工作完成后,系统设计人员要将系统设计的结果写成文字资料,即系统设计报告。o 系统设计报告是系统设计阶段总成果的文字体现。系统的物理模型是产生系统设计报告的主要基础和依据,系统设计报告又
20、是对物理模型的详细解释和说明。系统设计报告大致包括引言、系统总体设计、系统详细设计和系统实施计划等四个部分。系统设计报告的审定o 系统设计报告完成之后,需要组织用户、系统开发人员、管理人员和有关专家参加对系统设计报告的审定工作。o 通过对设计报告的审议,系统设计人员根据各方面的建议对方案进行权衡、修改或做必要解释,最后由用户组织的主要领导做出选择何种方案的决策,并与系统设计师及开发商法人代表一同在报告上签字盖章。o 至此,系统设计阶段的工作宣告结束,研制工作从系统设计阶段转入系统实施阶段。本章思考题o 1、系统设计的内容有哪些?o 2、如何评价系统设计方案的结果?o 3、结构化系统设计的两种策略是怎样导出系统结构图的?o 4、代码设计的概念、作用和设计原则是什么?o 5、怎样进行用户界面设计?o 6、文件设计的内容是什么?o 7、输入/输出设计的内容是什么?o 8、如何进行处理过程设计?o 9、系统设计报告的内容有哪些?