500強上市公司:研發模式互聯網轉型實踐
摘要:在Work like Alibaba案例實戰係列第二期9月14日的直播中,新光互聯無線團隊負責人陳聯柯為大家分享了如何借助RDC,實現從需求管理,到多團隊協作,到缺陷管理以及自動化部署等全流程的無縫銜接,並借助RDC的敏捷管理工具,讓敏捷協作更為高效。精彩不容錯過!
直播回顧視頻地址:https://yq.aliyun.com/webinar/play/304
本文內容根據演講嘉賓視頻分享以及PPT整理而成。
本次的分享主要分為以下4個部分:
一、新光集團簡介
二、傳統的研發方式
三、RDC是個好工具
四、RDC數據化管理
一、新光集團簡介
新光集團是一家集實業、地產、投資、金融、互聯網、能源和旅遊等多元業務於一體的產融結合的生態投資集團。目前旗下有1家上市公司,40多家全資子公司及控股公司,近百家參股公司,資產規模近千億。新光互聯是新光集團旗下負責互聯網業務相關的子公司。

二、傳統的研發方式
接下來首先介紹新光集團在接觸RDC之前所使用的傳統研發方式,這裏以新光集團旗下的兔波波業務為例。從下圖中可以看到兔波波的業務主要分為四個部分,其中兔波波的整個業務線主要可以分為三大塊:眾包、門店和車配,而這裏的“數據”指的是在兔波波內部專門針對於其他三個業務所做的數據收集、分析相關的工作。

門店相關業務其實與菜鳥驛站很類似,也就是各個社區中都會有很多的門店,比如水果店或者小百貨商店,這些門店原本都是在社區中獨立運營的店鋪,當這些店鋪加盟到兔波波之後就可以通過收發快遞的方式幫助自己吸引客流,同時自己門店中的貨物也可以通過眾包係統進行配送,並通過車配係統幫助門店進貨。所以對於門店這部分也有很多項目組在跟進,為門店店主提供了手機端的快遞管理助手、PC端的管理係統,為城市服務商提供了運營管理係統,並為顧客提供的可以實現在線寄件的兔波波微信公眾號等服務,而在兔波波微信公眾號中也能夠提供眾包業務中的閃送服務。
第三部分是車配業務,這部分所做的工作是針對城市內部的次幹線進行物流配送。車配業務將和門店業務結合起來賦能門店的物流。車配業務也涉及了很多方麵,需要為不同的角色比如司機、管理人員以及運營人員提供各自所需要使用的手機應用程序等軟件係統。
對於數據業務部分而言,其包括了對於上述兔波波三大業務的數據分析,這部分需要將數據做成報表並及時向老板匯報,從而幫助管理層更好地做出決策。除此之外,還會涉及到對於自己產品的數據分析,比如在應用上線之後,需要采集運行情況的監控數據,並進行相應的版本管理以及應用的灰度發布等。
單是兔波波這樣的一個業務線算下來就已經達到十幾個項目組,總共四五十個項目成員了。而麵對這麼多的業務,之前的做法相對比較傳統,就是“一個蘿卜一個坑”,每個成員負責固定的項目,這樣就相當於同時有十幾個項目組向前走。從研發資源的把控和安排的角度來講,整個研發管理的複雜度就會大大提升。如果業務比較簡單,隻有一兩個項目團隊,那麼使用傳統的方式進行管理是完全沒有問題的,但是目前單是兔波波這一條業務線就有十幾個項目組同時開展工作,那麼對於項目的進度和風險的把控以及資源的分配工作都需要管理人員花費大量的時間來進行信息收集和數據同步。所以在麵對如此之多的問題的時候,項目的研發管理就會變得令人頭疼。
在最早的時候,新光集團在軟件係統上做法與很多的創業公司一樣:在代碼管理方麵使用GitLab,需求管理和Bug管理使用JIRA,團隊內部的文檔共享使用Confluence的Wiki功能。在最開始的時候,新光無線團隊采用的還是手動在本地進行打包的方式,而後麵隨著業務的增多,也逐漸開始使用Jenkins實現簡單的持續集成。


