出其内在的联系。因此,模块划分的是否合理,直接影响到系统设计的质量,影响系统开 结构化设计要解决的主要问题是把系统分解成一个个模块,并用结构图的形式表达发的时间、开发成本以及系统实施和维护的方便程度等方面。为了能够合理地划分系统的子问题划归到同一模块;把不相关的子问题划归到系统的不同模块。衡量系统的结构化程 各个模块,使其具有较强的独立性,在划分模块时要遵循的总原则是:尽量把密切相关的度及模块的独立性,可以通过模块与模块之间的关联度和模块内部各个组成部分之间的聚合度两条标准来进行评价。
模块之间的关联度
模块之间的关联度是用来表示一个模块与其他模块之间联系的紧密程度。关联度低,则说明模块之间的联系越少,模块的独立性就越强,就越容易独立地进行编程、调试和修改,某个模块中产生的错误对其他模块的影响也就越小。对于模块之间的关联度,可以从以下三个方面来衡量和评价(1)模块之间的联系方式。如果一个模块直接调用另一个模块内部的数据或指令,这说明被调用模块内含有多方面不相关的内容,导致模块间联系增多,修改一个模块将直接影响其他的模块,降低了模块的独立性。因此,在系统设计中,应尽量避免使用这种联系方式。另一种联系方式是通过被调用模块的名称来调用整个模块,使其完成一定的功能 这样可以降低模块间的联系,增加其独立性。因此在系统设计中,应尽量采用这种联系方
式 (2)模块之间使用控制信息的数量。控制信息是指控制程序运行过程的信息,在程序调用过程中过多地使用控制信息,必然会增加模块之间的联系,影响模块的独立性。因此,在模块之间应尽量不用或少用控制信息。当需要在模块之间使用含有控制信息的调用
关系时,可以通过功能分解的形式消除控制信息的影响。(3)模块之间传送数据的数量。模块之间通过调用关系传送数据,是一种比较理想的联系方式。但是,如果模块之间传送的数据过多,同样会给理解和修改模块带来困难 且降低系统的可维护性。一个模块同其他模块之间传递的数据越少,模块间的相互独立性
就越强,也就越便于系统的设计和维护。
性来考虑。模块之间的界面越简单、清晰、易于理解,则关联度越低,模块的独立性也就 要降低模块之间的关联度,除了从以上几方面考虑之外,还可以从模块界面的清断
越强。
模块内部的聚合度
一个模块内部的各种组成部分之间间联系的越密切,其聚合度越高,模块的独立性也就越强。模块的聚合度是由模块的聚合方式决定的。根据模块内部的构成情况,其聚合方式可以分
成以下七种形式 (1)偶偶然性聚合。将几个毫无联系的功能组合在一起,形成一一个模块,称为偶然性提高运算速度而结合在一起,因此聚合度最低。聚合模块。这种模块内部的各个组成部分之间几乎没有什么联系,只是为节省存贮空间或模块,称为逻辑性聚合模块。这种种聚合形式,其聚合度也非常低,模块中的各种功能要通 (2)逻辑性聚合。将几个逻辑上相似,但彼此并无联系的功能组合在一起所形成的过控制变量选择执行。(3)时间性聚合。将几个需要在同一时段进行处理的各项功能组合在一起所形成的性聚合方式。模块,称为时间性聚合模块。如系统的初始化模块、结束处理模块等,可以考虑采用时间
(4)过程性聚合。将为了完成某项业务处理过程,将执行条件受同一控制流支配的
若干个功能组合在一起所形成的模块,称为过程性聚合模块。这类模块的聚合度较前几种
要高一些。
称为数据性聚合模块。这种模块能合理地定义功能,结构也比较清楚,因此其聚合度较 (5)数据性聚合。将对同一数据加工处理的若干个功能组合在一起所形成的模块高 同(6)顺序性聚合。把若干个顺序执行的、一个处理的输出是另一个处理的输入的功能组合在一起所构成的模块,称为顺序性聚合模块。这种模块的聚合度要更高一些 7)功能性聚合。为了完成一项具体任务,由简单处理功能所组成的模块,称为功能性聚合模块。这种模块功能单一,内部联系紧密,易于编程、调试和修改,因此其独立性最强,聚合度也最最高 在上述七种模块聚合方式中,其聚合度是依次升高的
功能性聚合模块
度最高,所以在划分模块的过程中,首先应尽量采用功能性聚合方式式。其次,根据需要可 以适当考虑采用顺序性聚合或数据性聚合方式,网站制作但要避免采用偶然性聚合和逻辑性聚合方
本文地址://www.qlpinke.com//article/3457.html