很多小伙伴能写代码,但面试时被问到“你的项目架构是怎么设计的”,就说不清楚了。不是技术不行,是从来没练过“从需求到架构图”怎么去表达。
这篇内容会拿求职派的真实业务做示范,从需求描述开始,经过业务流程梳理、功能模块拆分、分层架构设计等三个阶段,最终输出一张完整的业务架构图。

求职派的原始需求来自技术派的一篇帖子(原始需求),目标很明确:做一个面向应届生的信息聚合平台。

基于这个目标,我对整个产品做了第一期的功能拆分,一共三块:
本篇内容第一版的作者:星球嘉宾灰灰。二哥做了二期的优化和迭代。
- 用户:登录 + 会员付费
- 校招信息展示:前台浏览页 + 后台管理页
- 校招信息采集:基于 Spring AI + 大模型实现校招信息自动录入
三件事,对应三类角色。
普通用户看信息,管理员维护信息,大模型采集信息。围绕这三块,我画了核心业务的主线流程图:

这张图是在动手写代码之前就和二哥做了业务确认,最终实现完全吻合(2025年就规划了,第一期也是2025年就完成了,但到了2026年,AI的发展突飞猛进,感觉一期的交付内容已经落后,于是我们又马不停蹄做了二期优化,加入了OpenClaw架构)。
架构设计的第一步,把业务主线理清楚——我们得先知道自己要做什么,才能决定怎么做。
01、从主线到功能模块
初版功能视图
从实际业务出发,核心功能围绕“用户”和“求职信息采集”两块展开,第一版思维导图长这样:

模块细化
把用户这块拆开,登录走 JWT 鉴权,充值走微信支付,各自独立:

求职信息采集模块同样一分为二,Spring AI 采集能力和校招数据管理各管各的:

模块划分
经过两轮细化,功能模块归为两大类、四小块:用户、会员、校招信息、AI 能力。
从用户视角,还可以分为前台视角和管理员视角:
...
回复