7章プラクティス3継続的に統合する

痛みに対処する方法は2つある。回避するか順応するかだ。

ソフトウェアをビルドで統合するのは面倒だ。今まで気づかなかったバグや問題が明らかになるからだ。多くの開発チームは、この面倒を避けようとして統合するのをできる限り遅らせる。そして、リリース直前にコードを統合して、もっと面倒なことになったことに気づく。このような開発チームは、忙しくてノコギリを研ぐ時間のない木こりのように、必要以上に努力とリスクを必要とする状況を作り出す。

面倒な統合を回避するのではなく、順応しようとするとどうなるだろうか。少しずつ時間をかけて取り組んで問題を小さくしていけば、もっと楽になるだろう。

継続的インテグレーションとは、リリース直前まで待つのではなく、ソフトウェアをビルドしながら統合することだ。バグを早期に直せるだけではなく、より簡単に統合できるよいコードを書く方法を学べる重要なプラクティスだ。機能を統合するまでは、システム内で機能することが保証されない。

継続的インテグレーションは、フィードバックのメカニズムとしても非常に価値がある。ビルドが失敗すると、非常に多くの情報が提供されて原因を突き止めるのが難しいときがある。しかし、壊れたビルドはすぐに修正しなければいけない。そのため、フィードバックが過度に冗長にならないようにし、ログファイルを分析する。何が壊れているのかを明確にして、すばやく、どう直せばよいかを把握したいのだ。

常に継続的インテグレーションを実行し、システムへ組み込んだ結果を確認する。そして、バグが混入していないか、コードがシステムのほかの部分とうまく連携できているかを確認する。

継続的インテグレーションを支援する高度なツールは多数ある。だが、どれも動くコードが前提だ。コンパイラは最初のエラーでコンパイルを中断する。 ...

Get レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.