本文為 CODING 協同產品總監張路宇 在騰訊云 CIF 工程效能峰會上所做的分享,文末可前往峰會官網,觀看回放并下載 PPT,
歡迎各位朋友,來到騰訊云 CIF 工程效能峰會的分論壇,我是 CODING 的產品經理路宇,很高興能以這種方式與大家見面,在接下來的主題環節中,會由我先為大家帶來 CODING DevOps 研發平臺的產品理念和全景解讀,我們還邀請了幾位今年下半年的新產品負責人給大家帶來關于專案協同、WePack、以及全新產品持續部署 Oribt 和研發流程管理 Compass 的分享(講稿已在陸續發出),
我加入 CODING 已經三年了,此前有近十年的研發管理經歷,我同時是一個不折不扣的效率工具愛好者,過去幾年里我看到了本土研發團隊、業界,以及 CODING 產品對研發工具理念理解的三個階段性變化:從工具、到工具箱、再到軟體工廠,
工具、工具箱到軟體工廠
西方經典管理理論認為,組織效率可以歸為勞動效率、組織效率和人的效率,美國管理學家泰勒所著的《科學管理原理》被德魯克譽為“20世紀最偉大的發明”,勞動效率說認為分工提升生產效率,福特的流水線就是分工和工業化的典型代表,經濟學家亞當斯密在《國富論》描述了螺絲制造的十八道工序,分別由十八個專門的工人負責完成,以馬克思·韋伯為代表的組織理論家認為,有效的劃分崗位,形成官僚組織結構能夠釋放效率,合理、合法的權利是促進組織達到自身目標的必要條件,組織效率最大化的手段是專業化水平與等級制度的結合,用我們今天的話說,就是讓不同專業能力的人匹配適合的崗位,瑪麗·芙麗特則提出了「以人為本」的人力資源管理理論,更加關注人的心理,管理中需要平衡員工需求與組織發展的目標,
現代數字化、平臺化企業強調創新和協同,在經典管理理論的基礎上又提出了新的挑戰,僅僅分工已經不能滿足市場的需要,我們發現:
1.強個體的價值崛起,最有價值的創新是由企業內少部分人完成的;
2.影響組織績效的因素由內部轉向外部,所有員工都需要關注交付內容的價值和客戶需要,效能 = 價值 X 效率,如果價值為 0,再高的效率也于事無補;
3.由于需求多樣化和快速變化,駕馭不確定性成為組織的核心挑戰,不確定性是一把雙刃劍,能夠把握不確定性便是專注了企業發展的機會,
以上,是我們認為的數字化協同的理論根基,管理邏輯正在從分工走向協同,好的工具需要遵循經典的分工理論,但更加需要注重數字經濟時代的協同需求,
我們提出這樣一個問題 —— 軟體研發還是數字化協同的領軍行業嗎?我找了這樣一張 DevOps 2021 年的生態地圖,如下圖所示,像這樣的圖片想必大家近年來看到了許多,圍繞代碼的構建、測驗、部署、運行環境、監控、專案管理以及資訊流等等的工具層出不窮,這反映了我們所處的技識訓境正在快速變化,軟體從業人員的確越來越善于使用工具,

你的團隊可能在用 Jira 進行專案管理,用 Gitlab 管理代碼,用 Jenkins 實作持續集成,用 JFrog 管理制品……但是,一個研發團隊需要使用如此多的工具,作為技術決策者在選擇時面臨不少的壓力,從學習、部署再到應用,成本經不起計算,一位新同事入職,需要開上七八個賬號,數字資產的管理面臨潛在風險,
更重要的是,我們認為在這種工具集形態下,沒有給開發者和管理者提供一個真正有效、柔性邊界協同的環境,
顯然,相比一些高集成度的數字化行業,甚至傳統行業,我們不能自信的說我們正保持領先,技術決策者們剛剛走出工具時代,正停留在工具箱時代,迫切的需要一個新形態的協同環境迎接挑戰,因此,CODING 提出了數字化軟體工廠的概念,這也恰好符合 CODING 產品的演進路線,
2014 年,CODING 率先推出基于 Git 的代碼托管服務工具,成為國內領先的代碼托管服務平臺,也是在此時提出了「云端開發,讓開發更簡單」的理念,2018 年,我們推出專案協同、持續集成、Cloud Studio 等產品,形成了一系列的必備研發工具,這些工具經過時間的打磨已經達到了國內較領先水平,去年,CODING 首批獲得了信通院 DevOps “卓越級”認證,這也是國內最高級別的 DevOps 工具體系認證,今年,我們提出戰略升級,結合現代軟體工程實踐和先進理念,推出研發度量、研發流程管理 Compass 等產品,打造有開放生態能力的數字化軟體研發作業流,
“要充分發揮勤勉認真的技術人員的技能,建立一個自由豁達、輕松愉快的理想工廠,”——這是索尼公司已故創始人,井深大先生在公司成立之初寫在《成立宣言》中的一句話,我個人非常喜歡這句話,并以它為團隊管理和產品設計的信念愿景,
作為軟體企業,需要站在現代軟體工程理論之上和技術前沿之上,沒有工程師可以脫離技術談效率,同時,管理效率不僅僅來自于分工,更來自于協同,我們對先進研發管理工具有三點基本理念:
1.注重協同效應,1+1 > 2,每個人都能獲得交付價值所需的資訊背景關系環境,讓團隊中強個體能夠更強;
2.超越流程,基于卓越工程實踐,既要打造優秀的單點工具,也要緊緊圍繞云原生、DevOps 等技術理念,讓每一個研發團隊以更短的路徑運用卓越團隊的工程理念;
3.一致性、沉浸式的融合體驗,緊密的集成用戶界面和資料,為每個開發者創造能保持專注的線上作業環境,

