爲什麼軟件交付要快?因爲要有贏的感覺!

 團隊和個人需要很快和持續有打勝仗的感覺。

01

團隊需要激情

從去年開始,我們公司設立了“天使基金”。個人和團隊可以自由發揮,提交點子申請“天使基金”資助,點子經評選後並可搭建團隊把它做成產品。這也是公司激發大家創新的機制之一。

突如其來的疫情,讓“天使基金”孵化的產品及時立功。

春節後,由於各種不確定性,公司需要及時把各種最新的安排通知到每一個員工,也需要掌握員工的健康情況。由於數據安全的原因,我們還沒有使用企業微信或釘釘。

一個團隊用10天的時間做了一個微信小程序,完全滿足了當時的需要,而且界面做得很用心,用戶體驗非常好。期間不斷迭代,爲復工提供了很好的信息保障。產品得到其他分公司認可,迅速推廣到國內其他分公司使用,在集團內成就了一個很好的“中國故事”。

另一個團隊開發的產品可以自動監測復工後回辦公室上班的員工(目前我們大部分同事還在在家辦公)的具體座位,幫助公司有效地掌握了有多少同事回辦公室上班滿足報備需要,總數是否有超過政府規定的上限,以及同事是否按要求保持座位距離。這也是一個概念驗證只用了幾天,從0到1只經歷了三個月的過程。

作爲一家全球金融企業,我們絕大多數項目的交付週期都是數以年計。一個軟件系統,拋開開發時間,光是生產服務器走上線審批的流程都要起碼6個月時間。

在這麼長的週期裏面,你是很難獲得激情的,完成了也沒成功感。遊戲之所以使人興奮,就是因爲玩家能頻繁得到反饋和回報,哪怕每次分量不大。年終獎給人的興奮有限,就是因爲週期太長。

同理,10天、三個月上線一個產品,並且隨後可以頻繁迭代,就能很快並持續給人“打勝仗”的感覺,這種贏的感覺對於激發和維持團隊和個人的激情非常重要。這也是一種重要的激勵。

而且,快速交付意味着很快得到反饋,正面的反饋使人興奮,負面的反饋能幫助我們及時調整或放棄數以年計的項目大概率都是一個挖坑的過程因爲缺乏及時、有效的反饋,摸黑前行。

02

怎樣才能快

那麼怎樣才能快起來呢?有人說敏捷開發就是犧牲質量的快速開發。其實非也。敏捷與DevOps的快,是通過定義最小可用產品(MVP),快速交付MVP,獲取用戶對MVP的反饋,及時調整產品,並通過持續交付迭代的過程。先完成,再完美。是一個螺旋式的產品演進過程。

大而全的需求往往是萬惡之本,也是項目交付週期長的根本原因,所以要從需求下手。定義MVP,就是要拆解需求和項目目標成各個階段性目標,並約定能滿足階段性目標的最小需求。當然,MVP雖不完美,但必須是完整的、端到端的、可上線的

如果是迭代開發,每個迭代都必須要有具體、明確的階段性業務目標,而且有預期的產出

如果是一個原計劃數以年計的項目,就要思考半年內能交付什麼,甚至一個月內能交付什麼。有些時候,客戶、用戶不接受MVP的想法,我們可以通過把資源、時間作爲限定條件做這種極限思考。

我相信疫情一定讓所有公司、團隊都做出過平時沒有嘗試過的改變和妥協,這就是極端條件對思想、能動性的激發。 

03

一個實例

兩年前,我負責公司一個新業務的系統建設,一個從0到1的過程。由於該業務是一個成熟業務,有現成的供應商系統,業務部門決定採購該系統。我們主要負責系統採購、架構設計、搭建服務器、部署、測試和上線。

由於業務部門想在國內開放該業務的時候能先拔頭籌,他們希望能在半年內上線該系統。而按照我們的經驗,要完成前面提到的這些過程,起碼需要9個月到一年的時間。

而且,該供應商系統滿足國內的業務需求和監管要求都沒有問題,但是也要滿足我們集團作爲全球金融機構的各種全球要求,包括業務方面的合規要求和IT方面的架構設計、災備處理、系統安全等要求,衍生出大量整改需求,交付時間肯定會被拉長。

由於該業務比較成熟,市場上肯定會出現同質化競爭,如果我們僅提供核心服務,肯定沒有什麼競爭力。所以,業務部門還要想方設法爲客戶提供更多的增值服務。最終,我們除了採購了2個核心繫統外,還採購了3個增值系統。這也大大增加了項目、業務流程、系統和架構的複雜性。

簡單來說,要在半年內完成系統上線,是Mission Impossible。

通過和業務部門協商,發現要開展該業務,需要申請牌照。業務部門着急的,是想盡快提交牌照申請的材料,這樣牌照申請和系統實施可以同步進行,一旦牌照下來了,我們便可以招攬客戶和開張。

而其中一個申請材料是我們要和監管機構進行聯測,並由監管機構出具聯測報告。通過進一步瞭解,該聯測並不要求在生產環境上進行,而且只涉及到核心系統。

因此,要滿足牌照申請的要求,我們只需要把核心系統部署到測試服務器就可以了,這樣不受系統上線流程的限制,可以快速實現。我們也以此設定了首個階段性目標。並在三個月內達成了目標。

基於這樣的思路,我們把整個項目拆解成了若干個階段性目標,並通過持續交付,避免了項目陷入數以年計“憋大招”的狀態。

04

總結

曾經在Facebook擔任過產品經理的馬丁內斯在他的書《混亂的猴子》裏提到,所有的創新,都會變成平庸。因爲一旦一個創新的產品成功了,就會多人使用,一旦多人使用,產品的穩定性就顯得更重要,產品的更新和維護就會變成平庸的開發和運維工作。在Facebook也不例外。

所以,即使進入阿里、騰訊這樣的以創新標籤的公司,大機率都是從事很平庸的工作。也就是說靠創新來維持團隊和個人的激情,是不現實的。

快速交付產品,除了讓公司和團隊搶佔先機外,也能讓團隊和個人更快地獲得贏的感覺,激發和維持激情,也能更快地獲得產品反饋。

而快速交付,就是要通過MVP+持續交付,實現產品螺旋式演進過程。避免通過憋大招的方式反而給客戶、用戶和自己挖了個深坑。

近期必讀:

大柱山隧道12年14公里對項目交付的啓示 劉華說軟件第1期

做PO難,難於上青天

爲什麼軟件開發很難外包

關於作者


劉華(Kenneth)

  • 就職於世界500強銀行,負責基金服務業務軟件開發與交付

  • 敏捷、精益、DevOps專家

  • 精通極限編程、Scrum、看板方法、測試驅動開發、持續集成、行爲驅動開發、DevOps工具棧

  • 曾在GDevOps、DevOpsDays Meetup、中國軟件技術大會、ArchSummit等論壇發表主題演講

  • 著有《獵豹行動:硝煙中的敏捷轉型之旅》一書

小說體敏捷/DevOps轉型教科書

和實戰經驗分享

購書指南


紙質書、電子書在京東噹噹亞馬遜、微信讀書等渠道已全面上架,搜索關鍵字“獵豹 敏捷”即可找到。點擊閱讀原文可直接購書。

有聲書已登錄喜馬拉雅、微信讀書,適合路上聽書的你。

關注公衆號看其他原創作品

敏於思 捷於行 

堅持每週輸出一篇高質量文章

覺得好看,點個“在看”或轉發給朋友們,歡迎你留言

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章