知识卡片

静态结构与动态结构是两种独立视角

专业/工作

内容

系统结构可以从两个独立维度描述:静态结构是设计时的元素组织形式(有哪些模块/类/表,它们如何依赖),动态结构是运行时的元素交互(谁给谁发消息、谁调用谁、数据如何被创建和销毁)。两者紧密相关但并不相同——同一个客户端元素在静态结构里只出现一次,但在动态结构模型里会因为多个并发用户而多次出现。混淆这两者会导致设计讨论鸡同鸭讲:一方在说”有什么”,另一方在说”怎么跑起来”。

参考来源

《软件系统架构:使用视点和视角与利益相关者合作》第2章《软件架构概念》