長期來說,結構比行為,更有更高價值
結構比行為,更有價值
作者粗略的替系統,劃分了兩種價值,“行為”和“結構”,並強調“結構”價值更高
我的簡單理解是,“行為“就是商業邏輯,也就是每一次需求方提出來的功能,”結構“則是實作這些功能的程式碼組合方式,短期來說,”行為“比較能夠明顯感覺出價值,因為他是顯性的,如”結帳“這個功能實作出來,是可以馬上替組織帶來現金的,但長期來說,”架構”價值會越來越高,原因是需求是持續變動的,例如匯款需求,轉變為行動支付,能夠持續快速滿足需求,同時降低錯誤發生機率,那麼就不只是帶來現金而已,還能降低成本,總結來說,架構價值更高,是因為好的架構,能夠持續替公司創造價值,而非虛耗精力在維護爛攤子
Fight ! 為架構而戰吧!!
作者提到一有趣的例子,軟體系統易於變更更有價值,還是能夠工作更有價值?,如果去問業務經理,從他的角度一定是說能夠工作更有價值,不過那是因為以他的職位來說,賺錢是唯一真理,他哪管是否好維護好修改這類只有工程師面臨的問題呢?此外一個只能作用卻不能變更的系統,當需求變更時,馬上價值歸零,反之易於變更的系統,工程師還能調教成適應新需求,因此價值更高
作者也提倡到,軟體開發人員,本身的價值在於協助組織評估架構重要性,並奮力爭取架構,因為自己就是利益相關者,如上例子,爛攤子誰加班維護?當然是自己啊,但我理解的奮力爭取,不是唱高調,而是爭取合理的時程,並且用需求方聽得懂的話,與之溝通,例如,A功能用三天可以完成,但是後續的B功能需要花六天,才能完成,但是如果A功能的時程,可以調整成五天,那麼後續B功能只要兩天就能夠完成,且不會一直壞掉不能用喔~~
我認為,對於軟體開發者來說,技術實力是必須持續追求的,但用別人能感同身受的話溝通,也是需要有意磨練的,畢竟專案是各部門夥伴共同努力而來的