發佈時間:1月12,2021
分析是實現更佳敏捷規劃的基礎
分析和數據驅動的敏捷規劃是提升軟體開發品質的關鍵。依靠數據而非直覺,才能達到最大價值。
敏捷規劃敏捷開發本質上快速且適應性強,可以根據需要進行調整。然而,這種旨在實現靈活性的流程也可能受到主觀因素的影響,例如敏捷團隊本身對哪些使用者故事應該優先處理的看法。
敏捷規劃中真正的客觀性只能透過數據和分析來實現。數據能夠真實反映流程中發生的事情以及最終結果。 DevOps 工作就是如此。數據告訴我們哪些功能和故事具有價值,並能帶來價值,例如提升使用者體驗或增加收入。數據是區分可衡量結果和猜測的工具。
如果沒有數據,就無法判斷所做工作是否對使用者產生正面影響,以及是否朝著優先業務目標取得進展。資料缺失甚至可能導致優先順序隨意設定。然而,一旦引入數據,組織內的所有利害關係人——而不僅僅是開發團隊——就可以科學地回答這些關鍵問題:
- 用戶最看重哪些功能?
- 我們如何改進流程?
- 我們是否以高效率的方式創造了最大價值?
數據回饋可以指導決策,消除決策過程中有時存在的隨意性。
以下是一些利用數據分析來改善敏捷規劃並使其朝向產生實際價值的更好結果的例子:
- 確定使用者故事的優先級
- 利用數據回饋指導版本發布計劃
- 評估衝刺表現
- 尋找優化流程的機會
- 迅速調整策略以因應市場不斷變化的需求
- 確定客戶需要的新功能
根據預測的業務結果確定使用者故事的優先級
評估所有回饋至關重要。共同創造的機會不僅能為實現業務目標(例如收入或產品發布)帶來價值,還能從用戶或客戶的被動和主動回饋中獲得價值。
- 被動回饋 包括某些功能的每日活躍使用量和用戶錯誤報告等指標。
- 主動回饋 包括調查、用戶投訴和請求。
利用這些回饋數據,可以客觀地衡量哪些使用者故事最有可能產生最大的影響。例如,結合使用者指標和客戶回饋,可以發現某些平台任務有高延遲,而這些延遲與使用者跳出率密切相關。這為解決延遲問題、降低跳出率和改善客戶體驗提供了機會。
請記住,許多常見的使用者故事優先排序方法都帶有主觀性,例如: 莫斯科 以及 優先撲克此外,許多重大決策都交由產品負責人或敏捷團隊自行決定。雖然他們的出發點可能是好的,但如果缺乏數據支持,決策仍然只是猜測。直覺不能成為 Scrum 領導者的唯一指導,他們希望優先考慮那些能帶來最大收益的使用者故事。內部因素,例如實施時間,也可能導致 Scrum 團隊忽略那些最有價值的使用者故事。
利用來自服務、測試、安全性和維運的數據回饋來指導發布計劃
將其他領域的分析應用於發布計劃等更大規模的發布規劃用例,類似於上述使用者故事優先排序的用例。敏捷開發和 DevOps 團隊需要來自服務、測試、安全和維運部門的數據回饋。收集這些回饋有助於將重要的優先事項提上發布日程。光是追求最誘人的功能是不夠的,你必須有數據來支撐你的選擇。
數據回饋是至關重要的一步。 DevOps. 它的一部分 八字形圖但它卻常常被忽略。開發人員很少會被告知要僅根據營運回饋來調整實踐或優先順序。然而,這種回饋對於在工作的各個階段釋放更大的價值至關重要。數據可以揭示產品的關鍵變更,並能將重要事項推廣到發布計畫中。
例如,有關安全測試漏洞的報告意味著應該努力彌補保護方面的漏洞。
同樣,營運報告也是由以下方式產生的: 衡量變革風險的分析 可以幫助開發團隊了解導致缺陷甚至事故的實踐。開發領導者可以利用所有關鍵記錄系統中的數據,找出並解決可能造成變更風險的特定實踐、團隊、個人或持續整合關聯性問題。
評估衝刺績效和業務成果
許多敏捷團隊都以預期結果為導向,但實際結果卻並非總是被衡量。績效評估應該是反思性的,而不是懲罰表現不佳的手段。團隊可以問:“哪些方面做得好?”和“哪些方面可以改進?”,而不僅僅是問:“哪些方面做得不好?”
評估工具的一個很好的例子是… 燃盡圖此圖表展示了基於工作里程碑的衝刺階段工作進度。這些短小的工作模組包含需要在衝刺階段完成的具體目標,每個里程碑的完成時間都以可視化的方式呈現,時間越短,圖表中的「步驟」就越短。
一般來說,你可以根據目標是否達成來查看最終的迭代結果,並判斷其表現好壞。但仔細分析燃盡圖會發現更複雜的情況。提前完成迭代意味著里程碑之間的工作量可以增加,而錯過截止日期可能意味著承擔了過多的工作。燃盡圖中陡峭的階梯可能意味著工作沒有被充分分解。這些數據具有實際意義,可以幫助你規劃出更有效率的迭代。
團隊目標也是成功的關鍵。自主團隊不僅能提高生產力,還能提升員工的敬業度。
作為一個 麥肯錫公司 文章指出,“成功的敏捷組織在設定目標和評估績效時,會注重團隊績效,通常允許團隊自行定義目標,以增強團隊的責任感。”
仔細檢視流程,尋找優化機會。
組織需要能夠了解工作流程,以及價值在各個工作流程階段的流動。對價值流視覺化的分析將揭示改進流程的機會。
例如,可以透過比較整體交付週期/週期時間與在特定階段所花費的時間來實現能力評估。 DevOps確定流程時間可以識別出工作流程中未完成、等待審批或團隊交接期間處於停滯狀態的階段。可以提出以下一些問題:
- 我們如何消除這些「盲點」?
- 團隊可以事先獲得批准嗎?
- 我們能否制定更標準化的變更方案?
- 我們能否重組團隊,例如在敏捷開發團隊中加入一名安全顧問,以避免單獨聘請顧問?
企業不僅會改進產品,還會發現那些習以為常的流程也可以透過迭代的方式來優化。數據可以揭示其他領域的瓶頸,無論是工具、流程或人員。識別這些瓶頸也是一個契機,可以找出繁瑣的手動步驟和流程,並將其自動化,從而提高敏捷性和效率。
將敏捷規劃帶入數據時代
敏捷是一種高效率的思考方式,但它往往受制於任意或主觀因素。軟體開發需要數據驅動,而不是基於直覺或判斷。
例如,使用非數據驅動的方法來確定使用者故事的優先順序。這些方法通常來自產品經理或產品負責人基於他們對市場和客戶的了解所做的判斷,顯然帶有主觀性。
將數據融入流程不僅意味著開發出更好的產品,還能幫助團隊減少不必要的工作。數據可以增強責任感和主人翁意識。擁有自助式分析存取權限的團隊可以自主運作,設定目標、改善流程並追求更高的績效。
敏捷本身需要敏捷性。而只有數據才能帶來敏捷性。否則,敏捷就好比蒙著眼睛丟飛鏢,希望能夠擊中靶心。
了解為什麼僅在團隊層面使用敏捷方法可能會阻礙組織發展,以及您可以採取哪些措施來提高效率和可擴展性,請閱讀我們的電子書:“團隊層面敏捷不足以應付的 8 個原因“。