美文网首页
架构设计流程:评估和选择备选方案

架构设计流程:评估和选择备选方案

作者: 空谷幽心 | 来源:发表于2018-08-05 16:27 被阅读135次

笔记

  • “360 度环评”!具体的操作方式为:列出我们需要关注的质量属性点,然后分别从这些质量属性的维度去评估每个方案,再综合挑选适合当时情况的最优方案。

  • 常见的方案质量属性点有:性能、可用性、硬件成本、项目投入、复杂度、安全性、可扩展性等。在评估这些质量属性时,需要遵循架构设计原则 1“合适原则”和原则 2“简单原则”,避免贪大求全,基本上某个质量属性能够满足一定时期内业务发展就可以了。

  • 如果每次做方案都考虑这种小概率事件,我们的方案会出现过度设计,导致投入浪费。

  • 如果某个质量属性评估和业务发展有关系(例如,性能、硬件成本等),需要评估未来业务发展的规模时,一种简单的方式是将当前的业务规模乘以 2 ~4 即可,如果现在的基数较低,可以乘以 4;如果现在基数较高,可以乘以 2。

  • 量变会引起质变,具体哪些地方质变,是很难提前很长时间能预判到的。

  • 正确的做法是按优先级选择,即架构师综合当前的业务发展情况、团队人员规模和技能、业务发展预测等因素,将质量属性按照优先级排序,首先挑选满足第一优先级的,如果方案都满足,那就再看第二优先级。

理解与思考

  1. 难于选择是因为备选项的优缺点不能量化。我们只能凭感觉去选择。而感觉经常是不可靠的。
  2. 从质量属性上去评估备选方案,避免考虑不周全,遗漏的情况。一个方案的好坏优略,从这些方面也能或多或少的体现出来。
  3. 按优先级来排序。先解决当下最关注的质量问题。

课后思考题

RocketMQ 和 Kafka 有什么区别,阿里为何选择了自己开发 RocketMQ?

相关文章

  • 架构设计流程:评估和选择备选方案

    笔记 “360 度环评”!具体的操作方式为:列出我们需要关注的质量属性点,然后分别从这些质量属性的维度去评估每个方...

  • 12 | 架构设计流程:评估和选择备选方案

    上一期我讲了设计备选方案,在完成备选方案设计后,如何挑选出最终的方案也是一个很大的挑战,主要原因有: 每个方案都是...

  • 【软件架构篇】复杂度来源

    架构设计的目的就是解决系统的复杂度。架构师首先需要识别出系统的复杂度,然后再针对性地给出备选方案,选择备选方案,进...

  • 架构设计流程:设计备选方案

    笔记 成熟的架构师需要对已经存在的技术非常熟悉,对已经经过验证的架构模式烂熟于心,然后根据自己对业务的理解,挑选合...

  • 13 | 架构设计流程:详细方案设计

    完成备选方案的设计和选择后,我们终于可以长出一口气,因为整个架构设计最难的一步已经完成了,但整体方案尚未完成,架构...

  • 架构设计步骤

    1:识别复杂度 2:技术选型和设计多套方案 3:评估和方案选择 4:架构详细设计(将方案涉及的关键技术细节给确定下来)

  • 11 | 架构设计流程:设计备选方案

    架构设计第 2 步:设计备选方案 架构师的工作并不神秘,成熟的架构师需要对已经存在的技术非常熟悉,对已经经过验证的...

  • 11 | 架构设计流程:设计备选方案

    上一期我讲了架构设计流程第 1 步识别复杂度,确定了系统面临的主要复杂度问题后,方案设计就有了明确的目标,我们就可...

  • PMP - 工具与技术 - 数据分析

    备选方案分析 备选方案分析是一种对已识别的可选方案进行评估的技术,用来决定选择哪种方案或使用何种方法来执行项目工作...

  • 架构设计流程

    第69篇 极客时间《从0开始学架构》课程笔记。 架构设计的流程(步骤)包括4步,首先识别复杂度,其次设计多个备选方...

网友评论

      本文标题:架构设计流程:评估和选择备选方案

      本文链接:https://www.haomeiwen.com/subject/pimbvftx.html