后端通识 - 后端开发职位接触的开发流程
一、什么是PRD?PRDProduct Requirements Document产品需求文档在后端流程里开发正式开始前的输入文档产品写后端干活的依据所处流程顺序非常重要,整个开发过程的流程产品输出 PRD →需求评审会后端参加→ 后端看 PRD 做技术方案、库表设计 → 写接口、业务代码 → 开发、联调、测试PRD 讲业务要做成什么样业务规则、场景、异常、权限后端看完 PRD 输出技术方案文档讲代码、表结构、接口怎么实现。PRD 里面后端重点看什么业务流程正常流程、各种异常场景数据需要哪些字段、字段约束权限哪些角色能查 / 改数据边界判空、重复、状态流转验收标准功能做到算完成后端拿到 PRD 要做的事读 PRD找逻辑漏洞、不合理点需求评审会上提出来根据业务设计数据库表结构设计接口入参、出参、错误码评估开发工时排期写业务代码实现 PRD 描述的全部逻辑自测保证符合 PRD 业务规则简单区分容易混淆文档PRD产品视角做什么业务功能给研发看技术方案文档后端写技术怎么实现接口文档接口入参出参前后端联调用二、PRD的文档结构PRD 完整文档结构后端重点关注标记★文档头部 修订记录文档名称、版本、作者、日期、阅读对象修改历史版本、修改人、修改内容、时间★需求变更看这里避免旧版本开发2. 需求背景与目标业务背景为什么做解决什么痛点业务目标、预期效果需求优先级 P0/P1/P2★名词术语解释★B 端非常重要统一业务概念3. 用户角色与业务场景★角色列表普通用户、管理员、第三方系统用户场景什么角色在什么条件下做什么事4. 业务流程图★后端重中之重主流程正常业务流转分支流程、异常流程状态流转图订单状态、单据状态变更规则★5. 功能需求详情PRD 核心每个功能包含功能简述前置条件正常操作逻辑异常逻辑、边界条件★字段说明字段含义、是否必填、取值范围、长度★权限规则哪些角色可读、可新增、可修改、可删除★6. 原型 / 交互说明原型链接前端重点看后端主要参考业务逻辑。7. 非功能需求★后端必看性能响应时间、并发量安全鉴权、数据加密、防重复提交兼容性依赖外部系统需要调用哪些第三方接口8. 数据需求★需要存储哪些业务数据数据埋点、报表统计要求9. 验收标准★测试 开发依据可验证描述 “做到什么算完成”包含正常场景、异常场景。10. 附录评审记录、待确认问题、参考文档后端读 PRD 重点抓 4 块业务流程图、状态流转、字段与权限、异常边界。PRD 只讲业务库表、接口、SQL、技术方案不由 PRD 写后端自己输出。三、后端开发在需求评审会议上要做到哪些才符合专业素养后端开发需求评审会专业要点核心不纠结 UI 交互聚焦业务逻辑、数据、边界、可行性、风险、排期不要会后才发现问题1、会前最重要很多人忽略提前阅读 PRD、流程图、原型不要开会现场才读。把看不懂、逻辑矛盾、缺少异常场景的点先标记出来。确认名词定义同一个业务名词不能有两种解释。2、会上重点提问方向后端视角①业务逻辑与状态业务主流程是否闭环状态流转是否完整有没有状态跳变漏洞。每种失败、回滚、取消场景业务上希望怎么处理。是否存在并发操作场景多人同时修改同一条数据业务期望结果是什么。②数据相关字段字段类型、长度、枚举值、是否允许为空删除是物理删除还是逻辑删除。唯一性约束哪些字段不能重复。数据来源哪些是用户输入、系统生成、第三方接口返回。③权限不同角色的增删改查权限数据权限能看到哪些范围的数据。④边界和异常高频踩坑点参数为空、超限、重复提交怎么处理。依赖第三方接口超时、失败业务是重试、回滚还是报错。极限场景数据量大、高频调用业务怎么表现。⑤可行性、风险、依赖判断需求能不能实现有无技术卡点。外部依赖哪些系统对方排期是否对齐。识别风险点当众抛出而不是自己扛到开发阶段。⑥排期与优先级P0/P1/P2 确认区分本次迭代做还是后续版本。评估粗略工作量判断迭代周期是否合理不能实现直接说明。3、会上不要做的事不讨论页面长什么样、按钮颜色交给产品、前端。不现场深入聊具体代码、SQL、表结构那是会后技术方案评审干的。不随口答应 “都能做”有风险要明确说。不要沉默有疑问不提会后再提属于后端失职。4、会后动作评审问题、待确认项记录同步文档。拿到确认版 PRD以此作为开发依据。输出技术方案、库表、接口设计再进入开发。四、后端看 PRD 做技术方案、库表设计需要注意什么阅读 PRD 阶段核对业务名词、术语统一消除歧义确认主流程、分支、异常、状态流转闭环。识别并发、重复提交、第三方依赖超时失败等边界场景PRD 缺失需提出确认。理清角色权限区分功能权限与数据权限确认删除逻辑是物理删除还是逻辑删除。提取字段信息确认字段含义、类型、长度、枚举、非空、唯一性约束。确认非功能需求并发、响应时间、安全鉴权、数据埋点、外部系统依赖关系。技术方案设计评估需求技术可行性识别技术风险、依赖风险明确本次迭代范围区分暂不实现功能。梳理业务模块拆分确定调用链路明确内部调用、第三方调用、异步同步场景。设计异常处理、失败重试、回滚策略考虑事务边界避免数据不一致。评估性能预估数据量提前考虑索引、分页、缓存、限流等方案。明确兼容性老数据兼容处理版本变更带来的数据迁移方案。库表设计遵循数据库范式适度冗余平衡查询性能与维护成本。主键、索引合理设计高频查询字段建索引避免冗余索引。状态、枚举字段使用数字编码注释完整预留扩展字段。增加通用字段id、创建人、创建时间、更新人、更新时间、is_deleted 逻辑删除标记。字段类型、长度严格对齐 PRD 业务约束禁止字段长度不足。外键尽量业务代码控制数据库少用外键约束大字段单独拆分。考虑分表可能性预估后期数据膨胀问题。其他技术方案、库表不能脱离 PRD 业务逻辑不额外实现 PRD 未定义功能。方案评审对齐产品、测试记录待确认项需求变更后同步修改技术方案与库表。五、后端开发技术方案的标准格式后端技术方案标准格式1. 文档概述1.1 文档目的1.2需求背景1.3业务范围与迭代边界本次做、不做的内容1.4 阅读对象1.5 术语与缩略词1.6修改记录2. 需求分析2.1 业务简述2.2PRD 核心业务流程2.3核心状态流转2.4非功能需求性能、并发、安全、可靠性2.5 外部依赖系统3. 总体方案设计3.1整体架构 / 调用链路图3.2模块拆分3.3 同步 / 异步方案选型3.4核心设计思路4. 详细方案设计4.1核心业务处理逻辑4.2 异常处理策略、失败重试、回滚、降级逻辑4.3 并发控制方案锁、幂等、防重复提交4.4 缓存设计缓存 key、失效策略、缓存更新4.5时序图 / 流程图5. 数据库设计5.1 库表说明5.2ER 图5.3表结构字段名、类型、长度、注释、默认值、索引5.4索引设计5.5 数据迁移方案如有6. 接口设计6.1内部接口6.2 对外 / 第三方调用接口6.3核心入参、出参、错误码定义7. 风险点与应对措施7.1 技术风险7.2 依赖风险7.3 业务风险7.4对应解决方案8. 工作量评估与排期8.1开发工作量评估8.2联调、自测时间8.3里程碑节点补充里程碑节点主要写什么技术方案评审完成时间库表创建、接口定义完成时间开发编码完成时间单元自测完成时间 验证是否符合PRD需求代码逻辑是否有问题,减少联调、提测发现bug返工时间前后端联调完成时间 (发现真实调用接口格式等问题)提测时间交付测试(将问题流转到测试侧由测试发现缺陷并提交 bug。)bug 修复完毕时间预发布环境验证完成时间复刻生产环境验证版本在接近真实生产条件下功能是否正常。提前发现上线才会暴露的隐藏 bug。确认版本质量达标作为正式上线前最后一道校验关口。正式上线发布时间上线后观察结束时间9. 测试要点9.1 重点测试场景9.2 边界、异常测试点10. 附录10.1参考文档PRD 链接等10.2待确认问题列表六、后端开发进行库表设计的标准文档格式库表设计文档标准格式1. 文档头部1.1 文档名称1.2 版本、作者、日期1.3修改记录版本号、修改人、修改内容、修改时间1.4 术语说明2. 概述2.1 业务说明2.2设计依据PRD、技术方案链接2.3 数据库信息数据库名、字符集、排序规则3. ER 关系图实体之间关联关系图示4. 表结构详情每张表包含表名、表注释| 字段名 | 字段类型 | 长度 | 是否允许为空 | 默认值 | 注释 |5. 索引设计| 索引名称 | 索引类型 | 索引字段 | 索引说明 |6. 枚举说明枚举编码、枚举值、业务含义7. 特殊字段说明逻辑删除、创建时间、更新时间、创建人、更新人等通用字段说明8. 数据迁移脚本如有历史数据处理逻辑、执行 SQL 脚本9. 注意事项锁、分表、大字段、禁止数据库外键等约束说明10. 附录待确认问题、参考文档

