ChatOps 是一個新概念,對於在業界來講,更爲人所熟知的是 DevOps。ChatOps 究竟是什麼?又如何將它進行落地應用?本次咱們爲你們帶來了 ChatOps 的發展歷史與行業應用,力求讓你們可以在最短的時間內瞭解這一全新工做方式。框架
ChatOps 的理念由 DevOps 延伸而來,又結合了 AI(人工智能)落地,能夠說是人工智能和新型工做理念結合的產物。它是一種新型智能工做方式,幫助團隊利用 ChatBot 機器人使成員和各項輔助工具鏈接在一塊兒,以溝通驅動的方式完成工做。同時解決人與人、人與工具、工具與工具之間的信息孤島問題,從而帶來更高的工做效率和更好的協做體驗。工具
2013 年,GitHub 在其內部最先開始推行 ChatOps,但願能以聊天的方式更方便更快速地去完成 DevOps 承載的工做。學習
ChatOps 以聊天室(溝通平臺)爲中心,經過一系列的機器人去對接後臺的各類服務,工做人員只需在聊天窗口中與機器人對話,便可與後臺服務進行交互,整個工做的展開就像是吩咐一個智能助手那樣簡單天然。測試
GitHub 團隊內部實現的 ChatOps, 與一個叫做 Hubot 的機器人框架密切相關,Hubot 提供不少聊天機器人所須要的基礎設施,藉助 Hubot 框架能比較方便地和本身編寫的功能或本身的系統對接。目前,Hubot 已經發展出了較好的生態圈,有不少開源插件能夠借用。優化
ChatOps 站在巨人的肩膀上發展,也爲工做帶來了顯而易見的好處:人工智能
光說不練假把式,理論不通過實踐是站不住腳的。因此,對於這種由 DevOps 衍生而來的方式最好的驗證方式是在開發團隊上進行應用。做爲國內將 ChatOps 模式落地的先行者,讓咱們來看看倍洽是怎樣爲移動開發團隊帶來新一代便捷的工做體驗。譬如,從他們本身的移動開發團隊平常工具選型與工做流搭建開始。spa
倍洽移動開發組一般會根據實際的使用場景在本身的倍洽團隊上建立不一樣的討論組,實現信息的按主題分流和收集。例如,建立相關「Bug 收集」組用來收集各移動端平常產生的報錯信息、「問題跟蹤」組用來追蹤管理各類問題的處理進展、「資訊收集」組用來訂閱最新的技術動態、「代碼開發」和「交互設計」用組來跟進產品開發動態、「測試上線」組用來發布產品測試信息和收集測試反饋、「評論收集」組用來監控本身產品和競品在各個應用商店中的輿情、「產品優化」組則用來彙總查看一些用戶的反饋建議等等。插件
具體的工做流程:設計
1.一般,一個版本上線後,咱們會用 Crashlytics 來收集移動端的崩潰日誌,或使用 Bugly、BugHD、聽雲等服務來收集崩潰和 Bug 信息。在倍洽中直接啓用這些工具和服務對應的機器人,不只可以在無需來回切換工具界面的狀況下實時查收消息,客觀上還在倍洽中彙總備份了信息,使其更具備可回溯性,便於咱們之後根據日期來回顧當時所出現的問題,更好地進行版本質量管理。日誌
如上圖所示,在實際工做中,咱們將上述機器人同步而來的消息按照客戶端分類,分別推送到「Bug收集-安卓」、「Bug收集-iOS」、「Bug收集-WP」三個討論組中。利用討論組的拆分作到信息的分類收集,讓數據更加整齊,便於梳理。不一樣客戶端的開發工程師只須要關注相應的討論組,便可及時掌握與本身密切相關的客戶端動態,而不會被其它弱相關信息干擾。
2.在版本上線之後,若是遇到了比較嚴重的質量問題,如閃退等,倍洽移動端團隊會利用 Crashlytics + Trello + 倍洽(BearyChat) 的組合完成對這個問題的質量追蹤。具體的工做流程是:利用 Crashlytics 內置的與項目管理工具 Trello 相關聯的特性,Crashlytics 在監控到質量問題時,自動爲這個問題在 Trello 上建立一個任務卡,並經過 Trello 機器人實時向倍洽相應討論組中同步該任務的進度。
咱們會根據嚴重性對問題進行區分,並將相應信息歸類入不一樣的討論組中。例如,上述 Trello 機器人同步的消息會被納入到「嚴重問題跟蹤解決」討論組中,同時,相關工程師跟進問題後對該任務卡進行的操做信息也會經過 Trello 機器人實時推送到這個組中,方便其它同事瞭解該問題的進展,保證了整個團隊信息同步的及時性,便於平常協做。
3.咱們建立了「代碼開發」這個討論組來保證移動團隊內部開發進度的實時同步。固然,這個討論組在 Bug 修復工做中也十分有用,例如,你們能夠在這個討論組中實時查看誰正在處理什麼 Bug 、修復到了什麼階段,很好地避免了重複勞動和有問題沒人管的尷尬狀況。另外,咱們十分推薦使用 Hubot 機器人鏈接 GitHub,完成配置後,就能夠直接在倍洽上經過對 Hubot 發送指令來完成查看和建立任務,十分方便。
4.咱們使用 fir.im 來管理內部測試版本的發佈。在倍洽上創建相應的討論組並完成 fir.im 機器人的配置後,就可以方便地看到每一個版本的上傳信息,便於進行版本管理和質量控制。
5.另外,爲了建設一個學習型的團隊,咱們很是重視平常的資訊獲取。咱們配置了一些 RSS 機器人用於收集行業信息,如 Android Studio 的版本更新,ARKit 官方論壇的最新內容等,保證團隊成員可以實時獲取行業最新動態。
6.另外,爲了建設一個學習型的團隊,咱們很是重視平常的資訊獲取。咱們配置了一些 RSS 機器人用於收集行業信息,如 Android Studio 的版本更新,ARKit 官方論壇的最新內容等,保證團隊成員可以實時獲取行業最新動態。
倍洽一直以「面向將來的工做方式」爲願景服務於效能團隊,經過將 ChatOps 模式落地以打通平常工做流,實現真正的一站式工做。愈來愈多的企業與團隊開始選擇倍洽來幫助提高工做運轉效率,打破信息孤島,解決一直以來協同度低下的難題。咱們也將繼續積極引進、整合國際先進理念與服務,爲企業和團隊提供更高效的工做消息處理方式。