作者介紹:以諾行CTO 劉自強 團隊使用云效3年
團隊協作需求
杭州以諾行汽車科技股份有限公司(以下簡稱“以諾行”)成立于2016年8月,位于杭州市余杭區文一西路科技高地海創科技中心,以諾行是一家集研發、銷售及服務為一體的科技型企業,主要核心業務包括汽車軟體、 汽車噴漆及汽車配件,致力于用精湛的技術和超前的互聯網思維打造汽車維修平臺全新格局,
以諾行目前有以下軟體產品
- 基于SaaS的汽修管理ERP,功能包含進銷存、維修流程管理、賬務、CRM等,基于Web、Android、IOS、微信H5、微信小程式等操作終端,
- 以諾行噴涂全流程軟體,基于Web、Android、IOS等操作終端,
- 以諾行詢報價軟體,基于Web、微信H5、微信小程式等操作終端,
- OA系統,基于釘釘小程式,
- 以及其它正在規劃開發的產品,
所有軟體產品由以諾行軟體部門進行開發維護,整個部門分為產品、設計、開發、測驗和實施崗位,共30人左右,
因為軟體產品線較多,各職能部門人手無法做到每條產品線專人負責,所以并沒有采用專案制,而是由專案經理和產品經理根據需求優先級與開發資源情況安排開發迭代,因此每個迭代安排人手時,需要清楚的了解每個職能崗位的作業狀態,開發程序中也要及時跟進開發進度,及早識別風險,
出于以上原因,我們需要選擇或者自己搭建一套專案管理和持續集成系統,并且需要考慮以下因素,
- 基本的專案管理功能和可配置的任務作業流
- 清晰易用的作業臺和作業流通知
- 資源存盤與共享
- 檔案管理
- 代碼托管
- 持續集成流水線,并且流水線與阿里云產品對接友好
- 使用成本
協作選型程序
最初,我們團隊在自己的ECS服務器上搭建了開源的專案管理和持續集成工具,并經過配置實作了基本的需求,但是在使用一段時間后決定選擇一款在線SaaS性質的專案管理工具,原因如下
1.管理效率低下
a.很多傳統專案管理工具并沒有非常直觀的統計視圖,需要將任務明細匯出Excel再進行透視或者公式圖表分析,無論是日常管理還是向公司提交匯報都很不方便,
b.缺少直觀的日常統計,也會導致安排后續任務進度時得不到充分的資料支持,以至于進度安排過緊或過松,導致因趕工而產出質量下降或研發資源浪費,
2.運維成本高
a.開源產品部署后不易升級,大版本升級容易產生兼容性問題,并且可能需要重新調整配置,
b.資源存盤在ECS上,對存盤資源消耗較大,不過這個問題可以使用NAS服務緩解,
c.若日常使用時有較多截圖,檔案的讀寫操作,ECS帶寬占用較大,容易導致ECS上部署的服務爭搶帶寬資源,而帶寬成本較高,
d.后端技術轉型,后端服務不再部署在ECS上,而是部署到了阿里云SAE(Serverless App Engine)產品,不再需要ECS,對于中小企業來講,單獨為專案管理工具保留一臺ECS比較浪費資源,
我們調研了市面上比較流行的SaaS專案管理工具,部分功能滿足我們的需求,但是普遍有以下的制約因素,
- 與阿里云產品無法直接對接,我們前端部署在OSS,后端部署在SAE,雖然云產品提供了各種API可以進行對接,也提供了一些常用持續集成平臺的插件,但是對接上仍然比較復雜,甚至需要我們自己開發一定的中間件進行對接,
- 額外維護一套賬號體系
- 收費較高
在調研試用各種專案管理工具期間,偶然在阿里云官網上看到了云效產品的推廣,并且小微企業有一年期限的30人內免費,而云效可以基于阿里云RAM賬號登錄,并且對阿里云產品提供無縫對接,于是便開通試用了,
云效使用效果
由于大部分研發人員需要對各種云產品進行查看管理,所以已經開通了各自的RAM賬號,因此使用RAM賬號對我們來講并不是額外的負擔,對于不使用RAM賬號的企業來講,云效也支持使用釘釘賬號進行系結,
為每一個員工建立阿里云RAM賬號,并在云效中配置好部門和角色就可以開始使用了,
專案管理
通過配置合理的專案管理功能,可以完成以下作業流程
- 專案經理的開發迭代管理
- 產品經理的需求生命周期管理
- 開發人員的開發任務管理
- 測驗人員的測驗計劃管理
- 測驗階段的缺陷生命周期管理
- 實施和客戶部門的反饋管理
其中涉及到了以下功能:
版本管理/迭代
版本管理和迭代功能提供了便捷的手段來管理各種任務、計劃和資源,管理者借此可以清晰的查看開發迭代進展,識別進度風險,產品部門也可以預先對任務進行分類、評審和排期,

需求
需求模塊提供了基本的需求管理功能,并支持自定義各種型別的欄位、狀態和作業流,
任務中可以關聯各種檔案任務資源和知識庫條目作為附件,以更加豐富的媒體方式呈現需求內容,
進入開發的需求可以創建對應的子任務分配給研發人員,研發人員也可以快捷地打開關聯需求查看設計細節,