相关新闻

从函数模板到模板元编程:C++编译期计算的原理与实践

从函数模板到模板元编程:C++编译期计算的原理与实践

1. 项目概述&#xff1a;从“函数模板”到“模板元编程”的思维跃迁提到C里的函数模板&#xff0c;很多刚入门的开发者会觉得这不就是个“高级宏”嘛&#xff0c;写个template <typename T>&#xff0c;然后让编译器帮你生成几个不同类型的函数&#xff0c;省了点复制粘贴…

2026/8/22 8:09:06 阅读更多 →
dots.ocr:1.7B视觉语言模型驱动的文档理解范式

dots.ocr:1.7B视觉语言模型驱动的文档理解范式

1. 这不是又一个OCR工具&#xff0c;而是一次视觉理解范式的迁移你有没有遇到过这样的场景&#xff1a;扫描一张手写的会议纪要&#xff0c;传统OCR把“张工”识别成“弓王”&#xff0c;把“Q3交付”错成“Q8文付”&#xff1b;或者处理一份带复杂表格线、水印、倾斜扫描的财务…

2026/8/22 8:09:06 阅读更多 →
企业云基础设施实战:从核心概念到云原生微服务部署

企业云基础设施实战:从核心概念到云原生微服务部署

最近在跟几个企业客户做技术方案交流时&#xff0c;发现一个非常明显的趋势&#xff1a;无论规模大小&#xff0c;企业上云的步伐不仅没有放缓&#xff0c;反而在加速。这背后不仅仅是“把服务器搬到云上”这么简单&#xff0c;它深刻地改变了从基础设施选型、应用架构设计到团…