一站式 DevOps 平臺解讀
接下來我將為大家介紹 CODING DevOps 一站式全景,下圖體現了 CODING 的主要能力分布,從能力維度上,我們可以將其劃分為專案協同、流水線、測驗管理、制品管理、持續部署、知識管理、研發流程管理、PMO Office 及團隊管理幾大模塊,

為了便于理解,我們可以將其中幾大模塊對應一些朋友熟悉的 Jira、Jenkins 等,基本覆寫了成熟軟體工程實踐中的全部所需,我們可以從專案管理、工程管理和團隊管理三個視角對它進行解讀,在 CODING 中,「專案」是基本的協作容器單位,它可以泛指一個有生命周期的工程,也可以代表一個固定作業方式的專案團隊,當需求進入需求池后,研發團隊可以使用以 Scrum 為代表的敏捷模型,也可以使用偏向計劃驅動的經典瀑布模型,史詩代表可以橫跨迭代的大粒度需求,需求、任務、缺陷等是基本事項分解單位,CODING 包括了一個成熟的代碼倉庫服務,需求和代碼提交、分支之間能夠進行關聯,
運用全新的研發流程管理產品 Compass,研發負責人可以對專案的作業流進行約束和自動化配置,例如需求變更狀態時,檢查對應的代碼分支是否通過了自動化測驗,開發者提交代碼時需要遵循代碼分支的命名規則等,
從工程管理視角看,CODING 涵蓋了一套健壯的可視化流水線能力,包含持續集成、制品管理、持續部署等,持續集成的目的是實作更快的發布頻次,運用「測驗左移」的理念,結合代碼掃描和自動化測驗的能力,研發團隊可以實作每天幾十次的可靠集成與發布,集成所產生的編譯結果將被納入到制品管理之中,便于版本索引和加速測驗和發布程序,制品掃描功能可以在不訪問源代碼的情況下,通過掃描二進制組件及其元資料,找尋組件中存在的漏洞,
持續部署能以自動化方式,頻繁而且持續性的將軟體部署到生產環境,使軟體產品能夠快速的交付使用,持續部署模塊中,涵蓋了測驗、生產環境的發布目標環境資訊,根據發布計劃,可以應用藍綠發布、金絲雀發布等多種發布策略推送制品至線上環境,到這里,工程實作了從需求到發布的 DevOps 完整倍訓,全環節的價值流、代碼流、制品流背景關系在 CODING 平臺中清晰、透明,
缺乏對人力資源的管理是過去散裝研發管理工具的弊端,為了適應不同規模研發團隊的管理需要,結合本土研發團隊的管理特點,CODING 在跨團隊、跨專案的橫向側提供了一系列團隊管理工具,深度發揮了一站式產品高資料集成度的優勢,
同時 CODING 包含了一個全新的「知識管理」模塊,知識空間可以掛載在專案之下或單獨使用,可以使用 Markdown 或富文本的形式撰寫和組織產品檔案,基于塊集元素的檔案結構可以讓團隊成員在檔案中自由嵌入例如需求卡片、思維導圖、表格等多種內容結構,
通過「團隊目標」功能,可以在組織層運用 OKR 管理方法,CODING 中可設定公司級、部門級與個人級的目標視圖,關鍵結果可與需求進行關聯實作執行分解和跟蹤,如果團隊成員都能夠通過目標管理機制,從「要我做」轉變為「我要做」,毫無疑問這將會是一個充滿機動性與高效能的團隊,
團隊視角的管理是今天更多成熟組織關心的產品能力,CODING 在平臺層已經涵蓋了組織架構管理、集中權限管理等等,我們期待能夠吸納和傳遞更多卓越團隊的管理實踐,在稍后的環節里,我也將為大家介紹今天發布的兩款新的團隊級管理工具:研發度量和作業負載,
平臺為人服務
話說回來,我們相信工具和平臺是以人為本,為人服務的,工程師的極客精神和慣性信念是「自己動手,豐衣足食」,技術決策者也面臨自建工具,和公有云平臺之間的選擇,那么為什么 SaaS 平臺好于自建工具呢?我在這里打一個比方,自建工具與云上平臺的關系,好比寵物與牲畜的關系,寵物,例如貓、狗,是嬌貴的,需要持續付出成本與精力細心養護,人為寵物提供關愛與服務,以換取情緒價值;牲畜,例如牛、馬,則是人類經過演化篩選的生產工具,天生是為人類提供生產價值的,

