核心觀點#

「開發軟體」不是名詞,而是動詞——它是一個過程。專注於開發過程與專注於產品本身同樣重要。忽視過程,你就會面臨延遲交付、交付錯誤產品、甚至無法交付的風險。

關鍵概念#

  • 方法論的價值:大量的思考已被投入到軟體開發方法論中,但大多數開發者從未受益。對多數團隊來說,process 只是從上面強加的事後想法。
  • 主動擁有流程:如果你的組織沒有流程,就研究可能適用的方法論;如果已有流程被強加,就主動去理解並正確實施它,而不是被動抵抗。
  • 沒有銀彈:不太可能有公司完全實施任何一種方法論。最好的流程是讓團隊最有生產力、產出最好產品的那個——通常需要從多種方法論中取長補短。
  • 流程能力即競爭力:能讓軟體運作的人很多,能讓軟體開發過程運作的人很少。掌握軟體開發流程的知識只會對你有益。

如果你想擁有一個流程,最好的方式就是幫助實施它。

行動建議#

  1. 挑選一個軟體開發方法論,買書、加入社群、開始閱讀。以批判性眼光分析其優缺點,然後對另一個方法論做同樣的事。比較兩者的強弱項,思考如何結合它們的優勢。