①偶然内聚:如果一个模块完成一组任务,这组任务彼此间即使有关系,其关系也是很松散的,这个模块属于偶然内聚。
②逻辑内聚:如果一个模块完成逻辑上相关的一组任务,这个模块是逻辑内聚的。例如,产生与类型无关的全部输出的模块。
③瞬时内聚(temporal cohesion):如果一个模块所包含的任务必须在同一时间间隔内执行,这个模块属于瞬时内聚。例如初始化模块。
④过程内聚:如果一个模块的处理元素是相关的,而且必须按特定的次序执行,这个模块属于过程内聚。
⑤通信内聚:如果一个模块的所有处理元素集中在一个数据结构的区域上,该模块属于通信内聚。例如,一个模块中的所有处理元素使用同一输入数据。
⑥顺序内聚:如果一个模块的处理元素是相关的,而且必须顺序执行,这个模块属于顺序内聚。
⑦功能内聚:如果一个模块完成一个单一的功能,模块中的各部分在此目标下协同工作,而且都是为完成这一功能而不可缺少的,那么这个模块是功能内聚的。