測驗計劃
在開發迭代之前或開發程序中,測驗人員可以使用測驗計劃模塊來管理測驗用例,也可以將研發人員特地宣告的風險加入的測驗計劃,借此可以有效的追蹤每一個迭代的測驗情況,避免有遺漏,也可以在復盤時進行回顧分析,
任務
專案管理中可以根據現狀來自定義各種基于作業流的任務,比如開發任務,通過配置好的狀態和作業流,幫助各職能人員識別關注自己的任務,避免遺漏延期,


缺陷
缺陷由測驗人員發起,經過研發的修復,再由測驗人員驗證關閉,借此倍訓來管理研發中或者線上突發的缺陷,

測驗人員創建缺陷后,填寫優先級和備注后指派給對應開發,也可以掛接到對應需求上面,
在動態欄中相關人員可以進行便捷的溝通,缺陷修復后標記為已解決并自動指派回測驗人員進行驗證,驗證修復后關閉即可,
知識庫
知識庫是檔案管理中心,可以依托于具體專案,也可以獨立專案之外,提供了協同編輯能力,并具備細粒度的權限管理,

代碼托管
Codeup代碼托管服務提供了完整的git倉庫基本的功能,包括可視化的權限管理,代碼合并,分支管理,Webhook等,
此外還提供了代碼安全檢測功能,比如代碼中的明文密碼,高風險的依賴包等, 比如這幾天爆出來的log4j 2.14的高危漏洞,
報表功能也可以直觀的追溯代碼的提交評審行為,對于代碼質量管理很有幫助,
值得一提的是,在代碼庫中可以一鍵開啟WebIDE簽出代碼進行開發,在遠程辦公,緊急處理問題時很有幫助,

檔案/分享/日程等
專案管理還提供了很多其它模塊來促進專案人員間的共享和協作能力,
作業臺
作業臺中可以方便的追溯自己相關的作業,在日常作業中,每個崗位只需專注于“我執行的”頁簽內的任務并保證按時完成即可,
任務會根據截止時間和優先級進行分組排序,可以有效的幫助個人優先處理篩選出更加重要緊急的任務,
作業臺同時提供了非常便捷的創建個人任務的功能,這類任務不依托于專案,可以很大程度上替代個人日常的TODO list,
"我執行的","我參與的"和"我創建的"頁簽基本上可以覆寫大部分對自己相關任務的管理場景,避免頻繁的到具體專案的任務視圖中查詢,

持續交付
云效流水線功能提供了從代碼直到部署的流程配置,原生支持與代碼倉庫Codeup的對接,并且可以方便的配置各種Webhook觸發器,
以下是我們軟體產品的架構圖:

對于后端應用,配置好Dockerfile后,流水線根據Dockerfile執行構建并且把制品上傳到阿里云容器鏡像服務產品中,在需要部署時,則把鏡像推送給對應的SAE應用執行灰度部署,這些都是在流水線中原生支持的,
對于前端資源,流水線中呼叫webpack打包腳本生成制品,在需要部署時,推送到OSS服務的對應bucket即可,
以下是流水線的串列頁面,可以自定義表頭來展示運維人員關心的欄位,


流水線配置中也有豐富的觸發器可以支持手動/代碼庫行為/流水線聯動觸發等,
統計
云效提供了豐富的統計功能,可以從各維度匯總資料,無論是內部管理還是對公司高層匯報,都可以方便的匯出相關統計,
截止到當前,我們已有十多個應用產品線通過云效進行管理,其中核心應用已產生過萬個任務,大部分都可以按時完成,

給中小企業的建議
現在對于中小企業,基本都不會自己搭建服務器和機房進行部署,而是選擇各大云平臺,選擇一款SaaS專案管理工具可以極大的降低運維成本,
而持續集成,選擇一款可以與自己選擇的云產品方便對接的平臺也是非常重要的,尤其是現今Serverless應用越來越廣泛,持續集成平臺擔負的任務也越來越重,需要謹慎選擇,
對于核心功能托管在阿里云產品(如ECS, OSS, NAS, SAE, ADAS等)的企業,云效流水線可以提供原生的對接支持,也會在第一時間適配各云產品的新特性,可以讓運維人員專注于對部署流程配置,
專案管理方面,云效提供了易用的專案管理,知識庫,統計等功能,可以覆寫大部分的專案管理場景,
最后價格方面,現在云效常用基礎功能免費開放,且不對使用人數做限制,對于中小企業節約成本非常友好,
以上內容是以諾行在實施使用云效后的效果,對于中小企業,基本都不會自己搭建服務器和機房進行部署,而是選擇各大云平臺,選擇一款SaaS專案管理工具可以極大的降低運維成本,感謝以諾行CTO 劉自強及團隊對云效的信任和肯定,希望云效可以陪伴他們不斷進步,
如果你也有故事要分享,請留言聯系我們,一起打造10倍效能提升案例集,
歡迎大家使用云效,云原生時代新DevOps平臺,通過云原生新技術和研發新模式,大幅提升研發效率,現云效公共云基礎版不限人數0元使用,
點擊下方鏈接立即體驗云效DevOps全家桶!
https://help.aliyun.com/document_detail/153739.html?channel=case

轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/417106.html
標籤:其他
上一篇:在阿里,我們如何管理測驗環境
下一篇:在阿里,我們如何管理測驗環境
