软件架构的精髓:协作(Booch语)

来源:互联网 发布:asp档案管理系统源码 编辑:程序博客网 时间:2024/04/30 20:56

Grady Booch说:“设计软件系统中的重要协作是设计阶段架构设计师的主要活动。这些协作表示出了架构的精髓……”

Ivar Jacobson说:“接口是架构的核心。”

我更喜欢Booch的说法,但Jacobson的说法也与之并不矛盾,因为协作将涉及到接口:

我在《软件架构设计》一书中表达了我的理解:

 

图4-7展示了一个网络设备管理系统逻辑架构设计的一部分,我们借此来举例说明软件逻辑架构设计的3大核心任务:
· 识别功能块
·  规划功能块的接口
·  明确功能块之间的使用关系和使用机制

 

通过分层将软件系统模块化之后,就迫不及待地喊出“分层架构”的口号,对各层之间交互接口和交互机制的设计严重不足。这种情况屡见不鲜,我称之为“名不副实的分层架构”。这是一种所谓的“高来高去式架构设计”,不能为开发人员提供足够的指导和限制。

 

原创粉丝点击