作者在这一篇章讲述了技术方案设计需要遵循的标准,外部适应性,这个概念是第一次听说,作者提出,架构师设计方案需要能够解决问题同时为公司注入外部适应性。
外部适应性指的是一个企业对外部环境变化的适应能力,以及对新机会的捕捉能力,在做架构方案的时候需要考虑进去。作者分析了阻碍架构方案外部适应性的原因,进而给出了具体的实施方案,原因如下:
1)内部压力,包括交付工期的压力,技术人员本身供给的压力以及考核的压力
2)外部压力,主要指的是市场的竞争,资源,技术趋势等
3)企业组织架构的压力
针对这些导致问题的原因,作者给出了相应的设计有外部适应性的解决方案的方法
1)针对需求实现和时间之间的冲突,需要区分是尝试性需要,还是战略性需求,针对尝试性需求,对应的解决方案如下:
设计技能做到单一职责
设计尽可能做到最小化外部依赖
设计尽可能做到最小化数据共享
设计尽可能做到最小化对外暴露
这些设计方案本质上都是设计思想的一些体现,主要是开闭原则,一些设计原则和设计模式可以在这里相结合
2)针对交付压力,作者提出了三个解决思路
要提高对应封装的重视程度
建设复杂度控制机制,即通过评审控制需要变更引起的最小爆破半径的变化
采用最小必要架构,即遵循奥卡姆剃刀原则,如非必要,勿增实体
3)针对外部竞争,则需要充分理解外部竞争,开放一般情况下会战胜封闭,通过站在竞争对手的角度去分析,去思考,然后给出对应的解决方案