干个相互自力而又有一定接洽的组成部分,这些组成部分称为模块。对付任何一个零碎 结构化设计要领的根本思惟是使零碎模块化,即把一个零碎自上而下、慢慢分解为
犯罪能的模块所组成的零碎。在这一根本思惟的领导下,零碎设计职员以逻辑模子为根蒂根基 均可以按功用慢慢由上向下、由笼统到详细,逐层将其分解为一个多条理的、具备相对于独
并借助于一套标准的设计原则和图表等工具,逐层地将零碎分解成多个大小适量、功用单 具备一定自力性的模块,把一个庞大的零碎转换成易于实现、易于维护的模块化结构构
零碎 结构化设计的事情过程可以分为两步:第一步是按照数据流程图导出零碎初始结构
图;只知其一,不知其二步是对结构图的重复改良过程。因而,零碎结构图 不只可以暗示一个零碎的条理结构关系,并且还反映了模块的挪用关系和和模块之间数据流
的通报关系等特点
模块划分的标准
结构化设计要解决的主要问题是把零碎分解成一个个模块,并用结构图的模式表达
发的时间、开发本钱以及零碎施行和维护的便当水对等方面。为了可能合理地划分零碎的 出其内涵的接洽。因而,模块划分的是否合理,直接影响到零碎设计的质量,影响零碎开
各个模块,使其具备较强的自力性,在划分模块时要遵守的总原则是:尽可能把紧密亲密相干的
子问题划归到统一模块;把不相干的子问题划归到零碎的差别模块。掂量零碎的结构化程 度及模块的自力性,可以经由过程模块与模块之间的联系关系度和模块内部各个组成部分之间的聚
合度两条标准来进行评价
模块之间的联系关系度
模块之间的联系关系度是用来暗示一个模块与其余模块之间接洽的严密水平。联系关系度越
低,则注明模块之间的接洽越极少,模块的自力性就越强,就越容易自力地进行编程、调试
以从如下三个方面来掂量和评价 和修改,某个模块中发生的毛病对其余模块的影响也就越小。对付模块之间的联系关系度,可
这注明被挪用模块内含有多方面不相干的内容,招致模块间接洽增多,修改一个模块将直 (1)模块之间的接洽体式格局。若是一个模块直接挪用另外一个模块内部的数据或指令,
系体式格局。另外一种接洽体式格局是经由过程被挪用模块的名称来挪用整个模块,使其完成一定的功用,接影响其余的模块,低落了模块的自力性。因而,在零碎设计中,应尽可能制止运用这类联
式 如许可以低落模块间的接洽,添加其自力性。因而在零碎设计中,应尽可能采用这类接洽方
序挪用过程当中过量地运用控制信息,必一定会添加模块之间的接洽,影响模块的自力性。因 (2)模块之间运用控制信息的数目。控制信息是指控制程序运转过程的信息,在程
此,在模块之间应尽可能不消或少用控制信息。当需求在模块之间运用含有控制信息的挪用关系时,可以经由过程功用分解的模式解除控制信息的影响。
的接洽体式格局。可是,若是模块之间传送的数据过量,一样会给了解和修改模块带来坚苦,(3)模块之间传送数据的数目。模块之间经由过程挪用关系传送数据,是一种比力抱负
就越强,也就越便于零碎的设计和维护。且低落零碎的可维护性。一个模块同其余模块之间通报的数据越少,模块间的相互自力性
性来思索。模块之间的界面越简略、明晰、易于了解,则联系关系度越低,模块的自力性也就 要低落模块之间的联系关系度,除了从以上几方面思索以外,还可以从模块界面的明晰
越强
模块内部的聚合度
个模块内部的各类组成部分之间接洽的越紧密亲密,其聚合度越高,模块的自力性也就越强 模块内部的聚合度是用来形容和评价模块内部各个组成部分之间接洽的严密水平。
成如下七种模式 模块的聚合度是由模块的聚合体式格局决议的。按照模块内部的组成情况,其聚合体式格局可以
聚合模块。这类模块内部的各个组成部分之间险些没有甚么接洽,只是为节俭存贮空间或 (1)偶尔性聚合。将多少毫无接洽的功用组合在一块儿,造成一个模块,称为偶偶尔性
普及运算速率而连系在一块儿,因而聚合度最低。
(2)逻辑性聚合。将多少逻辑上相似,但相互并没有接洽的功用组合在一块儿所酿成的
过控制变量选择执行。模块,称为逻辑性聚合模块。这类聚合模式,其聚合度也十分低,模块中的各类功用要通
模块,称为时间性聚合模块。如零碎的初始化模块、完毕处置模块等,可以思索采历时间 (3)时间性聚合。将多少需求在统一时段进行处置的各项功用组合在一块儿所酿成的
性聚合体式格局。
若干个功用组合在一块儿所酿成的模块,称为过程性聚合模块。这类模块的聚合度较前几种 (4)过程性聚合。将为了完成某项营业处置过程,将执行前提受统一控制流支配的
要高一些
(5)数据性聚合。将对统一数据加工处置的若干个功用组合在一块儿所酿成的模块
称为数据性聚合模块。这类模块能合理地界说功用,结构也比力分明,因而其聚合度较
高 (6)递次性聚合。把若干个递次执行的、一个处置的输出是另外一个处置的输入的功
能组合在一块儿所组成的模块,称为递次性聚合模块。这类模块的聚合度要更高一些。(7)功用性聚合。为了完成一项详细任务,由简略处置功用所组成的模块,称为功
性最强,聚合度也最高 能性聚合模块。这类模块功用单一,内部接洽严密,易于编程、调试和修改,因而其自力
在上述七种模块聚合体式格局中,其聚合度是挨次升高的。因为功用性聚合模块的聚合
度最高,以是在划分模块的过程当中,起首应尽可能采用功用性聚合体式格局。其次,按照需求可 以适量思索采用递次性聚合或数据性聚合体式格局,网站制作 但要制止采用偶尔性聚合和逻辑性聚合方