三、RDC是個好工具
後來經過一位阿裏巴巴的同事的推薦,新光無線團隊開始接觸RDC這款工具。RDC可以用於項目研發全流程的管理,它是由阿裏巴巴內部的AOne係統開放出來的。接下來這部分將與大家分享新光無線團隊在使用RDC過程中的一些收獲。
初識RDC
目前阿裏雲的服務已經相對比較成熟了,像新光集團這樣初創型的公司所使用也基本上都是阿裏雲的服務器,除此之外也使用了很多阿裏雲所提供的服務,所以總體而言對阿裏雲並不陌生。但是因為阿裏雲所提供的功能種類非常多,如下圖所示的菜單中就已經大概有上百項的服務了,而RDC服務就在這樣的一個角落裏,如果不是有同事推薦其實是很難知道的。而且目前RDC還處於公測當中,所以阿裏雲也還沒有大規模地向外推廣,所以新光無線團隊當時能夠接觸到RDC還是比較幸運的。

磕磕碰碰上手
新光無線團隊在了解RDC之後馬上就開始了試用,而在一開始的試用過程中,可以說是磕磕碰碰地上手的,因為單單RDC自己的功能就已經非常多,非常強大了,並且它又集成在阿裏雲上麵,而阿裏雲本身的產品又非常豐富,所以在剛開始使用RDC的時候非常不習慣。因為當點到產品與服務菜單,阿裏雲所有的服務一下子都跳出來了,但是當時並不了解這些服務與RDC究竟有什麼關係,所以在一開始,新光無線團隊有一種無從下手的感覺。但是在後來使用的過程中,團隊慢慢地開始摸索出了RDC的使用套路,也逐漸地習慣了RDC的使用。

RDC是個好工具—綜述
如下圖所示,整個RDC主要包含幾部分內容:第一部分就是最上麵的“我的”、“項目”和“服務”等這幾大類目。下圖中左側是與此時所選中的類目所對應的菜單,“服務”類目中則列舉出來目前企業中所有可以使用的功能。圖中右上角則是一些常用功能的入口,包括設置、添加項目以及添加企業等。圖中中間部分是顯示區域和操作區域。在幾大類目裏麵,“項目”部分是使用頻率最高的,這是因為RDC本身就是研發協同工具,所以如果想要發揮出RDC最大的價值,那麼肯定是需要被大型的研發團隊一起使用的,後麵的分享也會主要圍繞“項目”這部分進行。

RDC是個好工具—我的
“我的”類目部分的菜單包括工作台、應用、代碼、分支、實驗室和設置等。無論是個人開發者還是企業開發團隊,工作台中展示的都是與個人相關的內容,這部分使用的頻率也比較高。當進入“我的”部分之後主要看到的就是工作台中的內容;應用模塊則是一份代碼構建之後的產物;代碼、分支部分主要是對自己的代碼進行管理;代碼模塊主要做的是代碼庫相關的權限管理;分支模塊則是管理個人相關的所有代碼;實驗室是用於做自動化構建和自動化測試相關的內容的;設置則管理的是與個人相關的設置,比如可以設置開啟哪些功能。




RDC是個好工具—項目管理
首先從項目管理說起,如下圖所示的是新光無線團隊在RDC中的一個項目的需求,這裏就是一個需求池。回想一下,在還沒有使用RDC的時候是如何管理需求的呢?通常情況都是產品經理使用Excel製作一個需求列表,將需求一條一條地列出來,然後產品經理之間需要拿到這些文檔發來發去內部之間進行共享和修改。產品、開發、測試以及運維之間溝通需求的時候一樣需要傳遞這些Word或者Excel文檔,如果中間有改版就還需要再發一次,用最新的覆蓋老的。

如下圖所示的是項目管理中任務頁麵,這裏管理的是基於產品的需求所進行的開發,也就是將需求拆解成相應的任務。比如在還沒有使用RDC的時候,最開始使用的是甘特圖來分解任務和安排時間,也就是如下左側圖片所示的在牆上釘一個軟木板,之後好幾個項目都在上麵,有時候需求任務多的時候,這個軟木板上基本密密麻麻貼滿了便簽紙。

