只要开发软件系统,就会有源源不断的需求,因为业务是不断变化的。为了适应这些变化,我们需要运用架构设计思维模式,去调整软件系统的架构设计。因此,我们需要一套可复用、可进化的流程去实践架构设计思维模式。
思维模式实践流程
实践流程分三步:思考、行动、检查。
- 思考:我们想了解什么?我们需要做到什么?最大的风险是什么?如何制定计划解决问题?例如:项目风险、业务目标、质量属性、权衡取舍等。
- 行动:为了回答思考的问题,运用思维模式去行动。例如:需求收集、做备选方案、做演示模型、做实验等。
- 检查:慎重检查行动的成果,以便决定下一步行动。从本次检查中分析原因,总结经验,沉淀知识。如果发现新问题,就再回到第一步-思考。例如:场景演练、方案比较、直接检验、理解核查等。
思维沉淀循环
以上的实践流程是迭代学习循环的流程,个人命名为“思维沉淀循环”。(见图1)
图 1 思维沉淀循环
为什么要这样命名?
因为这套实践流程具有可复用、可进化的特性。运用这套“思维沉淀循环”,就很容易做好架构设计的知识沉淀,架构设计就会不断进化,以前遇到的问题不会再重复。
实践方法
每次迭代都按照以上流程进行,以思考作为开头:思考确定思维模式,思维模式指导行动的方向,检查发现新的思考。
迭代时长
迭代一次的时间长度应该是根据架构设计的遇到实际问题来权衡,最短可以十几分钟,最长可几天,以不耽误项目进度和能促进项目为准。
确定思维模式
问题不确定就去理解,方案不确定则探索,利益方不了解则展示,设计决策上举棋不定则评估。
思维模式的行动方向
- 理解 做好“以人为本”原则,用于理解利益相关方的诉求,转化诉求为实际的需求、任务、决策参考;
- 探索 做好“善于借鉴”原则,寻找各种解决问题的模式、技术、方案等;
- 展示 做好“化虚为实”原则,制作有形具体的东西,进行推演和分享,以方便他人理解和接受;
- 评估 对风险、质量属性、设计决策等进行验证,以得出可靠的结论去指导下一步计划的执行。
总结
思维沉淀循环是非常灵活的,并不是把架构设计局限在理论中而无法发挥作用,而是通过有效的、可重复的流程去实践更好的架构设计。