モダンなクラウドアプリケーション開発のベストプラクティスの一つである「The twelve-Factor App」が取り上げられることが多くなった。ビジネスの変化にICTが遅れずについていくためには、エンタープライズ分野の開発も、このプラクティスを取り入れていくべきだ。本稿では、エンタープライズシステムの開発・運用の視点から、従来行われてきたことと比較しながらTwelve-Factor Appを読み解く。

 クラウドアプリケーションでは、容易に本番環境に展開し実行できるようにする必要がある。クラウドアプリケーションは一時的に構築されたサーバーに展開されたり、スケールダウンのために急に止められたりするからだ。

 エンタープライズ分野においても、開発と本番など複数の環境でアプリケーションを動作させることは一般的であるが、基本的には事前に構築された環境に対してのみアプリケーションを展開する。クラウドアプリケーションのように、急に構築した環境に展開することはあまりない。また、実行するサーバーが変わることもほとんどない。

 読者の中には、サーバーの更改や変更により、アプリケーションの設定変更で苦労した経験をお持ちの方はいないだろうか。Twelve-Factor Appでは、アプリケーションをさまざまな実行環境へ展開する場合において、アプリケーション側でその違いを意識しないで済む方法について言及している。

 シリーズ第2週となる今週は、3日間に分けて「環境への展開を迅速にするためのプラクティス」をみていく。前回までの記事は以下の通り。

[1]ネット発のプラクティスをエンタープライズへ
[2]アプリケーションの改修を迅速にする
[3]単一のコードとして管理し、ツールで自動展開
[4]依存関係はツールで管理し、ライブラリを自動収集