系统复杂度管理方法

系统复杂度管理方法

管理复杂系统的重要方法是M.A.L.H方法,即模块化、抽象、分层和层级

模块化

通过分而治之的原则,将一个复杂系统分解为一系列通过明确定义的接口进行交互的模块,并严格保障模块之间的界限。模块的划分不是越细越好,过多会导致各模块之间的联系过多,无意于复杂度控制;要充分考虑高内聚低耦合

抽象

将接口和内部实现分离,从而使模块之间只需通过抽象的接口进行相互调用,无需关心各个模块的内部实现。如UNIX内存管理。

接口的宽进严出

一个模块的接口应该容忍各种可能的输入,抑制错误甚至或恶意输入的效果在模块内部传播,并且尽可能严格控制模块对外的输出,从而减少错误在模块间的传播

分层

按照一定原则进行层次划分,通常原则是:一个模块只能和同层模块以及相邻的上层或下层模块进行交互,而不能跨一层和再上一层或再下一层的模块进行交互

层级

首先将一些功能相近的模块组成一个具有清晰接口的自包含子系统,然后再将这些子系统递归的组成一个具有清晰接口的更大子系统。如公司的组织架构。

引用

本文来自《现代操作系统原理与实现》3.2章节

posted @ 2023-02-19 21:15  小满的博客  阅读(13)  评论(0编辑  收藏  举报