華為敏捷專案管理實踐分享
當前,企業面對的商業環境瞬息萬變,移動、社交、物聯網、雲端計算、大資料、AI等蓬勃發展。新技術突飛猛進的同時,新業務形態越來越複雜、需求變化越來越快、軟體規模越來越大、交付週期越來越短、開發和維護成本越來越高,產品交付的風險急劇增加,傳統研發模式無法適應快速變化的市場需求。
為了應對這些挑戰,業界軟體開發模式經歷了持續的改進和變遷,從20世紀60年代作坊式開發,到80年代過程控制模型,到2001年敏捷、DevOps模式探索。
近30年來,華為的研發模式也在不斷變遷、最佳化,從90年代初游擊隊式開發,到2000年引入IPD-CMMI,轉變為集團軍作戰模式,到2008年經過敏捷思潮的洗禮,開啟了“班長的戰爭”這一全新模式,形成了 “敏捷+ DevOps”相融合的、獨特的華為敏捷研發模式。
透過這種獨特的敏捷模式,擁有8萬華為研發人員的研發體系,像大象一樣翩然起舞,行走在時代的前沿,在電信運營商、企業、終端和雲端計算等領域構築了行業領先的解決方案優勢。研發的產品,被銷售、部署到全球170多個國家和地區,服務於全世界1/3以上的人口,支撐了2016年同比增長30+%、達5000多億元的銷售額。
一、敏捷、 DevOps方法論介紹
敏捷開發模式,遵循萬物生長的客觀規律,透過不斷迭代的增量式開發,確保可執行的軟體逐步生長壯大,並儘早獲得客戶的反饋,及時開展最佳化。
DevOps理念是在開發流程和組織結構上,打破部門牆。透過端到端全自動化的持續交付流水線工具鏈,將市場、開發、運維等環節高度協同起來,並不斷提升Ops環節的自動化能力,解放人力,聚焦於業務開發實現上。
附帶說明下微服務理念是將龐大的、緊密的系統,解構為鬆散的、可獨立開發、構建、部署、執行的眾多微服務,各個微服務之間充分解耦,各個微服務也可自行選擇技術棧。這將更有利於促成敏捷實踐的落地和成功。
二、華為敏捷專案管理實踐
華為敏捷專案管理,融合了敏捷、DevOps思想,不僅僅是開發階段的敏捷,而是打通市場、交付、運維、運營的端到端敏捷。在實踐中透過運維自動化,將Scrum敏捷團隊開發的產品快速上線,並透過及時的運營,反饋給敏捷團隊進行方向調整。
華為敏捷專案管理流程如下:敏捷開發流程可劃分為準備、計劃、開發、反饋四個階段。
1、準備階段
➤按照模組/服務組建全功能團隊,團隊包括PD(產品經理)、Scrum Master、UE(UCD工程師、美工/視覺)、SE(系統工程師)、開發、測試、運維、運營。每一個團隊人數控制在6-12人。這需要配合系統解耦,模組足夠小,或者採用微服務架構。
➤選擇合適的敏捷專案管理工具。軟體開發雲團隊採用DevCloud on DevCloud的開發自用模式,可建立Scrum流程專案或精簡流程專案(精簡流程專案是比敏捷模式更簡潔的模式,適合小、微團隊和個體開發者)。
2、計劃階段
PD是本階段的核心角色。需求從線上反饋、線下訪談、友商分析、頭腦風暴等渠道進入產品Backlog後,需求優先順序由PD實時重新整理、定期評審,確保“做正確的事”:
➤ PD對產品Backlog中Epic和Feature進行優先順序分層排序,選擇優先順序高的特性確定釋出計劃。
➤ 在每個Spring啟動前,按照優先順序排序的Story制定迭代計劃。
3、開發階段
Scrum Master是本階段的核心角色,需保證整個團隊高質高效“正確的做事”:
➤基於迭代故事牆(看板),各個全功能團隊開展每日站立會議,將進展和求助錄入Story討論區,早會討論內容透過站內訊息和郵件等實時通知責任人。
➤開發人員提交程式碼時,發起同行評審。之後由Scrum Master進行程式碼稽核,確認沒有問題後合入版本主幹。
➤ 每天定時執行自動化靜態程式碼檢查任務,檢查編碼安全(如未授信訪問)、編碼問題(如空指標引用)、圈複雜度、重複率、程式設計風格,問題清零才允許構建出包。
➤透過雲端自動化的持續交付流水線,實現持續構建、持續部署(包括指令碼自動下發、比對)、持續測試(功能、介面、效能、可靠性等實現100%自動化)、持續釋出、持續監控,可將Ops端手工操作的時間縮短到20%內,全功能團隊可以聚焦於業務交付上,顯著提升效率和產品質量。
程式碼提交時按照規範備註Story ID,即可將程式碼關聯到對應需求上。建立測試用例和缺陷時,也需關聯需求,這樣就實現了“需求-程式碼-用例-缺陷”的雙向追溯。
4、反饋階段
反饋階段主要開展驗收和回顧活動。
➤召開ShowCase會議,由PD進行驗收,確保產品功能與需求一致。
➤轉測試迴歸不透過問題,需由Scrum Master輔導問題責任人進行回溯,並召開整個團隊的質量回溯會議。會議重點在於分析問題根因,並識別出管理、流程、技術、工具上可落地的改進點。這些改進點每一個都必須符合Smart原則,是可落地、可執行的,不能出現大話空話套話。而且這
些問題都要求最晚在下一個迭代中,執行落地,以避免問題再次出現。
➤透過迭代需求統計報表和燃盡圖,檢視需求交付進展。
➤迭代遺留缺陷報告呈現每個模組/服務質量情況,並設定質量門禁。單服務遺留嚴重及以上級別問題,或者總遺留DI值(遺留缺陷密度)>x分,則服務質量不達標,不允許釋出。
重點提一下質量回溯會議,對應于敏捷迭代回顧會議,是華為持續改進的實踐瑰寶。其要義是塑造整個團隊對事不對人、勇於直面問題、只要有方法有措施下次改進不再重犯錯的“從泥坑裡爬起來就是聖人”的文化氛圍。
總結:
華為一貫堅持以客戶為中心,交付“剛剛好”的系統。
剛剛好的系統,不是“滿足於及格標準”,而是根據需求優先順序,開展資源分配、組織變革和需求交付,去交付當前階段使用者最緊急的需求,而絕不浪費一槍一彈去做使用者實際不需要的多餘特性,這樣可以確保所有資源都用在滿足客戶真實的需求上,最大程度保障產品質量和效率。
敏捷是一種文化,華為的敏捷實踐,融入了華為獨特的文化基因。每一個團隊都有自己的特質,可以根據實際情況選擇適合自己的敏捷流程和實踐,就能夠達到高質高效開發的光明彼岸。
華為軟體開發雲(DevCloud)是集華為研發實踐、前沿研發理念、先進研發工具為一體的研發雲平臺,為開發者提供研發工具雲服務,讓軟體開發簡單高效。(來源:華為雲城市產業雲解決方案)
合理並且有效地運用專案管理工具,不僅可以讓我們工作井然有序地進行,還能最大程度保證專案目標的達成。
CORNERSTONE
提供了包括任務/需求/測試管理、迭代規劃、缺陷追蹤、報表統計、團隊協作、WIKI、共享檔案和日曆等功能模組,現在申請20人以下團隊即可免費使用。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69933591/viewspace-2688464/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 用了敏捷實踐就是敏捷專案嗎?敏捷
- 敏捷思維-專案實踐敏捷
- 敏捷專案管理?敏捷專案管理
- Choerodon豬齒魚團隊敏捷專案管理實踐應用敏捷專案管理
- 傳統專案管理VS敏捷專案管理專案管理敏捷
- 敏捷專案管理到底怎麼實施?敏捷專案管理
- Android元件化實踐專案分享Android元件化
- 在小型專案中實行專案管理最佳實踐專案管理
- 敏捷專案管理,POLYV來支招敏捷專案管理
- 什麼是敏捷專案管理?敏捷專案管理
- 敏捷專案管理方式---Scrum敏捷專案管理Scrum
- 專案管理培訓實踐心得專案管理
- 軟體專案管理實踐(#0)專案管理
- 華為敏捷DevOps實踐:如何從Excle管理軟體的方式中走出來敏捷dev
- Choerodon豬齒魚敏捷管理實踐(三):敏捷會議敏捷
- 巴久靈 x Leangoo敏捷實踐案例分享Go敏捷
- Vue專案全域性配置微信分享實踐Vue
- Leangoo敏捷專案管理工具Go敏捷專案管理
- 敏捷開發專案管理軟體敏捷專案管理
- 敏捷專案管理工具大全敏捷專案管理
- IT專案管理-敏捷和傳統薦專案管理敏捷
- 華為敏捷/DevOps實踐:如何開好站立會議敏捷dev
- 華為敏捷DevOps實踐:如何開好站立會議敏捷dev
- 執行專案管理的最佳實踐專案管理
- 專案管理基礎與實踐(4)專案管理
- 專案管理基礎與實踐(5)專案管理
- 專案管理基礎與實踐(3)專案管理
- 專案管理基礎與實踐(2)專案管理
- 專案管理基礎與實踐(1)專案管理
- 專案管理最佳實踐,企業如何進行有效的專案管理專案管理
- 敏捷實踐經驗分享,企業如何在敏捷開發中實施DoD敏捷
- 【敏捷轉型,效能提升】萬字長文敏捷轉型實踐系列分享敏捷
- 中國敏捷十年實踐者分享:敏捷教練的自我修為敏捷
- 打破開發專案管理困境!聯電的數字化轉型實踐分享專案管理
- 軟體專案管理 8.3.敏捷專案質量活動專案管理敏捷
- Choerodon豬齒魚敏捷管理實踐(二)——衝刺管理敏捷
- 一圖勝萬言!敏捷專案管理敏捷專案管理
- 專案經理如何管理敏捷團隊敏捷