クライアント型SOAとは
SOA採用のメリット
前述のようにビジネス・プロセスに合わせて、接続元のシステムのサービス(機能)を抜き出し、組み換え、サービスを提供するために、従来のシステムのように、既存のシステムや個別の組織・業務フローに特化した固定的なソフトと比較し、利用者やビジネス・プロセスに合わせて組み合わされたサービスを向上させるために、非常に柔軟かつ生産性が高いシステムが構築できます(図3)。
よって、SOAを用いたシステムでは下記のメリットがあります。
- 接続モジュールなどのシステムレベル部品の再利用性の向上
- 既存資産/システムの再利用性の向上
- 業務手順の設計・開発の容易化・迅速化
SOA実装のポイントについて
SOAの実装にあたって、一般的に以下のことがポイントとされています。
- 対象サービスの選定と、エコシステム(循環システム)の策定
- サービスの粒度(サービス内容の深さ)
- 段階的導入(短期、中期、長期での適用範囲の確定)。まずはSmall Startが大事
- システム開発方法・運営方法の策定
- プロジェクト遂行組織、参加部門・メンバーの策定
- プロジェクトの運営方針と運営計画の立案
つまり上記のポイントはプロジェクトが長期に渡ることを前提に述べられているのです。大事な基幹システムと連携するシステムなので、しっかり計画して、きっちり運営しましょうということです。
現状のSOAソリューションの問題点
実際にSOA実装の提案依頼をした情報システム部門の方でしたら、おわかりになると思いますが、現状の手法でのSOAプロジェクトは、想像以上に重いプロジェクトであり、まるで、新規に大きな基幹システムを導入するようなイメージです。
ここまでも解説してきたとおり、SOAソリューションの問題点は、コストと時間です。この2点がクリアになれば、SOAが持つ利点である「生産性の向上」と「システムの柔軟性の確保」を実装という形で、ユーザ企業に受け入れられると考えています。
今までもシステム開発に投資を重ね、その投資したシステムをさらにいかすために、さらなる大型の投資をしましょうというのでは、ユーザ企業の経営者は納得するはずもありません。
クライアント型SOA
ここでは、サイオが提唱する「クライアント型SOAソリューション」を例にして解説します。
この「クライアント型SOAソリューション」の狙いは、コストと時間のセーブです。その実現のために、原則として既存のサーバシステムには一切手を加えません。すべてクライアント側だけでSOAを実現します。
クライアント側だけで実現した場合に発生するクライアント側のメンテナンスとサーバとの接続をローコストかつ、手軽に行うことができるのは独自の技術が存在しているからです。
この独自の技術により、従来のサーバ型のSOAのシステムと比較して、3年間のTCOを1/5にセーブできた実績がございます(その実例に関しては次回以降で解説させていただきます)。
クライアント型SOAとは
クライアント型SOAとは、クライアント側でサービスの統合および組み換えを実現したライトウェイトな新しいSOAの実装形式です。まずは、システム・イメージを解説いたします。
クライアント型SOAでは、SOAクライアントを利用者側のクライアント環境に設置します。このSOAクライアント上で各接続先のサーバとの接続用のコンポーネントや各プロセス・コンポーネントおよびデータ変換コンポーネントを設置し、SOAクライアントが動作するイメージです。各コンポーネントはコンポーネント配信用Webサーバが、プッシュもしくはプルでコンポーネントを配信します(図4)。