ソフトウェア開発において、リリース(出荷)をどの程度の頻度で行うかには、様々な考え方がある。 ここでは、話を単純にするために、古典的な3層ウェブアプリケーションを題材にして考えてみよう。 リリースをどう捉えるか そもそも、リリースを通じてソフトウェアに変更を加えることには、リスクが伴なう。それまで「問題なく*1」動作していたソフトウェアに変更を加えることで、その状態が損なわれる可能性がある。事なかれ主義に走るのなら、うまく動いているソフトウェアにわざわざ手をいれる必要は無いのだ。 一方で、ソフトウェアのリリースを全くしないことには、新しい機能をユーザーに届けたり、これまで問題があった部分を修正することができないのも事実だ。「リリース」という行為に消極的になったり、その頻度を落とすということは、「ソフトウェアの変更を失敗する」というリスクからは自由になるが、その分ソフトウェアの成長も放棄して