许式伟的架构课 Day1 架构:怎么做详细设计

165 阅读2分钟

前言

关于架构, 第一步是需求分析, 第二步是系统的概要设计

需求分析

关乎用户需求的梳理、产品的清晰定义、可能演变的方向

最终的目标和最终的结果, 都是要形成清晰的产品定义.产品定义将明确产品的元素,明确产品的边界, 与产业上下游、合作伙伴的分工

需求分析阶段, 关注用户需求的精确表述. 会引入角色, 也就是系统的各类参与方, 以及角色间的交互方式, 也就是用户故事

概要设计

一般以子系统为维度, 阐述系统各个角色之间的关系. 对于关键的子系统还会进一步分解它, 核心意图是整个系统如何有效地串联起来

详细设计

关注的是子系统或模块的全貌

包括:

  • 现状与需求
    • 现在在哪里, 遇到了什么问题, 要如何改进
  • 需求满足方式:
    • 要做成啥样? 交付物的规格, 或者说使用界面(接口).
    • 怎么做到? 交付物的实现原理.

现状与需求

关注要解决的问题与目标 需求陈述是对痛点和改进方向的一次共识确认

使用界面(接口)

使用界面这一部分要详细写,它是团队共识确认的关键。

实现: 数据结构 + 算法

程序 = 数据结构 + 算法

数据结构

存储即数据结构。所以,服务端程序在数据结构这一点上,最为重要的一件事是选择合适的存储中间件。然后我们再在该存储中间件之上组织我们的数据。

算法

指的是用户故事背后的实现机制。

指的是用户故事背后的实现机制。

此文章为3月Day1学习笔记, 内容来源于极客时间《许式伟的架构课》, 强烈推荐该课