13. 独立开发、团队、学习与工作流 · 讲者经验 · 教学步骤 2
把MVP限定为验证使用
MVP要确认核心任务,而不是提前实现完整蓝图。
原知识点:MVP 的目标是用最少必要功能确认有人使用,而不是前期堆满界面、交互和架构设计。
执行步骤
- 用一句话定义本轮要验证的单一用户任务和成功事件。
- 列出完成该任务不可缺的功能、安全、隐私、错误处理与支持底线。
- 把增长、社交、复杂账户、次要格式等非必要内容放入“暂不做”。
- 为每项必须做写输入、动作、可见结果和失败提示。
- 用目标用户完成端到端试做,未通过前不扩大范围。
可复制工作表
# MVP验证合同 MVP ID/版本/commit:__ 目标用户/单一任务:__ 本轮单一假设:__ 主要成功事件、分母与预设通过线:__ 保持不变/观察窗/复查日:__ |能力ID|必须做能力|输入|用户动作|可见成功结果|失败注入与明确提示|安全/隐私底线|证据位置|结果| |---|---|---|---|---|---|---|---|---| |F1|__|__|__|__|__|__|__|__| |F2|__|__|__|__|__|__|__|__| |F3|__|__|__|__|__|__|__|__| |暂不做功能|本轮排除原因|什么新证据才重开| |---|---|---| |__|__|__| |试做ID/目标用户|真实场景与输入|预期成功事件|实际结果/耗时|失败提示或支持动作|安全/删除复核|证据位置|结论| |---|---|---|---|---|---|---|---| |U01|__|__|__|__|__|__|__| |U02|__|__|__|__|__|__|__| 成功分子/合格分母/比率:__/__/__ 错误、安全、隐私验收汇总:__ 继续/调整/暂停/放弃条件:__ 实际决定、下一轮唯一改动与批准人:__
完整示例
示例(数字非通用阈值):
MVP ID=IMG-MVP-01,版本0.3.0,commit=c8f2a1d。目标用户是偶尔需要压缩配图的独立写作者;单一任务是上传一张不超过10 MB的JPG/PNG并下载压缩结果。本轮单一假设:至少4/5名目标用户能在不求助的情况下于2分钟内完成该任务。主要成功事件=download_verified;分母是已开始上传有效JPG/PNG的去重试做者,预设通过线=完成≥4/5、F1/F2/F3各自6/6通过,且5名试做者的删除复核5/5通过。页面文案、压缩质量80和测试设备清单保持不变;试做窗2026-08-03至2026-08-05,复查日2026-08-06。
列较多时可左右滚动;首列会固定,便于逐行比较。
| 能力ID | 必须做能力 | 输入 | 用户动作 | 可见成功结果 | 失败注入与明确提示 | 安全/隐私底线 | 证据位置 | 结果 |
|---|---|---|---|---|---|---|---|---|
| F1 | 上传与真实类型校验 | ≤10 MB JPG/PNG | 选择文件 | 显示文件尺寸与预览 | 伪装为JPG的脚本、损坏文件、11 MB文件分别显示不支持的文件、无法读取、超过10 MB | 按magic bytes白名单;不记录原文件名;拒绝文件不入对象存储 | evidence/mvp/img-mvp-01/f1-validation.json | 6/6边界用例PASS |
| F2 | 压缩与进度/失败恢复 | 已通过F1的图片 | 点击压缩 | 显示新尺寸与可比较预览 | 注入worker超时后显示压缩超时,请重试,不伪装为成功 | 随机对象ID、每用户隔离;原件与结果15分钟自动删除 | evidence/mvp/img-mvp-01/f2-worker.log | 5次正常PASS;1次超时提示PASS |
| F3 | 下载与结果校验 | 压缩结果 | 点击下载 | 下载文件可打开且校验和匹配 | 注入损坏产物时阻止下载并显示结果校验失败 | 签名下载URL有效5分钟;页面不公开文件地址 | evidence/mvp/img-mvp-01/f3-download.json | 5/5正常下载与1/1损坏阻断PASS |
列较多时可左右滚动;首列会固定,便于逐行比较。
| 暂不做功能 | 本轮排除原因 | 什么新证据才重开 |
|---|---|---|
| 账户与云端历史 | 单次下载任务不需要长期身份和保存 | 连续两轮有≥5名已完成用户主动要求跨设备历史 |
| 社区与公开作品页 | 不影响压缩任务且增加公开授权风险 | 独立完成与隐私门均通过后另立假设 |
| 批量、HEIC与高级参数 | 不是本轮JPG/PNG单图任务 | 有效试做中相关失败或明确请求达到预设复查条件 |
列较多时可左右滚动;首列会固定,便于逐行比较。
| 试做ID/目标用户 | 真实场景与输入 | 预期成功事件 | 实际结果/耗时 | 失败提示或支持动作 | 安全/删除复核 | 证据位置 | 结论 |
|---|---|---|---|---|---|---|---|
| U01/博客作者 | 8.2 MB JPG,桌面Chrome | 下载可打开结果 | 46秒完成,2.1 MB | 未求助 | 15分钟后源与结果均0条 | evidence/mvp/img-mvp-01/u01.mp4 | PASS |
| U02/自由撰稿人 | 6.1 MB PNG,移动Safari | 下载可打开结果 | 72秒完成,1.8 MB | 未求助 | 删除任务del-20260803-02完成 | evidence/mvp/img-mvp-01/u02.mp4 | PASS |
| U03/编辑 | 9.7 MB JPG,慢速网络 | 下载可打开结果 | 84秒完成,3.0 MB | 一次重试后完成 | 删除任务完成 | evidence/mvp/img-mvp-01/u03.mp4 | PASS |
| U04/通讯作者 | 7.8 MB JPG,网络中断后恢复 | 下载可打开结果 | 120秒仍未完成;上传必须从头开始 | 显示网络失败但无断点恢复 | 失败残片15分钟后为0条 | evidence/mvp/img-mvp-01/u04.mp4 | FAIL |
| U05/顾问 | 4.4 MB PNG,桌面Firefox | 下载可打开结果 | 55秒完成,1.5 MB | 未求助 | 删除任务完成 | evidence/mvp/img-mvp-01/u05.mp4 | PASS |
成功=4/5=80%,达到本次4/5通过线;F1=6/6、F2=5次正常+1次超时提示=6/6、F3=5次正常+1次损坏阻断=6/6,5名试做者删除复核=5/5,支持“单图压缩核心任务可用”,不证明规模需求。若完成<4/5则调整核心流程;任一越权、文件公开或删除失败立即暂停;直接访谈否定任务则放弃。实际决定=ITERATE_WITHIN_SCOPE:不增加账户、社区或批量功能,下一轮唯一改动是上传断点恢复;产品负责人李于2026-08-06批准。
完成清单
- 范围围绕一个任务和一个主要假设,成功事件有明确分母与预设通过线。
- 安全、隐私、真实交付和错误提示没有因“最小”被删除,并有失败注入证据。
- 必须做/暂不做边界可检查,且暂不做项有重新开启条件。
- 目标用户端到端试做逐人留有输入、实际结果、证据位置和最终分支。
适用条件
核心任务、数据安全、结果可理解与错误提示仍是底线。
来源:Blank:以 AITDK 为例聊如何基于需求开发产品