さまざまなプログラミング言語で作成された膨大な既存アプリケーション群があり、これらはサービスとして使用する価値があります。 サービス指向アーキテクチャー (SOA) と WebSphere ESB を使用してこれらのアプリケーションを、ほとんどまたはまったく変更を加えることなく、 サービスとして提供することができます。
既存アプリケーションをサービスとして提供する方法の 1 つとして、 既存アプリケーションのインターフェースを SOA 準拠のインターフェースに 変換する SOA ゲートウェイを作成するやり方があります。この方法では、アプリケーション・コードが分断されないた め、アプリケーションのレグレッション・テストは不要です。 アプリケーションは、既存のインターフェースを介して混乱なく使用し続けることができます が、SOA インターフェースへの変換に起因するパフォーマンス上の影響を受けることがあります。
もう 1 つの方法は、アプリケーションに、その既存インターフェースの他に SOA インタ ーフェースを追加することです。 この方法を使用した場合の方が、SOA インターフェースを変換のオーバーヘッドなしで使用できる ため、良好なインターフェース設計が行われ、全体のパフォーマンスが高くなることがよくあり ます。 新規 SOA インターフェースを使用する場合は、開発リソースとテスト・リソースが必要になり、 新規インターフェースをデプロイするときにサービスの中断が発生することがあります。 デプロイされたアプリケーションは、既存インターフェースまたは新規 SOA インターフェースの いずれかを介して使用できます。
アプリケーションを、再使用可能な SOA コンポーネントに再モデル化して、 それらのコンポーネントを結合して SOA モジュラー・ソリューションにを作り上げることが できます。これにより、アプリケーションがより柔軟になるため、ビジネス・ ロジックの再使用が向上し、SOA 技術や他の最新プログラミング技法を活用することができます。 既存アプリケーションをサービスとして提供するこの方法は、既存のアプリケーションおよび その使用法にかなりの影響を与えるため、一般には、コア・システムに最も適しています。