讓大家理解技術債
兩個大方向讓大家意識到技術債
前言
管理技術債務是一個挑戰。特別在台灣很多人對於軟體開發還是多多少少有著製造業的思維。但軟體因為有著可隨時調整的特性,所以一個軟體從管理階層到開發團隊,每個人都應該對技術債有所了解,並共同努力找到解決方案。重要的是,這不僅僅是一個技術問題,更是一個團隊合作和溝通的問題。
在前一篇文章中提到量化技術債的做法,接下來要進行溝通知會這樣的狀況。
團隊成員的反應
在討論技術債時,不同狀態的開發人員一定有不同的反應。有些人可能憤世嫉俗,認為這是一個無解的問題。其他人則可能歸因於管理層或同事的錯誤決策。還有些人可能會覺得解決技術債太冒險,反過來說,過於自信的團隊成員會想要獨立解決這些問題。當然,也有些人可能對技術債務一無所知。
要解決這些問題,首先需要建立團隊之間的信任和合作。透過定期的會議和討論,我們可以共同探討技術債是如何產生的,以及它帶來了哪些問題。這種討論應該是建設性的,且從高層次的視角來看待問題並從中學習。 Code Review 是最常見的做法。
向管理層解釋技術債也是很重要的。對於工程師來說很容易理解 GreenField 和 BrownField 開發上的難度差異,但對於管理階層來說則是覺得都是寫是。需要花點時間讓管理層了解解決技術債的長期效益。
看得見的還款
除了讓工程師接受軟體工程概念例如單元測試技巧以及 SOLID 原則等等,我們也要透過小步改進的概念,一點點的改變建立信心外,更重要的是量化這些技術債,讓大家有意識到做的每件事都有減少技術債。這種可以被看見的還款,除了給軟體團隊以及管理階層信心以外,我們也能有所本的繼續往要前進的方向努力。
總結
想要解決技術債之前,真的要多花點心思在非技術方面的議題上,特別是打造一個讓人們覺得「有真的在還款」的感覺才是解決債務最難的地方。