オープンソースのコードは過去10年でますます使用されるようになり、今では大多数の商用ソフトウェアで使われるようになっています。世界中の開発者が、共通の技術やコードの機能をインターネット上で絶えず共有しています。アプリケーションチームに求められるスピードと需要は高まり、かつては年に数回のアプリケーションのリリースでビジネスが行われていたのが、今では週または日に数回の頻度となっています。この急激な加速により、業界全体が「ウォーターフォール」や「反復型」のプロジェクト開発手法から「アジャイル」への移行を後押しされ、急拡大する需要に対処しています。
オープンソースのコードは無数のソースから成り立っています。中でもコードの再利用、サードパーティライブラリ、開発者向けダウンロードが主流となる傾向にあります。また、あるプロジェクトのコードをほかで再利用することも一般的なことです。例えば、プロジェクトにコンサルタントを起用しており、1時間あたり250ドルを支払っているとします。この場合、このコンサルタントは前年に別のクライアントのプロジェクトで使ったものと同じコードを使用しているのだということを理解しましょう。(クライアントXのプロジェクトで機能しているコードがあり、クライアントYも似たようなことをしているなら、コードを再利用してお金を節約しようとなるわけです)。