首页 > 知识点讲解
       系统总体设计
知识路径: > 信息系统开发和运行管理知识 > 系统分析设计基础知识 > 系统总体结构设计、详细设计 > 
被考次数:12次     被考频率:高频率     总体答错率:43%     知识难度系数:     
相关知识点:74个      
        系统总体结构设计是指整个系统由哪些部分组成,各部分在逻辑上、物理上的相互关系,包括硬件部分和软件部分。
               系统总体布局方案
               系统总体布局是指系统的平台设计,即系统类型、信息处理方式设计、网络系统结构、软硬件配置以及数据资源在空间上的分布设计。
               设计出来的系统总体布局方案应当满足处理功能和存储功能的要求,满足系统易用性、可维护性、可扩展性、可变更性和可靠性好的要求,并考虑到系统的经济性。
               在进行系统总体布局方案设计时,有若干个问题应当进行考虑,主要包括:
               .系统类型,集中式还是分布式。
               .处理方式,根据实际情况采取其中一种,或者混合使用。
               .数据存储,根据数据量的大小决定何种存储方式,即分布存储还是集中存储。
               .网络结构,逻辑结构设计,网络协议选择。
               .硬件配置,考虑机器类型、性能价格指标等。
               .软件配置,自行开发、外包或者整体购买。
                      系统选型
                      从信息资源管理的集中程度来看,信息系统包括集中式系统和分布式系统。
                      (1)集中式系统。
                      集中式系统是一种及设备、软件资源和数据于一体的集中式管理系统。主要类型如下。
                      .单机批处理系统。
                      .单机多终端分时系统。
                      .主机-智能终端系统。
                      集中式系统的优点如下。
                      .管理与维护控制方便。
                      .安全保密性较好。
                      .人员集中使用。
                      .资源利用率高。
                      其缺点如下。
                      .应用范围与功能受限制。
                      .可变更性、灵活性和扩展性较差。
                      .对终端用户来说,由于集中式系统对用户需求的响应并不很及时,所以不利于调动他们的积极性。
                      (2)分布式系统。
                      分布式系统是一个在若干个地域上分散设置、在逻辑上具有独立处理能力,但在统一的工作规范、技术要求和协议指导下工作、通信和控制的一些相互联系且资源共享的子系统。根据网络组成的规模和方式可以分为局域网形式、广域网形式以及局域网和广域网的混合形式。
                      分布式系统的优点主要如下。
                      .资源的分散管理与共享使用,可减轻主机的压力,与应用环境匹配较好。
                      .具有一定的独立性和自治性,利于调动各节点所在部门的积极性。
                      .并行工作的特性使负载分散,因而对主机性能要求降低。
                      .可行性高,个别节点机的故障不会导致整个系统的瘫痪。
                      .可变性、灵活性高,易于调整。
                      分布式系统也有它的缺点,主要体现如下。
                      .资源的分散管理降低了系统的安全性,并给系统数据的一致性维护带来了困难。
                      .地域上的分散设置,使得系统的维护工作比较困难。
                      .管理分散,加重管理工作的负担。
                      计算机处理方式
                      计算机处理方式可以根据系统功能、业务处理的特点、性能/价格比等因素进行考虑选择,其主要处理方式如下。
                      .批处理。
                      .联机实时处理。
                      .联机成批处理。
                      .分布式处理等方式。
                      .混合使用各种方式
                      数据存储设计及数据库管理系统选型
                      (1)数据存储设计。
                      进行数据存储总体设计的需要考虑的原则包括数据结构的合理性、数据存储的安全性和维护和管理方便性。数据存储总体设计的内容主要如下。
                      .数据存储方式的设计,它包括对各类数据项的规范化逻辑描述,各类数据文件的组织方式以及各类数据文件之间的逻辑关系。
                      .数据存储的规模设计。
                      .数据存储空间的分布。
                      .数据库管理系统的特点。
                      (2)数据库管理系统选型。
                      数据库管理系统的选择是一个关键问题。因为一般信息系统的核心任务是信息的采集、存储、加工处理,选择数据库管理系统时,应着重考虑所选数据库管理系统。
                      .数据存储能力。
                      .数据查询速度。
                      .数据恢复与备份能力。
                      .分布处理能力。
                      .与其他数据库的互联能力。
                      网络系统设计
                      (1)网络计算模式。
                      网络计算模式是指采用的是客户机/服务器(C/S)模式还是浏览器/Web服务器/数据库服务器(B/W/D)模式。
                      (2)网络拓扑结构。
                      网络拓扑结构一般有总线型、星型、环形、混合型等。在网络选择上应根据应用系统的地域分布、信息流量进行综合考虑。一般来说,应尽量将信息流量最大的应用放在同一网段上。
                      (3)网络的逻辑设计。
                      通常首先按软件将系统从逻辑上分为各个分系统或子系统,然后按需要配备设备,如主服务器、主交换机、分系统交换机、子系统集线器(HUB)、通信服务器、路由器和调制解调器等,并考虑各设备之间的连接结构。
                      (4)网络操作系统。
                      目前,流行的网络操作系统有Unix、Netware、Windows NT等。
                      软硬件配置
                      硬件的配置选择包括计算机主机、外围设备、联网设备,软件包括操作系统数据库管理系统、网络操作系统和其他一些应用软件和中间件产品。进行计算机系统的软硬件及附属设备的配置的总的原则应该是技术上具有先进性、实现上具有可行性、使用上具有灵活性、发展上具有可扩充性和投资上具有受益性。
                      从系统需求角度看进行软硬件配置选择时要做以下考虑。
                      (1)功能要求。
                      系统配置能满足新系统的各种功能要求,包括联网要求。
                      (2)性能要求。
                      根据用户提出的对系统的处理速度、精确度等要求,确定计算机的运行速度、网络的传输速度等指标。
                      (3)容量要求。
                      根据系统要处理的最大数据量以及若干年以后的发展规划,配置计算机内存、外存容量。
                      具体的配置项目包括如下内容。
                      ①操作系统。
                      单机操作系统、网络操作系统。
                      ②使用的网络协议。
                      常用的TCP/IP、OSI等。
                      ③数据库产品。
                      说明系统所使用的数据库管理产品,常见的有Oracle、 DB2、 Sybase、 Microsoft SQLServer、 Informix、 Foxpro,等。
                      (4)应用软件。
                      罗列信息系统所使用的其他应用软件或中间件产品,说明其功能和相关技术支持。
               软件系统结构设计的原则
               软件总体结构设计的主要任务是将整个系统合理划分成各个功能模块,正确地处理模块之间与模块内部的联系以及它们之间的调用关系和数据联系,定义各模块的内部结构等。总体结构设计的主要原则有:
                      分解-协调原则
                      解决复杂问题的一个重要原则是把复杂的问题分解成多个易于解决、易于理解的小问题分别进行处理,在处理过程中根据系统的总体要求协调各部分的关系。进行分解的依据如下。
                      .按系统的功能进行分解。
                      .按系统运动和管理活动客观规律进行分解。
                      .按信息处理的方式和手段分解。
                      .按系统的工作规程分解。
                      .按用户的特殊需求进行分解。
                      .按系统开发、维护和变更的方便性进行分解。
                      协调的主要依据如下。
                      .标协调。
                      .工作进程协调。
                      .工作规范和技术规范协调。
                      .信息协调。
                      .业务内容协调。
                      信息隐蔽和抽象的原则
                      上层模块只规定下层模块做什么和所属模块间的协调关系,并不规定怎么做,以保证各模块的相对独立性和内部结构的合理性,使得模块之间层次分明、易于理解、易于实施和维护。
                      自顶向下原则
                      抓住总的功能目标然后逐层分解。先确定上层模块的功能,再确定下层模块的功能。
                      一致性原则
                      要保证整个软件设计过程中具有统一的规范、统一的标准、统一的文件模式。
                      面向用户原则
                      明确每一个模块的功能和模块间的接口,坚决清除多重功能和无用接口。
               模块结构设计
                      模块独立性
                      (1)模块化。
                      模块化是将系统化分为若干模块的工作。模块化设计可以使整个系统设计简单,结构清晰,可维护性增强。模块化设计的目标是:每个模块完成一个相对独立的特定功能;模块之间的结构简单。简而言之就是要保证模块之间的独立性,提高每个模块的独立程度。
                      (2)模块独立性的度量。
                      功能独立而且和其他模块之间没有过多相互作用和信息传递的模块被称为独立的模块。模块的独立程度可有两个定性标准度量:聚合(cohesion)和耦合(coupling)。聚合衡量模块内部各元素结合的紧密程度。耦合度量不同模块间互相依赖的程度。
                      .聚合,聚合度量模块内部各元素的关系,即其紧凑程度,表现在模块内部各元素为了执行处理功能而组合在一起的程度。模块的聚合有7种不同的类型,其中前三种聚合属于弱聚合。
                      .偶然聚合,如果模块所要完成的动作之间没有任何关系,或者仅仅是一种非常松散的关系,我们就称之为偶然聚合。例如,设计模块A、B、C均具有相同的部分代码α,则把α抽出作为一个单独的公用模块,如下图所示,这种聚合便被称为偶然聚合。
                      
                      偶然聚合
                      .逻辑聚合,如果一个模块内部的各个组成部分在逻辑上具有相似的处理动作,但是功能上、用途上却彼此无关,则被称为逻辑聚合。
                      .时间聚合,时间聚合又称为经典内聚。如果一个模块内部的各个组成部分所包含的处理动作必须在同一时间内执行,则被称为时间聚合。
                      .过程聚合,模块内部各个组成部分所要完成的动作虽然彼此间没什么关系,但是必须以特定的次序(控制流)执行,这种情况属于过程聚合。
                      .通信聚合,如果一个模块的各个组成部分所完成的动作都使用了同一个输入数据或产生同一输出数据,则被称为通信聚合。
                      .顺序聚合,对于一个模块内部的各个组成部分,如果前一部分处理动作的最后输出是后一部分处理动作的输入,则被称为顺序聚合。例如,模块A由两部分组成,一部分为编辑,另一部分为输出。编辑部分将其输出数据作为输出部分的输入,模块A即为顺序聚合模块。如下图所示。
                      
                      顺序聚合
                      .功能聚合,如果一个模块内部各个组成部分全部属于一个整体,并执行同一功能,且各部分对实现该功能都必不可少,则称该模块为功能聚合模块。
                      将以上各种类型的模块聚合方式从耦合程度、可修改性、可读性和通用性4个角度进行一下比较,可以得到下表。
                      
                      聚合特性比较
                      在进行模块设计中,应当尽可能提高模块的聚合程度,使每个模块执行单一的功能,以降低模块间的联系,争取获得较高的模块独立性。尤其应该追求模块的功能聚合,如果可能,要将非功能性聚合的模块转化为功能聚合的模块。
                      .耦合,耦合用于度量系统内不同模块之间的互联程度。耦合强弱取决于模块间连接形式及接口的复杂程度。模块之间的耦合程度直接影响系统的可读性、可维护性及可靠性。在系统设计中应改进可能追求松散耦合的系统,因为模块连接越简单,错误传播的可能性就会越大,而且在这样的系统中测试、维护任何一个模块并不需要对其他模块有很多了解。模块之间的连接形式有数据耦合、控制耦合、公共耦合和内容耦合4种类型。
                      .数据耦合,如果两个模块彼此间通过数据参数(不是控制参数、共公数据结构或外部变量)交换信息,那么这种耦合就是数据耦合。例如,A模块向子模块A1、 A2传递的是数据信息,构成了数据耦合,如下图所示。
                      
                      数据耦合
                      .控制耦合,如果两个模块彼此间传递的信息中有控制信息,那么,这种耦合被称为控制耦合。控制耦合与数据耦合很相似,只是传递参数中一个仅有数据,另一个还包含了控制信息。控制耦合可以通过适当的方式加以避免,如模块的再分解。例如,模块A与子模块A1、A2之间传递的既有数据信息又有控制信息则构成了控制耦合,如下图所示。
                      
                      控制耦合
                      .公共耦合,若两个模块之间通过一个公共的数据区域传递信息,则被称为公共耦合或公共数据域耦合。公共数据域实际上就是多个模块公用数据的区域。公共耦合是一种不好的连接形式,尤其当一个公共数据区域被多个模块共同使用时,模块数越多,则其耦合的复杂度越大。这会给数据的保护、维护等带来很大的困难。例如,模块A、A2.1、Y1共用公共数据区内的元素,尽管A与Y1没有联系,但是它们之间存在着公共耦合,如下图所示。
                      
                      公共耦合
                      .内容耦合,如果一个模块需要涉及另一个模块的内部信息时,则这种耦合成为内容耦合。例如,一个模块访问另一个模块的内部数据;一个模块调用另一个模块的部分程序代码等情况。
                      对这4种类型的耦合的优劣对比可以总结在下表中。
                      
                      4种耦合的优劣对比
                      总之,聚合和耦合是相辅相成的两个设计原则,是进行模块设计的有力工具,模块内的高聚合往往意味模块之间的松耦合。要想提高模块内部的聚合性,必须减少模块之间的联系。
                      功能模块设计原则
                      提高聚合程度,降低模块之间的耦合程度是模块设计应该遵循的最重要的两个原则。但除此之外,系统模块设计的过程中,还应该考虑其他方面的一些要求,遵循如下以下原则。
                      (1)系统分解有层次。
                      首先从系统的整体出发,根据系统的目标以功能划分模块。各个模块即互相配合,又各自具有独立功能,共同实现整个系统的目标。然后,对每个子模块在进一步逐层向下分解,直至分解到最小的模块为止。
                      (2)适宜地系统深度和宽度比例。
                      系统深度是指系统结构中的控制层次。宽度表示控制的总分布,即统一层次的模块总数的最大值。系统的深度和宽度之间往往有一个较为适宜的比例。深度过大说明系统划分过细,宽度过大可能会导致系统管理难度的加大。
                      (3)模块大小适中。
                      模块的大小一般使用模块中所包含的语句的数量多少来衡量。有这样一个参考数字,即模块的语句行数在50行~100行为最好,最多不超过500行。
                      (4)适度控制模块的扇入扇出。
                      模块的扇入指模块直接上级模块的个数,模块的直属下级模块个数即为模块的扇出。模块的扇入数一般来说越大越好,说明该模块的通用性较强。对扇出而言,过大可能导致系统控制和协调比较困难,过小则可能说明该模块本身规模过大。经验证明,扇出的个数最好是3或4,一般不要超过7,如下图所示,模块A的扇出系数为3,模块F的扇入系数为2。
                      
                      模块的扇入、扇出
                      (5)较小的数据冗余。
                      如果模块分解不当,会造成大量的数据冗余,这可能引起相关数据分布在不同的模块中,大量原始数据需要调用,大量的中间结果需要保存和传递,以及大量计算工作将要重复进行的情况,可能会降低系统的工作效率。
                      数据流图到模块结构图的变换
                      结构化系统设计方法与结构化系统分析有着密切的联系。系统分析阶段,用结构化分析方法获得用DFD等工具描述的系统说明书。设计阶段则以DFD为基础设计系统的模块结构。本节讨论如何从数据流程图导出初始结构图。
                      数据流程图有两种典型的结构:变换型(transform)结构和事务型(transaction)结构。对这两种结构,可以分别通过变换分折方法和事务分析方法导出标准形式的结构图。采用这些方法时,都是先设计结构图的顶端主模块,然后自顶向下逐步细化,最后得到满足数据流程图要求的系统结构。
                      (1)变换分析。
                      变换结构是一种线性结构。它可以明显地分成逻辑输入、主加工和逻辑输出。下图(a)是一个典型的例子。变换分析(Transform Analysis)过程可以分为三步:找出逻辑输入、主加工和逻辑输出;设计顶层模块和第一层模块;设计中、下层模块。下面分别进行讨论。
                      ①找出系统的逻辑输入、主加工和逻辑输出。
                      如果设计人员经验丰富,又熟悉系统说明书,则很容易确定系统的主加工。例如,几股数据流的汇合处往往就是系统的主加工。若一时不能确定哪是主加工,可以用下面的方法先确定哪些数据流是逻辑输入,哪些数据流是逻辑输出。
                      从物理输入端开始,一步步向系统的中间移动,直至这样一个数据流:它已不能再被看作系统的输入,则它的前一个数据流就是系统的逻辑输入。在下图(a)中,从“原始数据”这个数据流开始向中间移动,逐个分析数据流,发现数据流“P3→P4”不能再被理解为系统的输入了。因此,数据流“P2→P3”是逻辑输入。
                      同理,从物理输出端开始,逆数据流方向往中间移动,可以确定系统的逻辑输出。介于逻辑输入和逻辑输出之间的加工就是主加工。下图(a)中的处理框P3就是主加工。
                      当然,实际的数据流程图往往比这个例子复杂,输入、输出数据流都可能有多个。这时,需要对每个输入、输出数据流进行分析,确定相应的逻辑输入、逻辑输出。处于这些逻辑输入、逻辑输出之间的处理框就是主加工。主加工可能包括数据流程图中的多个处理框。
                      
                      变换分析
                      
                      (续)
                      从上面的分析过程可以看出,逻辑输入、逻辑输出的划分涉及对数据流的理解。各人的理解不同,结果就有差异,但一般出入不会太大。
                      ②设计顶层模块和第一层模块
                      找到主加工之后,遵照“自顶向下,逐步加细”的原则,设计各层的模块。每创建一个模块,必须确定该模块的外部特征:模块的功能、与其他模块的界面(调用时传送的信息)。为每个模块起一个名字,这个名字应当恰如其分地反映出这个模块的功能。
                      系统的主加工就是系统的顶层模块,其功能就是整个系统的功能。
                      第一层模块按输入、变换、输出等分支来处理:为每一个逻辑输入设计一个输入模块,其功能是为顶层模块提供相应的数据;为每一个逻辑输出设计一个输出模块,它的功能即是输出顶层模块的输出信息;为主加工设计一个变换模块,它的功能就是将逻辑输入变换成逻辑输出。第一层模块与顶层模块之间传送的数据应该同数据流程图相对应。
                      上图(a)有一个逻辑输入,一个逻辑输出。所以对应结构图第一层模块共三个,即宽度为3,如上图所示。
                      ③设计中、下层模块
                      对输入、变换、输出模块逐个分解,便可得到初始结构图。
                      输入模块要为系统提供逻辑输入,一般要进行变换,先确定实现最后变换的变换模块。这个变换模块显然又需要某些输入,对每个这样的输入,对应一个新的输入模块。用类似方法依次分解下去,直到最终的物理输入为止。
                      对输出模块的分解与上面的办法相似。
                      对变换模块的分解,目前还没有与上面类似的方法。此时,需要研究数据流程图中相应加工的组成情况。
                      (2)事务分析。
                      下图是事务型结构的例子。这种结构中,某个加工将它的输入分离成一串平行的数据流,分别执行后面的某些加工。对于这种类型的数据流程图,可以通过事务分析得到相应的结构图。
                      
                      事务型结构
                      事务分析也是按“自顶向下,逐步细化”的原则进行的。先设计主模块,其功能就是整个系统的功能。下面有一个“分析模块”和“调度模块”。前者分析事务的类型,后者根据不同的类型调用相应的下层模块。这样得到与上图相应的结构图,如下图所示。这里作用范围可能在控制范围之外,从而产生控制耦合。对于不太复杂的系统,可以通过采用逐模块判别事务类型来解决这一问题。对于复杂的问题。还得分开设模块。
                      
                      事务分析
                      前面讨论了变换分析、事务分析。但实际应用中并非这么典型。这两种分析方法往往交替使用。数据流图的某一个局部可能是变换型,另一个局部可能是事务型,如此等等。这时,一般以变换分析为主,辅以事务分析。各个系统有不同的特点,初始结构图的设计方法也不同。凡是满足系统说明书要求的结构图都可以作为初始结构图。这里称之为初始结构图,是因为数据流图并没有完全反映出用户的要求(如查询要求、控制流),因此,按数据流图导出的结构图还要参照说明、查询分析等文档进行调整。
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有