2026/8/22 8:08:06 阅读更多 →

最新新闻

深入理解Linux perf工具:从原理到实战的性能剖析指南

深入理解Linux perf工具:从原理到实战的性能剖析指南

1. 项目概述&#xff1a;为什么我们需要深入理解perf在Linux性能调优的世界里&#xff0c;perf工具就像一把瑞士军刀&#xff0c;功能强大且无处不在。无论是排查线上服务的性能瓶颈&#xff0c;还是优化自己编写的C/C程序&#xff0c;甚至是分析一个复杂内核模块的行为&#x…

2026/8/22 8:52:21 阅读更多 →
多智能体协作对抗实战:从“木星友谊赛”看AI Agent协作挑战与优化

多智能体协作对抗实战:从“木星友谊赛”看AI Agent协作挑战与优化

蛙蛙与盾叔的“木星友谊赛”&#xff1a;一场关于AI Agent协作与对抗的深度技术复盘最近&#xff0c;一个名为“拉格朗日木星友谊赛”的AI竞技事件在开发者圈子里引发了不小的讨论。核心剧情听起来颇具戏剧性&#xff1a;两位被昵称为“蛙蛙”和“盾叔”的AI智能体&#xff08;…

2026/8/22 8:52:21 阅读更多 →
AI代码生成到可工作产品:跨越工程化鸿沟的实践指南

AI代码生成到可工作产品:跨越工程化鸿沟的实践指南

你有没有过这样的经历&#xff1f;花了一下午时间&#xff0c;和某个AI工具反复对话&#xff0c;让它帮你生成一个“完整可用的产品原型”——比如一个简单的待办事项应用&#xff0c;或者一个数据可视化小工具。AI确实能吐出一大段看起来像模像样的代码&#xff0c;甚至还能配…

