今天去分享 agile 實施的一些經驗, 被問了很多問題. 印象中, 最後一個問題應該是要如何對產品需求清單的內容做出排序.
如果我記錯了, 很抱歉, 年紀大了, 頭腦不太靈光.
這個問題在當下我沒有回答得很好, 因為這真的是一個很難回答的問題. 做錯功能可能就會讓你產品賣不出去, 讓你公司關閉. 可是偏偏這種情況很常發生, 所以不難想像這真的是很難.
這裏有些 agile 對 product backlog item 要排 priority 的想法, 僅供大家參考. 如果大家有更好的做法, 也歡迎分享給我知道.
首先, 在 Scrum Alliance 中, 已經開始不用 prioritize, 而是使用 order 代替. 為什麼呢?
在英文中, 對一個清單進行 prioritize, 是指你要對兩兩項目進行比較(英文對 prioritize 的定義是這樣的), 重要的往上移, 不重要的往下移. 就像 bubble sort 一樣, 最後會得到一個結果. 可是這樣其實你在做局部最佳化, 因為你的比較是兩個兩個比.
可是在做產品時, 你需要看得更廣一點, 你不能只是倆倆比較, 你需要看的是這堆清單 (list) 做出來後, 長期所帶來的利益; 而非這樣項目 (item) 做出來後, 所帶來的利益高不高.
例如, 某些項目做出來後, 在 Q2 可能無法賺很多錢, 但是在 Q4 以後會帶來很多利益. 那這樣的 item 你該說他是高 priority 或是低 priority?
所以, 你或許還是要做事情的順序 (也就是項目要有些順序), 但是更重要的是, 你要考慮這整個清單所帶來的長期價值.
接下來, 另一個決定順序的考量, 就是在排除風險. 所以在開發初期, 我們會試圖以排除以下風險為準則, 來挑選要做的事情:
business risk: 是否這個東西有人要? 我們是否做正確的東西?
social risk: 我們是否找正確的人做這件事?
technical risk: 技術上是否可行?
cost/schedule risk: 時程上是否來得及? 以及成本上是否值得?
更多參考資料可以見這裡:
最後, 要排除風險還有一招, 就是不用真的做出他們, 就可以知道客戶要不要他們. 這樣可以讓你最少代價, 就可以知道大方向. 這時候你就需要 pretotyping 的做法. 這裏有些參考網站, 大家可以去看看:
當然啦, 你還是可以用以前專案管理中學到的招數. 跟 agile 有關的我大概就知道這些了 XDD
全站熱搜
留言列表