知识卡片
动态架构应尽量避免的两个理由
内容
组件粒度比对象大,运行时结构形态通常比对象稳定,多数系统只在启动和关闭阶段改变组件配置,其余时间保持”稳态结构”——组件装配图画的通常就是这个稳态,但这是一种简化,忽略启动关闭这类动态状况正是常见bug的来源。开发者应尽量避免运行时架构会变化的设计,原因有二:静态架构更容易理解、缺陷更少;静态架构的质量属性分析也容易得多。真正需要动态架构的场景意味着你站在软件工程前沿,经验数据和工程技术都还欠缺。
参考来源
- 位置:《恰如其分的软件架构》第9章《设计模型》9.7节《动态架构模型》(源文件:_epub-src/OEBPS/text00091.html)
- 结论依据:原文说明组件装配图通常显示的是简化的稳态结构,忽略启动关闭动态状况容易导致错误,并给出应避免动态架构的两个理由:静态架构更易理解、更易做质量属性分析。
- 原始内容:组件装配图中,通常显示的就是这种稳态结构(steady state configuration)。你必须清楚这是对事实的简化……应该避免做出导致运行时架构变化的设计,这有两个原因。第一个原因,静态架构对于开发人员来说更容易理解……第二个原因,静态架构对于质量属性的分析更加容易。