一般功能模块具有单一入口和单一出口,并作为程序的一部分顺序地执行,有时,也需要更为复杂的控制方式,如可重入功能模块。这种功能模块不以任何方式修改它自己或它所访问的局部地址,从而这样的功能模块就可以同时被几个任务使用。
4)结构分类
在软件结构中,功能模块可以分为以下几类:
顺序功能模块:它在没有明显中断情况下被应用软件调用和执行。
增量功能模块:它在调用结束之前可以被应用程序中断,然后在中断点重新启动。
并行功能模块:它在并行多处理机环境中与别的功能模块同时执行。
设计要素
1.提高功能模块独立性
在得到软件结构之后,就应首先着眼于改善功能模块的独立性,考验是否应该把一些功能模块提取或合并,力求降低耦合提高内聚。例如,多个功能模块共有的一个子功能可以独立成一个功能模块,由这些功能模块调用,有时可以通过分解或合并功能模块以减少控制信息的传递及对全局数据的引用,并且降低接口的复杂度。