之前在臉書的 Scrum Community in Taiwan 中做了個調查, 問大家在 DevOps 中落實了哪些 practices, 目前調查結果如下圖所示:
根據調查的結果, 我自己有幾點發現:
(1) 目前DevOps 還在 Dev 端
DevOps 一開始是要讓 Dev 和 Op 能夠合作更好, 彼此知道雙方的問題, 思考要如何做才能讓對方比較好做事情. 但是從大家所實踐的 practice 看來, 目前集中在開發端, 偏 Op 端的, 像是 安全, platform as service, 遙測等等, 落實的人是相對的少數.
(2) 有持續整合但不見得有測試自動化
照理說, 選持續整合的, 應該也要選測試自動化, 但是兩邊數目不同. 更有趣的是兩邊選的人也有些比例的不同. 所以有些持續整合是沒有執行次社自動化的, 那是客戶當白老鼠嗎?
(3) 主幹開發模式還是很少人用
Trunk Based Development (TBD) 真的不多. 畢竟要做到, 要跟很多基本功配合 (story 要會切小, feature toggle, test automation 等等), 算是門檻較高的 practice
(4) 交付價值似乎不在意
價值驅動開發完全沒人選, 可能目前大家認為這些功能都是客戶要的, 沒什麼好確認, 老闆說了算數, 或者老闆不給確認, 還是不太會用 data driven 的方式來進行?
看起來 DevOps 還是一條很漫長的路, 目前最多是大家努力把 eXtreme Programming 中的 持續整合給落實. 雖說 持續整合 只有一項, 但是牽涉到的東西還蠻廣的, 像是 配置管理, 測試自動化, 分支策略等等, 都是在落實持續整合時會遭遇到的. 目前看起來大家只是有做 持續整合, 距離要把 持續整合 給做好, 還是有點距離.
大家可以想想 Martin Fowler 檢驗 持續整合 的指標, 或許先做到這三點
(1) 每個開發人員每天至少 commit 一次到主幹
(2) 每次的 commit 都會觸發建構和自動化測試
(3) 如果 建構和自動化測試 失敗的話, 需要在 10 分鐘內修復.
ContinuousIntegrationCertification
文章標籤
全站熱搜
留言列表