仍然有相當多研發團隊為自建工具無意識的、不計成本的投入,少則投入幾人,多則投入幾十人成立工程團隊,進行學習、搭建、維保和開發作業,這種寵物思維忽略了工具的生產為主的天性,也忽略了云技術的演進和社會分工能帶來的巨大效率優勢,值得一提的是,CODING 擁有了可能是國內 DevOps 領域最大規模的高水平研發團隊,團隊成員有著豐富的技術、工程和用戶體驗積累,我們建議,技術決策者可以從運維成本、配置成本、易用性、權限管理、度量與規范等各個角度去做一次理性選擇:是自建工具更好,還是一站式平臺更好,

此外 CODING 還擁有以下優勢:
- 可適應從瀑布式到敏捷的漸進式作業流過渡,支持從已有多種系統中進行資料遷移;
- ChatOps 生態與微信小程式、企業微信、釘釘等 IM 能夠互通,平臺開放了豐富的 API 供二次開發使用;
- 標準版免費,高級版本按人數規模訂閱;
- 充分利用了騰訊云資源以及 CDN 加速能力,提供速度和可用性上的優勢;
- 免費與付費用戶均提供可用性保障和服務支持,
……
研發度量 & 作業負載新品解讀
希望以上我的介紹,能讓大家對一站式研發管理平臺的理念和優勢,有一個概覽性的認識,現在為大家帶來我們一系列的新產品,首先是研發度量,
德魯克曾寫道:“你如果無法度量它,就無法管理它,”這句話充分體現了度量在管理中的份量,對于注重研發效能的團隊來說,我們渴望去測量和提升創造價值的速度,我們渴望通過度量去及時發現和改進質量問題,渴望能夠比較組織內團隊之間,甚至與行業內其它團隊之間的工程效能,我們渴望有這樣一把好用的尺子,然而,度量確實在許多研發團隊的實踐中是一個復雜的問題,我們見過許多團隊從使用 Excel 去歸集各處的報表,到搭建基于 SQL 查詢或更復雜的資料倉庫的基礎設施,度量涉及到資料源的規整和清洗,涉及到指標的選取和基線的設定,涉及到對指標的有效解讀和改進措施的判斷,
CODING 利用一站式平臺的資料集成優勢,給注重效能改進的研發團隊帶來了可對全平臺產生的資料進行多維度分析的研發度量工具,它的特征是開箱即用、高度可視化、自帶效能指標體系模型,促進 DevOps 工程透明化,
研發度量覆寫從需求、代碼、制品到發布的全鏈路資料源,可以自由組織個人視圖和團隊視圖,度量視圖帶有健全的權限管理機制,使用度量查詢器,團隊負責人、PMO 可以定制復雜的可視化報表,資料可以下鉆,可以匯出,也可以共享投屏,研發團隊其實沒有必要去進行過度的指標設計,通過少數指標(一般不超過 20 個)基本能覆寫團隊和專案主要維度的統計,更重要的是抓住關鍵指標的有效改進措施,

基于 DevOps 成熟度模型,這里我們選取了一些參考性指標和基線,例如需求交付周期、缺陷修復時長、自動化測驗率等等,以往可能覆寫這些關鍵指標有相當多的工序要配置,尤其是對于中大型組織,覆寫較多團隊、較多專案,甚至交叉團隊、交叉專案的情景,
CODING 研發度量將預設基于成熟度模型的效能視圖和質量視圖,視圖內有預定義好的指標設計,通過一鍵開啟這項功能可以便捷的應用到你的團隊當中,無需進行復雜的配置即可直接使用,隨著使用深度增加,研發團隊可以自定義適合自己的公式化指標,

最后我為大家帶來的是作業負載,這是 CODING 提供的一項全新的人力資源管理工具,這款工具定義了一個作業飽和度的指標,能以直觀、可視化的方式度量一組研發人員作業并行的的情況,尤其適用于計劃驅動型團隊的需求排版,識別閑置開發資源和過度飽和的開發資源,這款工具現在已經上線,可以在 CODING 線上版本中直接體驗和使用,

以上就是我今天為大家帶來的內容,如下圖所示,感謝過去一年這些團隊與我們共創產品,CODING 希望通過打造一站式研發平臺,讓人們相信數字化軟體工廠是可以實作的,我邀請您加入,和其他團隊一道,邁入高效能研發的數字化作業體驗,


點擊觀看 CIF 峰會回放
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/374005.html
標籤:其他
上一篇:【Git 系列】基礎知識全集
