クライアント型SOAとは
「既存のシステムを活かしたい」とはいったが
これは「会社の業務ノウハウを集約して構築されたシステムであり、このシステム自体は上手く動いているために、下手に手を加えたくない」、もしくは「リプレイスをするにはコストもさることながら、年単位のプロジェクトになり時間的な負担が大きすぎる」といった気持ちが含まれています。つまり、「既存のシステムを活かしたいとはいったが、新たに大きなコストと時間をかけたくない」ということです。
柔軟なSOAを元にしたシステムを構築したいとはいったが
しっかり作りすぎるシステムは柔軟性を失います。しかしながら、しっかり作りこまないと、利用者の要求に応えられないですし、各部門管轄のシステム間連携で企業内のシステムは運営されているために、プロセスなどに問題があったら企業活動に大きな影響をきたします。
この「システムの柔軟性」と「厳密なシステム」の両立といった要求が出てくるのですが、その両立のために、新たな大きなシステムを導入することは、システムのためのシステムとなり、さらなる「システムの継ぎはぎ化」を生みます。
「このSOAのための新しいシステムを大きなコストと時間をかけて構築し、もし成功しなかった場合のリスクがあまりにも大きすぎる」そんな思いで、他社の採用状況を探られている情報システム部門の方も多いのではないでしょうか?
そこで本連載では、コストと時間を極力かけずに実現する新しい「SOA」の手法を中心に、「ソリューションの方向性とソリューションを支える技術概説」、「SOAの実装例と採用効果」を解説します。
現状のSOAソリューションについて
ここでは、現状のSOAソリューションに関して詳しく解説いたしません。一般的なSOAやSOAソリューションに関してはWebページや書籍などで詳しく解説されていますので、そちらをご参考ください。ここではあくまで、ご確認をいただく意味で簡潔に解説します。
SOAの定義
SOAの定義に関しては各社によってかなり差があります。ここでは一般論として記載します。
SOAとはService Oriented Architecture(サービス指向アーキテクチャ)の略です。既設のシステムをいかし、個々のシステムおよび内部の機能を「サービス」という部品として捉え、複数のサービスを利用者のニーズに合わせて柔軟に提供できるシステムを構築するためのアーキテクチャです。
構造的には連携先の異なったアーキテクチャ(インターネットアプリケーション、EDI、レガシーなど)の連携を吸収するためのミドルウェアとその上のコンポーネントが存在するイメージです(図2)。

図2:SOAのシステム・イメージ