2026/8/22 8:52:21 阅读更多 →
本地部署AI语音输入法:从环境配置到API集成的完整实践指南

本地部署AI语音输入法:从环境配置到API集成的完整实践指南

这次我们来看一个名为“猎奇语音输入法”的项目。这个名字听起来就有点意思&#xff0c;它不是一个传统的拼音或手写输入法&#xff0c;而是一个主打“语音输入”的本地AI工具。简单来说&#xff0c;它允许你通过说话来输入文字&#xff0c;但核心在于其背后的AI模型——它很可…

2026/8/22 8:52:21 阅读更多 →
数学建模实战:基于社会力模型与遗传算法的铁路安全标线优化设计

数学建模实战:基于社会力模型与遗传算法的铁路安全标线优化设计

1. 项目概述&#xff1a;从一道赛题到一套方法论去年带学生打数模竞赛&#xff0c;碰上了辽宁省赛的A题——“铁路车站的安全标线”。这题目一出来&#xff0c;不少队伍有点懵&#xff0c;觉得这不像传统的物理题或优化题&#xff0c;更像是一个“跨界”的应用问题。但在我看来…

2026/8/22 8:52:21 阅读更多 →
技术问题排查:如何准确定义问题领域与搜索关键词

技术问题排查:如何准确定义问题领域与搜索关键词

这类标题和热词组合&#xff0c;很容易让人困惑。它看起来像在讨论某个特定工具或模型的性能提升&#xff0c;但“v4 flash”、“修复插件”、“pro”这些词&#xff0c;在不同的技术领域里含义完全不同。从热词来看&#xff0c;至少涉及了嵌入式开发中的Flash存储、AI模型Deep…

2026/8/22 8:51:21 阅读更多 →

日新闻

沉金PCB工艺实战指南:从设计到SMT焊接的可靠性保障

沉金PCB工艺实战指南:从设计到SMT焊接的可靠性保障

在电子硬件开发领域&#xff0c;PCB&#xff08;印制电路板&#xff09;的沉金工艺是提升产品可靠性和焊接质量的关键环节。对于需要高密度互连、长期稳定运行或高频信号传输的板卡&#xff0c;如“黍姐仿通行证”这类可能涉及身份识别、数据交互的硬件项目&#xff0c;选择正确…

2026/8/22 0:00:11 阅读更多 →
电气考研电路八月强化四步法:从知识体系到真题实战的闭环攻略

电气考研电路八月强化四步法:从知识体系到真题实战的闭环攻略

这次我们来看一个针对电气考研电路科目的学习规划项目。它不是软件工具&#xff0c;而是一套聚焦于8月份关键节点的备考策略。对于电气工程考研的同学来说&#xff0c;电路分析是专业课的重中之重&#xff0c;也是拉开分差的关键。进入8月&#xff0c;复习进入强化阶段&#xf…

2026/8/22 0:00:11 阅读更多 →
消除AI代码的“AI味”:Claude Code设计优化技能配置与实战指南

消除AI代码的“AI味”:Claude Code设计优化技能配置与实战指南

大家好&#xff0c;我是专注于前端开发与AI工具实践的技术博主。在日常使用 Claude Code 等AI编程助手时&#xff0c;你是否也遇到过这样的困扰&#xff1a;生成的代码功能上没问题&#xff0c;但代码风格、组件设计、交互逻辑总透着一股“AI味”——布局单调、样式简陋、交互生…

2026/8/22 0:00:11 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者&#xff0c;最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent&#xff0c;从本地部署到云端API&#xff0c;我们正处在一个技术栈快速重构的节点。然而&#xff0c;面对层出不穷的模型、框架和工具&#xf…

2026/8/21 3:21:33 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/22 8:09:09 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。&#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室&#x1f447; 关注我领取海量matlab电子书和…

2026/8/21 6:07:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速&#xff1a;macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/21 16:42:28 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南&#xff1a;3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗&#xff1f;ncmdump解密工具帮你轻松解决这个困…

2026/8/22 7:31:03 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片&#xff1a;为英语学习 App 打造桌面级学习助手适用平台&#xff1a;HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0&#xff08;API 26 Beta&#xff09;新增了 AgentCard 智能体卡片能力&#xff0c;这是继 HMAF&#xff08;鸿蒙智能体框架&#x…

2026/8/22 3:22:48 阅读更多 →