自考

各地资讯
当前位置:考试网 >> 自学考试 >> 笔讲串讲 >> 工学类 >> 计算机应用基础 >> 文章内容

排行热点

自考计算机应用基础重点:系统总体结构设计(3)

来源:考试网 [ 2011年5月13日 ] 【大 中 小】

模块分解的规则

  1.模块独立性
  所谓两个模块彼此完全独立,是指其中任一模块在运行时,与另一个模块存在无关。独立性只是一个相对的概念。具有独立功能而且和其他模块之间相互作用少的模块,称为独立性高的模块。
  保证模块独立性高是设计一个系统的关键,它具有以下优点:
  (1) 系统容易开发。系统开发往往由若干人分工合作完成,由于模块之间联系少,接口简单,可以简化合作者之间的协调工作。
  (2) 系统可*性高。模块之间的相互影响小,当一个模块出错时,产生波动效应的概率低,从而提高了系统的可*性。
  (3) 系统容易维护。在对一个模块进行修改和维护时,不必担心其他模块的内部是否会受到影响。
  要衡量模块自身联系是否紧密、与外部的联系是否合理,需引入模块凝聚、模块耦合的概念。
  2.模块凝聚
  模块凝聚是用以衡量一个模块内部自身功能的内在联系是否紧密的指标,也是衡量模块质量好坏的重要标准。模块按凝聚程度的高低可分为以下五级:
  (1) 偶然凝聚。一个模块内部各组成部分的处理彼此无关,偶然地组合在一起,这是一种组织得最差的模块,凝聚程度最低。
  (2) 逻辑凝聚。一个模块内部各组成部分的处理逻辑相似,但功能却彼此不同。这种模块通常包含一个选择控制和若干彼此独立的处理功能。先执行选择功能,再根据选择的结果,控制执行不同的处理功能。由于它的逻辑途径比较复杂,修改困难,因此凝聚程度较差。
  (3) 时间凝聚。这是指若干处理由于执行时间彼此有关,集中在一起组成的模块。如初始化模块,各处理内容必须在特定时间内执行,而各处理内容彼此无关,故凝聚程度较差。时间凝聚的模块通常要影响到其他许多模块的运行,因此与其他模块之间联系多,修改比较困难。
  (4) 数据凝聚。模块内部包含若干处理,它们按一定的顺序执行,且前一处理所产生的输出数据,是后一处理的输入数据,这称为数据凝聚模块。这种模块可较明确表述其功能,内部结构较密切,与其他模块联系一般较少,凝聚性较好。
  (5) 功能凝聚。一个模块只执行一个明确的功能,即上级模块调用它时,它只完成一项确定的任务。这种模块独立性强、便于修改。凝聚程度高,是结构化设计模块的理想目标。一个模块的内部凝聚程度。
  3.模块耦合
  模块间的信息联系方式,称为模块的耦合,它是衡量模块间结构性能的重要指标。耦合有三种类型:
  (1) 数据耦合。两个模块间通过调用关系传递被处理的数据称为数据耦合。
  (2) 控制耦合。两个模块间通过调用关系,不仅传递数据,还传递对运行过程有影响的控制信号。下层模块执行校验功能,校验结果的控制信号传回上层模块,以控制其他模块的运行。如数据正确,调用正常处理模块;如数据异常,或遇到文件尾等不同情况时,调用不同处理模块,这种耦合使一个模块的执行直接影响到接受该控制信号的模块的运行。这对于系统的修改工作是不利的,特别是对自下向上传递的控制信号,影响面更大。因此,应当尽量将这种耦合减少到最低限度。
  (3) 非法耦合。一个模块与另一个模块内部发生联系,即一个模块中的某些内容在另一模块中以某种方式被引用,称为非法耦合。例如,不经过调用关系,直接使用或修改另一模块中的数据,将控制选择指向另一模块中的某一标号(节、过程) 等。
  模块间数据耦合是最正常的方式,为保持模块的独立性,模块之间互相传递的数据要尽量少;要努力避免控制耦合,特别是避免自下而上传递控制信号;应消除任何形式的非法耦合。

责编:Lisa