「在持續變革中找出背後的相依性」——《軟體專案開發實務:別只當編程猴》
相依性(dependency)應該是每個軟體開發人員都聽過的詞。
軟體開發經常要處理相依性。
像是程式碼相依的某個第三方套件、函式庫。
也可能是相依某些外部服務或雲端供應商。
甚至團隊自己開發的軟體功能也彼此相依,A工程師與B工程師開發的模組彼此相依。
除了前面的這些舉例之外,還有什麼相依性?
程式語言、軟體架構、系統架構、工具決策、CI/CD Pipeline、軟體運行環境、資安規範、組織架構⋯⋯
上面這些東西會不會也帶來某種相依關係?
相依性、相依關係,有時會導致我們明明只是想要改一個小東西,最後卻弄到牽一髮動全身。
在這樣的情境中,我們想要改變的真的是一個小東西嗎?
在實踐 DevOps 的過程中,我們經常會遇到各種相依性的議題,這也正是為何我們很難只單靠招募一位所謂的 DevOps 工程師,就能順利的實踐 DevOps。