user-story-writer 的繁體中文翻譯,英文版本為規範版本。
使用者故事撰寫
這個技能根據功能說明、PRD 的某一部分或口頭描述,產出可以直接使用的使用者故事。每個故事都遵循標準格式:清楚的誰 / 做什麼 / 為什麼,按 Given / When / Then(假如 / 當 / 那麼)格式寫的行為驗收標準、邊界情況和完成定義。產出可以直接貼上到 Jira、Linear 或你的規劃工具中。
所需輸入
如未提供,請向使用者詢問:
- 要拆成故事的功能或改動:貼上說明、PRD 部分,或描述功能
- 涉及的使用者型別 / 角色(例如管理員、終端使用者、訪客、API 呼叫方)
- 範圍:寫一個故事,還是把一個史詩拆成完整的一組故事?
- 驗收標準格式偏好:Given / When / Then、要點清單,還是兩者都要?
- 技術約束或說明:工程團隊提出的、應當影響故事的任何事項
輸出結構
每個故事:
故事:[簡短標題,動詞加名詞,例如"按日期範圍篩選搜尋結果"]
史詩: [所屬史詩名稱,例如"高階搜尋"]
故事編號: [Jira / Linear 編號,還沒建立就留空]
優先順序: [P1 / P2 / P3]
故事點: [留空,由工程團隊估算]
使用者故事
作為 [具體的使用者型別,不要寫"使用者"],
我想要 [他們想採取的具體行動],
以便 [他們得到的結果:業務價值,而不是功能描述]。
示例:
作為客戶經理,
我想要按最近聯絡日期篩選我的客戶列表,
以便快速找出 30 天以上沒有聯絡過的客戶,並優先跟進。
背景
[1 到 3 句使用者故事本身沒有的背景:這個故事什麼時候重要、是什麼觸發了這個需要、它如何融入更大的流程。這能幫助工程師在提問之前就理解為什麼。]
驗收標準
格式:Given / When / Then(假如 / 當 / 那麼)
每條標準只測試一個具體行為。每個可觀察的結果寫一條,而不是整個功能只寫一條。
AC1:[這條標準的簡短名稱]
假如 [初始狀態或背景]
當 [使用者行動]
那麼 [可觀察的系統行為]
AC2:[簡短名稱]
假如 [...]
當 [...]
那麼 [...]
AC3:[簡短名稱]
假如 [...]
當 [...]
那麼 [...]
邊界情況
[列出不明顯但必須處理的場景。它們會成為額外的驗收標準或給工程團隊的說明。]
不在範圍內
[明確寫出這個故事不包括什麼:防止範圍蔓延,並說明下一個故事從哪裡開始。]
- 儲存和分享篩選預設(另一個故事,見 [故事 X])
- 對篩選結果的批次操作
- 把篩選後的客戶列表匯出為 CSV
完成定義
史詩拆解模板
如果使用者提供的是史詩或功能說明,先把它拆成完整的一組故事,再逐個撰寫:
史詩: [名稱]
目標: [完成這個史詩帶來什麼結果?]
故事:
建議的迭代順序: [哪些故事是 MVP 的 P1?哪些可以放到之後的迭代?]
常見的故事反模式及修正
在交給工程團隊之前,用這些來審查故事:
示例:一個功能的完整故事集
功能說明: "允許使用者把發票歷史匯出為 PDF 或 CSV"
故事 1:把發票列表匯出為 CSV
作為財務管理員,
我想要把我的發票歷史匯出為 CSV 檔案,
以便不用手動錄入就能匯入我們的會計軟體。
AC1:匯出成功
假如 我在發票頁面,且至少有一張發票
當 我點選"匯出"並選擇"CSV"
那麼 下載一個 CSV 檔案,包含所有可見發票,列為:發票編號、日期、金額、狀態、客戶名稱
AC2:空狀態
假如 我在發票頁面,且沒有任何發票
當 我點選"匯出"
那麼 匯出按鈕不可用,提示顯示"沒有可匯出的發票"
AC3:篩選後匯出
假如 我已應用日期篩選,只顯示 2026 年 1 月的發票
當 我點選"匯出"並選擇"CSV"
那麼 匯出內容只包含 2026 年 1 月的發票,而不是全部發票
邊界情況:
不在範圍內: PDF 匯出(故事 2)、定時匯出(未來的史詩)
故事 2:把發票列表匯出為 PDF
作為財務管理員,
我想要把我的發票歷史匯出為排版好的 PDF,
以便和會計分享一份專業的彙總。
[……驗收標準按同樣的模式……]
延伸材料
這個技能附帶支援檔案,可用時請使用:
references/acceptance-criteria-craft.md:真正起把關作用的驗收標準。在產出時應用它;它包含上面方法摘要壓縮掉的校準和判斷。
templates/story-card.md:可填寫的成果模板,品質關卡寫在裡面。當使用者想自己完成文件而不是生成時提供。
評分量表(0 到 40)
交付前給這個技能的任何產出打分;32 分以上才算可以交付。
品質檢查
反模式
示例觸發語
- “根據這份說明為 [功能] 寫使用者故事”
- “把這部分 PRD 拆成帶驗收標準的使用者故事”
- “把這些功能需求轉成 Jira 任務”
- “為 [功能名稱] 寫使用者故事和驗收標準”
- “把這個史詩拆成可以進入迭代規劃的獨立故事”