ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

PRD写作实战指南:以抖音短视频为例搞懂需求文档

PRD写作实战指南:以抖音短视频为例搞懂需求文档 简介面向产品经理、产品助理及需要撰写短视频类产品PRD的分析师这份抖音短视频产品需求文档是一份结构完整、内容详实的范例从产品简介、用户画像到需求总结、产品结构均有清晰罗列适合用于理解UGC短视频App的功能设计与需求拆解思路。文档共1个PDF文件压缩包大小3.16MB便于随时阅读和对照。内容覆盖全局说明登录页面、网络环境、键盘输入、评论框、分享框、前端与后台产品流程图、产品页面逻辑图等模块其中对手机验证码、第三方授权、手机密码三种登录方式以及未登录状态下的权限限制、验证码倒计时等交互细节均有展开说明首页推荐页面上视频播放区、视频分类切换区、互动功能区、消息提示的判断逻辑也描述得足够具体。已有189人学习对产品新人或转岗人员快速掌握规范的PRD撰写格式具有实际参考价值。1. 产品需求文档抖音短视频.pdf——一份PRD如何避免团队“白干一个月”接手过一个短视频类产品的需求整理前任留下的“PRD”只有一页功能清单“要做信息流”“要有拍摄功能”“点赞评论都要”。开发凭感觉做测试凭经验测一个月后联调信息流刷新逻辑、拍摄中断恢复、评论排序规则全是各写各的。产品需求文档抖音短视频.pdf这个标题对应的不是一份格式漂亮的PDF而是一份能把“短视频产品”从想法变成可开发、可测试、可验收规格的契约。这篇笔记围绕这一点讲清楚一件事当你拿到“把某类产品写成PRD”的任务时章节怎么排、功能拆到多细、哪些坑会让整份文档失效。适合正在写第一份PRD的产品新人也适合被开发追问“这个需求到底什么意思”而答不上来的从业者。2. 动手前先立规矩PRD的读者、边界与生命周期2.1 PRD的读者是谁开发、测试、设计各取所需一份PRD最容易被忽略的问题是它要同时服务四类读者而每类读者只关心文档里的一部分内容。前端开发看页面流转和交互状态后端开发看数据结构和接口边界测试看验收标准能否覆盖异常分支UI设计师看的是文案、控件状态和页面层级。试图用一大段文字同时满足所有人的结果通常是所有人都没看明白。我一般会在PRD正文之前放一页“阅读指南”用一张表格告诉读者你的内容分布。表格长这样读者核心关注点对应章节前端开发页面流转、状态切换、交互反馈功能需求详述、状态说明后端开发数据结构、接口入参出参、权限模型数据需求、接口定义测试前置条件、操作步骤、预期结果、异常分支验收标准UI设计师文案、空态、加载态、按钮可用性交互说明、视觉规范参考别小看这页阅读指南。它逼着你在写作时就分清“这个信息是给谁看的”而不是把接口字段、页面截图、运营规则混在一段话里。我在评审会上最常听到的抱怨就是“文档里找不到我要的东西”有了阅读指南对方至少知道去哪一章挖。定了读者之后写作顺序也自然出来了先写清楚功能是什么再写每个功能在不同状态下的表现最后写怎么验收。PRD不是小说不需要埋伏笔所有信息都要让读者在第一次阅读时就能定位到。2.2 PRD不写什么与BRD、MRD的边界划分新手写PRD最常见的偏差是把商业分析和用户研究整段搬进来。产品需求文档抖音短视频.pdf这个标题容易让人误以为“所有关于这个产品的思考都要写进去”但PRD的职责范围其实很窄它回答“这个功能具体怎么做”不回答“为什么要做这个功能”。BRD回答的是商业价值面向决策层核心内容是市场规模、商业模型、投入产出比。MRD回答的是市场机会面向产品团队核心内容是目标用户、竞品分析、需求优先级。PRD回答的是实现方案面向研发团队核心内容是功能逻辑、交互流程、数据规则。三者是层层递进的关系不是互相包含的关系。我见过一份PRD里用三页篇幅分析短视频行业的用户增长趋势结论是“短视频赛道仍处于红利期”。这个结论本身没错但它属于MRD的范畴放进PRD里直接导致文档膨胀到四十页而真正该写的“推荐流刷新时如何保持用户浏览位置”反而一笔带过。PRD里有三样东西我建议坚决不写。第一是视觉审美描述比如“按钮要好看”“页面要有高级感”这类描述无法被验收设计师看了等于没看。第二是技术实现方案PRD描述“做什么”和“做成什么样”至于用Redis还是MySQL、用Flink还是Spark那是技术方案文档的事。第三是运营活动细节如果运营策略还在讨论中不要写进PRD否则开发会拿未确认的方案去排期。2.3 一份PRD的生命周期从需求收集到需求冻结实操中PRD不是一次写完的它有一个生命周期每个阶段文档的状态和存放位置都不一样这直接关系到协作效率。需求收集阶段文档处于v0.1草稿状态内容以碎片化的用户场景和待确认问题为主这时候最不该做的是把文档结构搭得很完整——草稿期的价值在于暴露问题不在于形式完整。需求筛选阶段你需要和业务方确认优先级把确定要做的功能标为P0不确定的标为P1或P2这时候文档进入v0.2。撰写和评审阶段文档进入v0.5到v0.9每次评审后都要更新修订记录。这里有个血泪经验评审会上讨论出的结论必须在当天更新进文档隔一天再改就会漏掉一半。开发启动后PRD进入需求冻结状态版本号升为v1.0。冻结不是不能改而是任何变更都要走变更流程——提出变更、评估影响、确认排期、记录版本。需求冻结这个规则是我见过的团队协作里最容易被忽视的环节。没有冻结机制开发做到一半发现PRD里的逻辑变了前端和后端拿到的还是旧版本线上Bug就这么来的。我习惯在文档里建一张“变更记录表”每次变更都追加一行写明变更日期、变更内容、影响范围、变更原因表格放在修订记录之后开发每次打开文档先看这张表。3. 拆解抖音短视频PRD的标准骨架文档头、功能详述与埋点怎么写3.1 文档头与修订记录第一页决定协作效率产品需求文档抖音短视频.pdf 的第一页决定了这个文档在团队里是被认真对待还是被当作废纸。第一页要放的不是花哨的封面而是一张文档信息表包含产品名称、文档版本号、作者、创建日期、当前状态、评审人和相关方。状态字段尤其重要草稿、评审中、已确认、已冻结这四种状态要让所有人一眼看到避免拿着旧版本的文档去开会。修订记录表放在文档信息表之后格式我固定用四列版本号、修订日期、修订人、修订说明。修订说明要写清楚改了什么而不是写“优化文案”这种废话。比如“v1.1 2025-03-14 张三 修改推荐流刷新逻辑由整页替换改为增量刷新新增刷新中状态说明”这是合格记录。版本号的规则要提前和团队达成一致v0.x表示草稿和评审迭代期v1.0表示评审通过进入开发v1.x表示需求变更后的版本迭代。不要用“最终版”“终极版”“打死不改版”这种文件名我看到过团队里同时存在五个“最终版”谁也不敢删这是协作事故。3.2 产品概述与用户故事让新成员十分钟接手第2章的概述不是写给评审会看的是写给三个月后新加入团队的开发看的。新人接手一个项目时第一件事就是打开PRD如果他看了半小时还不知道这个产品是干什么的说明概述没写好。概述部分我会固定写四段产品定位、目标用户、核心场景、产品目标。产品定位用一句话说清楚例如“一款面向年轻用户的竖屏短视频社区核心价值是帮助用户利用碎片时间消费和创作短视频内容”定位句不要超过50个字。目标用户写2到3类典型用户每类用户写清楚使用场景和核心诉求。产品目标要可量化比如“提升人均观看时长”“降低视频发布成功率”这类可以度量的目标而不是“优化用户体验”这种正确的废话。用户故事的作用是建立同理心。我用的模板是“作为[某类用户]我想要[做某件事]以便[达成某个目的]”。比如“作为一个新注册用户我想要在3步内看到推荐视频以便快速了解产品内容调性”。用户故事写完后要能映射到具体的功能需求上每条用户故事后面标注对应的需求编号这样概述部分和功能详述部分就建立了关联而不是两张皮。3.3 功能需求详述需求条目的编号与粒度控制功能需求详述是PRD的正文主体也是最容易写崩的部分。写崩的表现有两种一种是把每个功能写成一段散文没有编号、没有结构开发阅读时需要在段落里自己找重点另一种是粒度失控登录功能写了三页推荐算法写了三行。我习惯给每条需求分配唯一编号格式为FR-模块名-序号例如FR-FEED-001表示信息流模块的第一条功能需求。编号规则的意义在于让整个项目团队可以用最短的语言定位需求“FR-FEED-001的验收标准有问题”比“信息流那个刷新逻辑我觉得有问题”要高效得多。测试用例、问题单、变更记录全部引用需求编号这是PRD从“文章”变成“工具”的关键一步。粒度控制的标准是一条需求必须能被一个开发在3天内完成开发并且能被测试写成一条明确的测试用例。如果一条需求描述超过300个字大概率是粒度太粗或太细需要拆开。以“视频发布”为例一句话需求是“用户能发布视频”这没法开发拆解后的需求条目包含前置条件、主流程、异常流、验收标准请看下面的结构示例FR-VIDEO-001 视频发布-主流程 前置条件用户已登录用户已授权相机和麦克风权限用户已完成视频拍摄或从相册选择视频 操作步骤 1. 用户点击首页底部“”按钮 2. 系统进入拍摄页面默认打开后置摄像头 3. 用户点击录制按钮开始拍摄 4. 用户点击完成按钮结束录制 5. 系统进入发布编辑页显示视频预览、添加文案入口、添加话题入口 6. 用户点击“发布”按钮 7. 系统上传视频展示上传进度 8. 上传成功跳转至发布完成页 异常流-上传失败 1. 上传过程中网络中断进度条停留超过15秒 2. 系统提示“网络不稳定请重试”提供“重试”和“保存草稿”按钮 3. 点击“重试”系统重新开始上传 4. 点击“保存草稿”视频保存至草稿箱提示“已保存到草稿箱” 验收标准 1. 上传成功后视频出现在用户主页作品列表顶部时间戳为当前时间 2. 网络中断场景下App不闪退不丢失已拍摄视频这是功能需求详述的标准模板。值得一提的是什么前置条件必须写明开发拿到这个才能判断入口是否符合条件异常流是测试最喜欢的部分因为他们提交的缺陷多半在异常流里验收标准必须可验证不能出现“视频上传速度要快”这种主观描述而应该用具体的规则描述。3.4 埋点与数据需求PRD里的非功能部分短视频产品上线后产品经理靠什么判断功能是否有效靠数据。但很多PRD完全没写数据埋点需求导致开发做完了产品才发现不知道该看什么数据。埋点需求应该在PRD评审时就确定而不是产品上线后补。埋点需求表一般包含五个字段事件名、触发时机、上报字段、事件描述、对应需求编号。以短视频产品的核心事件为例事件名触发时机上报字段对应需求编号video_play_start视频开始播放video_id、play_source、user_id、durationFR-FEED-001video_play_finish视频播放完毕video_id、play_duration、is_auto_nextFR-FEED-001video_publish_success视频发布成功video_id、video_duration、filter_idFR-VIDEO-001comment_send评论发送成功video_id、comment_id、content_lengthFR-SOCIAL-003事件命名是埋点设计里争议最多的地方。我用的规则是“模块_动作_结果”全小写下划线分隔。这个规则的好处是通过事件名就能看出它属于哪个模块、记录了什么动作、是成功还是失败。要和开发确认的是上报时机进入页面就上报还是离开时上报直接影响数据准确性。比如播放时长这类数据如果在播放完成时上报用户滑走时中断的视频就丢失了需要另有心跳机制来补全。埋点需求的另外一个要点是权限边界不是所有字段都能上报用户地理位置这种敏感信息要明确脱敏规则。PRD里写清楚哪些字段上报前必须脱敏然后在评审时找法务或合规确认这条不能省。4. 把抖音短视频拆成可落地的功能模块信息流推荐、拍摄状态机与互动边界4.1 信息流推荐需求怎么写才能让算法团队接得住信息流是短视频产品的核心页面也是PRD写作的重灾区。常见问题是只写“首页要做个性化推荐”这句话没给出任何可实施的输入。算法团队接到这个需求时完全不知道推荐目标是什么、候选集从哪里来、冷启动怎么做。PRD里关于信息流推荐我认为要聚焦三个层面。第一是产品规则首刷时用户没有历史行为推荐什么社区规则一般定的是“先推热门内容少量新内容做探索”。第二是交互规则下拉刷新是整页替换还是增量刷新上拉加载的分页大小是多少刷新的频率限制第三是效果规则推荐后要衡量什么指标以及指标不达标时的迭代方向。信息流PRD一定要写清楚的字段是页面元素优先级、推荐位类型、广告位频率。以首页信息流为例场景需求描述验收标准首次启动无历史行为时按平台热门视频池推荐植入20%的新作者内容用于探索新用户在5秒内看到首条视频开始播放且首屏无空白页下拉刷新用户下拉超过40px触发刷新刷新后替换当前feed流并回到顶部刷新过程不超过1秒替换后首条视频自动播放上拉加载距离底部3条视频时预加载下一页每页10条翻页时记录浏览位置连续滑动不出现loading超过2秒的情况切后台回来后恢复原浏览位置广告位每间隔6条视频插入1条广告位广告播放时不自动连播广告位有明确“广告”标识用户手动点击后才播放声音算法团队能不能接住这个需求取决于PRD是否写清了“待算法决策的部分”和“产品规则限定的部分”。我的写法是固定一句话“以下算法可自主优化排序权重、个性化召回策略以下为产品硬规则广告位密度、刷新逻辑、封面展示规则”。产品规则锁定体验下限算法在体验下限之上做优化两者才不会互相干扰。4.2 拍摄与编辑用状态机约束页面流转拍摄模块是所有短视频产品PRD里技术风险最高的部分因为它涉及相机权限、录音权限、前后台切换、中断恢复、视频编码。用自然语言描述这些流程评审时开发一定会追问“这个状态下如果用户切后台怎么办”到时候现想答案就被动了。我的做法是用状态迁移表来约束拍摄页面的所有状态。状态机四个要素状态、触发事件、动作、下一个状态。以拍摄主流程为例当前状态触发事件执行动作下一个状态空闲用户点击录制按钮开始录像、计时器启动录制中录制中用户点击暂停按钮暂停录像、保留已录制片段、计时器暂停已暂停已暂停用户点击继续按钮恢复录像、计时器继续录制中录制中或已暂停用户点击完成按钮合并片段、生成预览、进入编辑页编辑中录制中App退到后台自动暂停录制、缓存已录制数据已暂停录制中系统来电自动暂停录制并保存已暂停这张表把页面所有可能的状态都列全了还给开发留了一个缺口表中的“进入后台”和“来电中断”都指向暂停但恢复回来后是继续录还是重新录需要在PRD里补充决策规则我一般会写录制时长小于3秒时中断则丢弃大于3秒则保留并提示“可继续录制或重新录制”。这一点要在评审时单独标红因为它是用户最容易感知也最容易出Bug的路径。编辑页面的PRD写作要点是素材非破坏性编辑。滤镜、贴纸、文字这类编辑操作不能直接修改原始视频数据而是记录编辑参数导出时才合成。这个规则要写在需求描述里否则开发为了省事把编辑直接作用在源视频上用户想撤销操作就没办法了。4.3 互动与社交边界条件比主流程更重要关注、点赞、评论、私信是短视频产品的社交模块。这四个功能看起来简单写到PRD里才发现边界条件多到让人崩溃。我遇到过的问题包括用户删除视频后评论去留、拉黑后对方能否看到评论、并发点赞导致数量显示不准、评论被删除后楼层结构是否保留。PRD写作时我给社交模块设了一条底线主流程三分写边界条件七分写。以评论功能为例主流程只有一条“用户在视频播放页底部输入评论内容点击发送评论出现在评论区”。边界条件却有一长串FR-SOCIAL-003 评论功能-边界条件 1. 评论内容为空或全空格时发送按钮置灰不可点击 2. 评论内容超过500字时输入框阻止继续输入并提示“评论最多500字” 3. 视频作者删除视频时系统同步删除该视频下所有评论 4. 用户删除自己的评论时显示“该评论已删除”在原评论位置占位保留下方回复楼层 5. 用户被视频作者拉黑后该用户无法评论但已发表的评论保留 6. 评论发送失败时输入框保留用户输入内容点击重试重新提交不丢内容 7. 同一用户10秒内连续发送评论超过5条触发频率限制提示“操作太频繁”这些边界条件是怎么想出来的我的习惯是逐个场景过一遍如果是用户走到哪个步骤时会发生什么每一个操作分支都追问一句“这里会不会出现异常”。被拉黑的用户看到什么删除的视频评论去哪了空评论能不能发这些问题在头脑里过完再结合自己使用产品时遇到的异常情况边界条件就攒起来了。互动模块的PRD还要注意数据一致性。点赞数量是显示缓存值还是实时查库这个看似技术的问题直接影响用户体验事实上它需要在PRD里明确点赞数量的更新允许1秒内延迟但用户点击后的按钮状态必须即时反馈。次秒级的一致性延迟用户可以接受按钮无响应就一定被当作Bug。5. 避坑PRD从评审到交付的五个翻车现场5.1 开发说“这需求没法做”需求描述缺了什么现象评审会上开发指着某条需求说“这需求没法做”追问原因得到的回答是“你这个流程走不通”。我一查需求里确实写了“用户关闭定位权限后仍推荐同城内容”这本身就是矛盾逻辑——没有定位权限就没有同城概念要给用户看同城内容就必须要么引导开启定位要么按IP估算城市。原因写需求时只从产品角度考虑理想流程没有走到分支路径上验证逻辑闭环。同城推荐这个例子只写了“有定位时的推荐规则”没写“无定位时的降级方案”。解决每条需求的异常流必须和主流程同时写出来。我给自己定的规则是“写完主流程后把自己当成一个故意搞破坏的用户在每个操作步骤上问一句‘这个操作失败了怎么办’把答案写进异常流”这在评审时能挡掉一半以上“没法做”的质疑。5.2 测试提了一堆“未定义”缺陷现象联调阶段测试提单的标题半数以上都是“未定义”两个字比如“未定义下载视频时断网的表现”“未定义发布视频时被踢下线”。这些问题逻辑上没错但PRD没写测试只能凭自己的理解猜测系统应该怎么表现。更麻烦的是开发和测试各猜一遍两边猜的不一致就开始扯皮。原因需求详述只写了主流程和典型异常流没覆盖全量异常路径。PRD成了“半契约”剩下的一半靠团队默契来补而团队往往没有默契。解决把测试用例评审提前到PRD评审环节。PRD评审时邀请负责该模块的测试工程师到场现场对着需求逐条推一遍用例路径凡是测试会写成“未定义”的路径当场补齐到PRD里。测试用例和PRD的覆盖对齐了之后后续扯皮会明显变少。5.3 设计还原的页面不是你要的样子交互说明没写到现象UI设计师按PRD还原页面后发现视频播放页的评论入口放在了右下角而产品预期是在右侧中间位置。设计师说“PRD里没写位置”产品说“这么基础的东西还要写吗”。评审会上一吵就是半小时最后以产品妥协收尾。原因PRD里只写了信息结构和功能逻辑没有写页面元素的位置约束和层级关系。产品经理的直觉是“设计师应该懂”但设计师能读到的只有PRD里写出来的内容。解决功能需求详述里增加交互约束段落不用画原型图只要用语言描述关键元素的布局规则。比如“评论入口图标固定在视频右侧区域位于点赞按钮上方20px处图标尺寸不小于40x40px”。这些约束写在需求描述里设计师有了明确依据开发也方便检查间距还原是否正确。5.4 需求变更导致文档失控版本管理形同虚设现象项目进行到第3周业务方提出要改推荐流的刷新逻辑。产品经理直接在原文档里改了文字群里发了一句“推荐流逻辑已更新”。第二天开发问“刷新时保留浏览位置这条是新的还是旧的”产品自己也懵了。原因没有需求变更流程文档随时可改改完没有同步机制。每个人都以为自己在看最新版实际上同时存在好几个版本的口头确认。解决需求冻结后修改文档必须走变更流程。变更流程对我来说只有三步在变更记录表中新增一行写明变更内容和原因将变更后的需求条目单独发到项目群并所有相关开发和测试更新文档版本号和状态。不要直接在正文里悄无声息地改改完不通知等于没改。5.5 评审会上没人说话会后群里全是问题现象PRD评审会开了40分钟全程都在讲文档内容业务方、开发、测试都没怎么发言。产品问“有问题吗”全员沉默于是散会。结果会后两小时内群里炸了各种意见刷了上百条。原因评审会没有提前发文档大家现场才拿到材料来不及细读。更关键的是会上只念文档没有设计需要参与者表态的问题与会者不知道自己该关注什么。解决评审会前24小时把PRD发给所有参会人并在群里指定一条必读内容——“请重点看FR-FEED-001和FR-SOCIAL-003的边界条件部分有异议请会前反馈”。评审时不要通读文档只挑有争议的条目逐条确认。我做过的最有效的调整是会前收集参会人反馈把反馈逐条列入评审议程会上只讨论这些反馈。没有人想当众承认自己没看文档但他们都愿意在会前悄悄提问题。6. 让PRD能“自证正确”验收标准四要素与双向追溯表6.1 验收标准四要素前置条件、操作步骤、预期结果、异常分支PRD里的每条需求都应该带验收标准且验收标准必须包含四个要素。前置条件描述这条需求在什么状态下才有效操作步骤描述测试的输入路径预期结果描述一个可观察、可测量的系统表现异常分支描述出了问题时的系统行为。四个要素齐全的验收标准开发可以自测测试可以直接转用例产品可以据此验收一份文档服务了三拨人。6.2 需求条目与测试用例的双向追溯表双向上追溯表是一张二维表每个需求条目编号对应一到多条测试用例编号每条测试用例都能找到它的需求来源。评审通过后我推荐花半天时间把这张表拉出来走一遍。走的过程中你会发现若干条需求编号在表中没有对应测试用例不用怀疑那就是漏写的部分。线上事故大多发生在这些空白处。6.3 把埋点写进验收事件字段核对清单最后说一个我踩过坑后养成的习惯埋点事件上线后自己先用测试包走一遍完整流程然后去数据后台核对事件是否上报、字段是否完整、数值是否符合预期。这个核对过程只需要十分钟却能发现大量问题比如事件上报成功但字段全是空值或者视频播放时长全部为0。把这些核对项列成一张清单附在埋点需求后面让测试在验收时一并检查比事后补数据要划算得多。我现在的习惯是每份PRD写完第一遍先不急着发出去评审放一晚上第二天泡杯咖啡从头读一遍专门找不通顺的流程和缺失的异常分支。这个“冷却期”帮我避开了很多次翻车也推荐你试试。希望帮到你。本文还有配套的精品资源点击获取
返回列表