如下圖所示的是RDC項目管理模塊的迭代部分,其實迭代這部分就與線下的版本是很相似的。如下圖所示的迭代部分存在著兩個版本,從1.0.1到1.1.0版本。




使用RDC進行項目管理的整體流程總結
1.將需求寫入需求池。










RDC是個好工具—開發管理
前麵主要分享了使用RDC進行項目方麵的管理,其實目前市場上也有很多的工具正在做項目管理方麵的事情,而RDC的優勢在於它能夠係統化地與開發、缺陷管理以及數據化管理進行打通並結合在一起。接下來就簡單地分享RDC在開發方麵的使用。最早新光互聯在做研發的時候比較簡單,就是直接開發寫代碼,之後交給QA進行測試,再之後上線部署就完成了。但是實際上,研發所需要追求的不僅僅是完成工作和實現功能,其實這是遠遠不夠的,還需要更加關注所做出來的東西的質量如何、產品是否穩定以及產品能否抵抗得住壓力,同時還需要關注整個團隊的研發效率,是否能夠用盡量少的人以及盡量少的時間做盡量多的事情。但是效率和質量往往存在一定的矛盾,那麼如何實現效率和質量的平衡就需要更加深入地思考。


任何可以做的持續集成和自動化測試都可以通過實驗室和流水線進行有機的結合。所謂的流水線就是將各個功能節點把所需要做的事情按照自己的需求組合在一起,比如希望在代碼提交到Git的時候觸發一個檢測,如果沒有通過代碼規範就將代碼打回來,直到檢測通過才可以繼續下一步。當代碼提交之後還可以配入壓力測試、性能測試或者兼容性測試,也就是說在整個研發過程當中可以通過流水線向研發流程中部署各種點,當流水線流到相應的點的時候就會觸發相應的功能,執行完成之後繼續向下走,這樣就能夠把整個流程自動化地串到一起。而對於初創公司而言,往往沒有能力自己實現像RDC這樣的產品,所以可以借助阿裏雲的RDC實現同樣的功能。

RDC是個好工具—缺陷管理
接下來分享缺陷管理,這部分主要包括了兩部分,第一部分主要是測試用例,第二部分是Bug管理。之前的時候,測試用例也是由QA團隊使用Excel編寫維護的,與之前的需求等做法一樣,都是線下的方式,每人一份傳來傳去,出現的問題也與前麵所提到的相同,到達率不夠高,並且更新率也不夠高,拿到一份測試用例所需要花費的時間也比較長,所以想要獲取最新的測試用例所需要的成本也是比較高的。而通過RDC的在線化電子化的管理,測試用例管理和缺陷管理的問題也就迎刃而解的,團隊中每個人都可以很方便地拿到最新的測試用例。如下圖所示的就是測試用例庫,同樣的Bug管理也很相似,這部分與JIRA很像,而且工作項都可以進行配置。


四、RDC的數據化管理
上麵分享了新光互聯團隊在使用RDC工具進行項目管理、研發管理以及缺陷管理方麵的經驗以及收獲。接下來簡單地分享RDC的數據化管理。
數據化管理也是RDC區別於市麵上的各種項目管理工具的地方,這裏的數據化管理不是針對於某一個項目的,而是針對整個團隊、公司以及大型企業內部所有項目的多維度、多角度的數據分析。這部分在RDC的功能中叫做度量,而目前RDC開放出來的功能還不是非常全麵,所以度量的範圍和維度還相對比較少,之後開放出更多維度之後就能夠做一些更加全麵、深入和細致的數據分析。其實隻有經過分析和處理的數據才能發揮出自己最大的價值。而在傳統的研發過程中,數據往往會分散到各個子係統中,而子係統之間是沒有打通的,所以研發過程產生的數據就無法發揮出整合之後的價值。而借助RDC的能力將數據整合到一起進行更加全麵的分析,就可以發揮出更大的價值。
數據管理部分包括研發、應用質量以及項目質量這三個方麵。在研發方麵包括需求、缺陷以及發布相關的數據,這裏展示的是整個團隊的粗粒度的宏觀數據。



趕緊立即體驗研發協同RDC吧!
最後更新:2017-09-18 11:03:27