如何写好系统架构文档

@Lenciel at 
软件开发实际上是一个学习的过程,架构和代码只是它的副产品。所以方案应该主要体现两个部分:你对用户需求、关键路径等「领域知识」有了什么样的了解。你因为这些了解,在:系统的核心模块准备采取什么样的设计模块之间通过什么方式通信或者暴露什么 API 数据怎么进行读写和持久化等关键选择上做了什么样的选择和权衡。本文面向所有需要编写系统设计方案或者系统架构方案的工程师。目录一、基本步骤 1. 梳理和澄清系统 1.1 目的 1.2 边界 2. 顶层设计 3. 核心组件设计 4. 考虑系统的瓶颈和如何扩展当前的设计二、核心命题一、基本步骤 1. 梳理和澄清系统维基百科对「系统」的定义是:A……