用户故事:一句话说清楚给谁、做什么、图什么
「做个预约功能」这句话里,AI 不知道谁预约、预约什么、预约完发生什么。用户故事把这三件事逼你说出来:
作为(谁),我要(做什么),为了(得到什么)。
作为 到店顾客,
我要 在手机上选一个时间段提交预约,
为了 不用打电话也能确定我那天有位子。
作为 店员,
我要 在后台看到今天所有预约并标记「已到店」,
为了 不用再翻微信聊天记录核对。「这次不做」清单,比「要做」清单更重要
一个真实案例:有人接了一个门店小程序,客户要求 14 天上线。他做的第一件事不是写代码,而是和客户一起把在线支付、自动打款、复杂排班、会员积分全部划到「这次不做」,只留作品展示、预约、渠道绑定、后台。最后 10 天交付。
AI 写代码很快,但范围是你定的。范围不锁,它会很快地做出一堆你不需要的东西。
第一版必做:
- 顾客:看作品、提交预约、查自己的预约
- 店员:看预约列表、标记已到店
这次不做(写进 CLAUDE.md 让 AI 也知道):
- 在线支付
- 会员积分
- 多门店
- 消息推送动手前,把边界情况问一遍
另一个真实案例:一位不会代码的人用 Claude Code 11 天做出自己的业务管理系统,对账从 2 小时缩到 5 秒。他的秘诀是每个功能开工前先和 AI 聊边界情况:
- 客户微信号输错了能改吗?改了以后历史订单怎么办?
- 一个客户 3 单里 1 单没付款,算不算老客户?
- 订单取消了,还算坏账吗?
这些问题你不答,AI 就替你答,而且你不知道它答了什么。
自测 · 学完检查一下
想真正动手做题、记进度、攒连胜?到互动课里练。
哪一条是合格的用户故事?
答案:作为健身房会员,我要在小程序里看到自己剩余课时,为了不用每次去前台问
第一条有角色、动作、动机三段。第二三条没有角色和动机;第四条形式对但主角是开发者,用户故事的主角永远是用你产品的人。
用户故事的固定句式是:作为 ___,我要 ___,为了 ___。第一个空填的是什么?(填两个字)
答案:角色
第一个空是角色,也就是「谁在用」。同一个功能,顾客和店员两个角色要的完全不一样,所以先定角色。
小婷做一个「家庭菜谱」小程序,第一版只有她和妈妈用。下面哪项最应该进「这次不做」?
答案:用户注册登录和多人权限管理
第一版只有两个人用,登录和权限是为「很多陌生人」准备的,现在做只会拖慢上线。添加、搜索、保存是这个产品成立的最小骨架,必须做。锁范围的判断标准是:没有它,第一版还能不能用。
判断:既然 AI 写代码很快,第一版就该把能想到的功能都做上,反正不费自己的时间。
答案:错
费的不是写代码的时间,是验收、修 bug、和后续每次改动都要照顾这些功能的时间。功能越多,改一处坏三处的概率越高。第一版越小,上线越快,你越早知道用户到底要什么。
做「预约时间段」功能前,下面哪个问题属于必须先想清楚的边界情况?
答案:两个顾客同时抢同一个时间段,谁算成功
边界情况是「正常流程之外会发生的事」:冲突、重复、为空、出错。颜色、文案、字体是外观,改起来随时可以,撞单的规则不先定,上线后就是纠纷。
AI 问你:「待办清单为空的时候,页面显示什么?」你还没想过。最合适的回应是?
答案:当场定下来:显示一行灰字「还没有待办,输入第一条吧」
边界情况的答案必须由你给。「你看着办」意味着它替你决定而你不知道;「不重要」和「不会发生」都是在给上线后埋雷,用户第一次打开页面看到的就是空状态。