“敏捷”這樣講——學會掌控變化

“欣然面對需求變化,即使在開發后期也一樣。為了客戶的競爭優勢,敏捷過程掌控變化。”
敏捷開發過程是一個動態過程,在這一過程中,涉及客戶、開發過程以及開發人員三個因素,這三個因素之間相互影響。我們在第一條原則中提到過用戶故事,產品 Backlog梳理中強調的用戶故事便涉及到了第一個客戶因素,而開發中的迭代過程涉及到了后兩個因素。在變動不可預知的情況下,我們就需要化被動為主動,積極應對產品開發過程中的各種需求變化。以提高客戶的競爭優勢為目的,在變化中尋找解決的方法,尋求雙方統一意見的達成。
有這樣一個案例,某技術產品研發團隊,在產品開發過程中遇到了一系列的問題:
- 團隊對于客戶需求沒有明確把握,產品規劃不明晰;
- 最終產品不符合客戶需求標準,被要求重新開發;
- 團隊不能進行長遠目標規劃和設計要求“,走一步看一步”。
該團隊總結教訓,認為團隊的失誤在于他們沒有抓住研發過程中的需求變化,包括客戶需求變化、研發人員需求變化,以及研發過程需求變化等。因此,他們在此基礎上做出了調整。在產品研發過程中:
首先要明確客戶的產品需求,對客戶的需求進行分析整合,確定團隊的下一步規劃。我們要明確的是,客戶表達的需求并非一成不變的,而作為研發團隊來說,最重要的事情便是與客戶進行溝通、交流。當客戶對產品要求有所改變時,團隊應該將團隊的意見與客戶的需求進行交互,目的是使產出價值最大化。如果沒有將客戶的需求落實,而是一味地追求交付的速度,會大大影響產品的可用性。
其次,技術人員以及開發過程會因客戶需求的改變而改變。這時的變動需要整個開發團隊的密切配合,打破僵化的程序模式。管理層給出大致方向,產品經理不斷更新產品需求,開發團隊中的成員需要主動配合、積極做出貢獻,共同實現開發過程的敏捷化。開發過程的敏捷化主要表現在:團隊協作既密切相連又能獨立運作,迭代過程可以根據需求變化靈活調整。
最后,產品的實現周期是很長的。在開發后期,產品逐漸成型的過程中,這時產生的需求變化是最考驗團隊敏捷化程度的時刻。也就是說,在迭代過程中產生的變更,會影響產品的實現周期。只有身體力行地踐行“敏捷”,能夠在需求出現變動時,及時調整迭代,對產品需求進行計劃,才可以自如地去迎接即將到來的每一個挑戰,才可以滿懷欣喜地去看待開發中的每一個關卡。
既然“計劃趕不上變化”,倒不如靈活適應變化。團隊只有不斷踐行敏捷的價值觀和原則,真正掌控過程中各方的需求變化,才能實現產品價值的最大化。
