跳轉至內容

敏捷軟體工程速查表/敏捷需求 - 使用者故事及更高階內容

來自 Wikibooks,開放世界中的開放書籍

使用者故事速查表

使用者故事定義

[編輯 | 編輯原始碼]

使用者故事代表著對使用者或客戶有益的小部分需求。

故事可以這樣定義:

  • 卡片:作為一個使用者,我想要功能,以便於利益
  • 對話:捕捉與故事實現相關的細節,例如我們正在進行的權衡
  • 確認:(又稱驗收標準) - 我將檢查什麼以確保故事已完成

一個好的故事應該是

  • 獨立的... 其他故事,因此它可以僅根據價值、成本和風險進行優先順序排序
  • 可協商的... 因此團隊和產品負責人可以討論權衡
  • 有價值的... 對使用者來說,因此價值可以成為優先順序排序的主要考慮因素,並且我們明確知道我們為什麼要這樣做
  • 可估算的... 因此我們可以更好地評估投資回報率、計劃和預測,並確保我們真正理解它。可能需要一個峰值來估計一個故事,因為技術挑戰或知識不足導致了很高的不確定性
  • 小的... 因此它可以快速流過我們的管道,儘可能減少意外,並且可以以正確的解析度進行詳細說明和討論
  • 可測試的... 因此我們有一個很好的方法來知道何時完成

有價值的故事

[編輯 | 編輯原始碼]

使用者故事可以提供價值的不同方法

  1. 使用者價值 - 最佳價值 - 使用者故事從使用者的角度提高了我們產品的價值
  2. 來自使用者的反饋(例如,向用戶演示或展示模型)
  3. 來自 PM 的反饋
  4. 消除技術上的不確定性
  5. 消除進度上的不確定性 - 完成這個故事使我們更接近我們的目標
  6. 使我們能夠更快地交付(例如,重構資料庫模式,投資於持續整合...) - 這是最糟糕的價值型別,因為使用者更願意不為此付費,並且無法提供相對於其他使用者故事的優先順序指示。這些實際上不是使用者故事,而是工程工作項,最好與使用者故事一起連續處理,但是當它們積累並需要管理時,團隊的一部分注意力和精力將需要分配給這些型別的專案

超越使用者故事:史詩、主題、MMFs

[編輯 | 編輯原始碼]

雖然故事是需求的基本單位,但通常需要更高級別的檢視,並且可能包括

  • 主題(故事的廣泛類別,例如貨幣化、移動、SEO...)
  • 史詩 - 代表特性級專案的較大型故事,分解成多個使用者故事
  • MMFs - 最小可行特性,代表史詩中可以釋出並向用戶營銷的最小故事集。這種級別的需求通常在企業級別進行管理和視覺化,類似於交付團隊管理使用者故事的方式。請注意,MMF 可能包括史詩,反之亦然。

產品的第一個 MMF 是 MVP - 最小可行產品

最小可行特性 (MMF) 通常包含多個使用者故事。使用者故事可以在團隊級別跟蹤,而 MMF 在企業/業務線/產品線級別跟蹤。
相關的使用者故事可以捆綁到主題中。最小可行特性代表可以獨立營銷的最小使用者故事集

待辦事項

[編輯 | 編輯原始碼]

故事儲存在一個單一的、優先排序的待辦事項中,它代表著我們很快可能開始處理的使用者故事。隨著我們更接近處理這些故事,我們對其進行梳理,將其分解並完善,以便交付團隊可以將其拉入。

故事梳理

[編輯 | 編輯原始碼]

故事梳理是將故事準備到可以由交付團隊處理的程度的過程。這是持續進行的,這樣故事就能及時定義,並且我們不會陷入團隊沒有足夠工作的情況。團隊通常每週安排兩次一小時的會議來梳理故事。產品負責人、開發人員、測試人員、使用者體驗設計師、資料庫管理員... 都會參與故事梳理。

完成定義 - DoD

[編輯 | 編輯原始碼]

代表著團隊在每個故事被認為“已完成”之前承諾要為其做的事情。它應該包含團隊所能合理做的事情,並會最大程度地減少對已完成但尚未準備好釋出的專案的浪費。

完成定義示例

  • 所有驗收標準都透過
  • 檢入主分支
  • 根據測試計劃進行測試
  • 向 PM 演示
  • 提高單元測試覆蓋率
  • 程式碼審查 + 實現所有識別出的必要更改
  • 所有錯誤已修復並驗證
  • 新增到釋出說明

這應該由團隊建立、使用和維護,並且是特定於團隊的。

人物角色

[編輯 | 編輯原始碼]

人物角色是虛構的角色,用於代表目標人群中可能以類似方式使用網站、品牌或產品的不同使用者型別、態度和/或行為集。在定義故事時使用人物角色可以幫助團隊專注於特定使用者的需求,而不是開發對所有人都不太好的通用功能。它們還有助於我們將注意力集中在使用者的子集上,這樣我們就可以更早地獲得反饋並逐步開發產品。

垂直切片

[編輯 | 編輯原始碼]

理想情況下,使用者故事代表著穿過產品所有必要架構層的薄切片。這樣,我們就可以獲得端到端的反饋,並更有可能獲得真正的價值。

準備定義 - DoR

[編輯 | 編輯原始碼]

團隊通常使用一個清單,它代表著我們在將故事拉入管道之前通常想要考慮的事情。DoR 可以包括以下內容:

  • 效能
  • 可擴充套件性
  • 可支援性(日誌條目、監控和故障排除)
  • 部署(升級和回滾、對 的任何更改)
  • 相容性(與其他系統和服務的向後和向前相容性)
  • 對其他系統/團隊的依賴關係

雖然並非所有專案都適用於所有故事,但這些是我們開始著手創作故事之前需要問自己的問題,以便最大程度地減少遺漏故事重要方面的可能性。

故事有時會被分解成任務,由交付團隊的各個成員執行。任務通常很小(不到半天)。分解成任務通常會暴露一些關於使用者故事需求和設計的問題。

分解故事的可能方法

[編輯 | 編輯原始碼]

您可以使用以下模式來分解故事

  • 將工作流程/順序分解成單個步驟
  • 先簡單後複雜(UI、邏輯、格式……)
  • 先手動後自動
  • 推遲效能和可擴充套件性
  • 資料的子集
  • 請參閱連結以獲取有關模式的更多資訊
  • 將史詩分解成使用者故事的技術
  • 這些技術包括故事對映和價值流分析等等。
  • 故事對映 - 這種技術最適合包含工作流程的史詩。構成史詩的各種活動以線性順序排列,並細化為使用者故事,並按重要性列出。

影響對映

[編輯 | 編輯原始碼]

另一種在深入到單個流程級別之前,可以很好地用於大局的技術是影響對映,其目標是分解成參與者/利益相關者,然後是怎樣,最後是怎樣。一個高度簡化的例子可能看起來像這樣

更多資訊

[編輯 | 編輯原始碼]
華夏公益教科書