段階的システム最適化を実現する5つのパターンの組み合わせ

 日立では、システム最適化のための基本的な適用パターンを5つにモデル化し、そのパターンの組み合わせによって段階的システム最適化を実現する。パターンの組み合わせにより、SOAに基づくシステム構築が実現可能であるとしているところが大きな特徴だ。次に挙げるのがそのパターンである。

  1. 1. ワンストップサービスパターン
  2. 2. ビジネスプロセス自動化パターン
  3. 3. 対話ワークフローパターン
  4. 4. 情報統合パターン
  5. 5. インタフェース統合パターン

 「これらのパターンを組み合わせることで、SOAによる全体最適なシステムの構築が可能」というのが日立の考えだ。これは、換言すれば「SOAによるシステム全体のアーキテクチャは、これらのパターンの組み合わせで説明できる」ということになる。つまり、これらのパターンはアーキテクチャの構成要素に対応していると言えるのである。

SOAシステムのアーキテクチャと処理方式パターン

図2:SOAシステムのアーキテクチャと処理方式パターン

 ここで図2をご覧いただきたい。ESB(Enterprise Service Bus:SOAを前提としたシステム連携ミドルウェア)を軸にして前述のパターンが結合されているのがおわかりいただけるだろう。

 この図を見て、企業システムの統合としてはあまりにシンプルだと受け取る方がおられるかもしれない。しかし、このシンプルさこそが日立の考えるSOAの強みであり、後述する製品群もすべてこのパターンを具現化するという方針の下で設計されている。

 以下、個々のパターンについて説明を加えよう。

1. ワンストップサービスパターン

 このパターンによって解決されるのは、「1人の作業者が、1つの業務プロセスを進めるために複数の業務システムを使い分けており、それゆえ効率が低下したり、ミスが発生したりしている」という問題である。

 こうした問題の根本的な改善には、複数システムを連携させ、作業者に対してはワンストップで処理するサービスを提供することが求められる。実現手段としては、サービスをメッセージで連携するESBで各システムを統合。BPEL(Business Process Execution Language)を用いて業務の流れをビジネスプロセスとして管理、複数サービスを自動的に呼び出しワンストップサービスを可能にする。

2. ビジネスプロセス自動化パターン

 「システム間連携を人手に頼っている」といった状況を改善するのがこのパターンだ。

  • (1)毎日決まった時間にシステムAからファイルをダウンロードする
  • (2)ダウンロードしたファイルをシステムBに転送する
  • (3)システムBの担当者が転送されてきたファイルに対して作業する

 例えば上記のような手作業を自動化するのが同パターンの目的である。手作業の自動化にあたり、既存のシステムに修正が入るのでは、新たに別の課題が発生してしまう。

 この問題に対する解決策は、既存システムを改修することなく、時刻やファイル送信完了などのイベントを契機として処理が自動的に実行されるようにするというものだ。

 実現手段としては、ESBによってプロセスを統合し、ビジネスプロセスを作成。統合システム運用管理「JP1」のジョブ管理機能を利用し、既存システムで発生するイベントを検知。ファイル転送/ビジネスプロセスの実行などを自動化することになる。なお、ファイルアダプタを利用すれば、ファイルから直接ビジネスプロセスにデータを取り込むことが可能である。

3. 対話ワークフローパターン

 上記2つのパターンが「システム→システム」の流れを自動化するのに対し、このパターンは「人→人」の流れをシステム化する。作業者間の連携をシステム化することで、以下のような利点が得られる。

  • 業務の効率化が図れる
  • 作業者間の業務フローが明確になる
  • 作業の進捗状態を把握するのが容易になる

 こうした利点を享受するためには、まず「申請→審査→承認→決裁」という業務の流れを明確にするとともに、人が操作する画面(書類)を設計する必要がある。その実現手段としては、電子フォームとワークフロー・システムを組み合わせることになる。

4. 情報統合パターン

 このパターンでは、複数の業務システムがそれぞれ保持しているデータを統合/活用することで、品質の高いデータを各種サービスに提供することを可能にする。これにより、似て非なるデータベース(以下、DB)や2次情報の増殖によりシステムが変化に追従できない、または経営判断を行ううえで信頼できるデータの品質を確保できないなどの問題を解決する。

 統合すべきデータの用途、アクセス頻度、データ量などの違いに応じて、以下のような3つの手法から適切なものを選択し、情報統合を行うことが効果的だ。

  • さまざまなデータ・ソースから、ETL(Extraction, Transformation and Loading)製品を活用して新たな統合DBを作成。大量データの処理やデータ品質の向上が可能
  • DBを複製して、更新情報のみを定期的に反映。オンライン・サービスの性能確保が可能
  • 複数のDBを仮想的に統合することで、最新情報へのリアルタイムなアクセスが可能
5. インタフェース統合パターン

 最後に紹介するパターンは、「各業務システムがバラバラで、個別のユーザー・インタフェース(以下、UI)を持っているうえに、使い勝手が異なるので作業効率が悪い」というような問題を改善に導くものだ。

 具体的な解決策としては、各業務システムのUIを1つの画面に統合することで、個別のシステムにログインする必要をなくす。また、フロント部分でのデータの受け渡しを可能にする。

 実現手段としては、ポータル画面を作成するためのフレームワークを利用し、各システムへのアクセス部分を統合することになる。

 以上、5つのパターンを紹介したが、最後に1つだけ注記しておきたいことがある。それは、これらのパターンは既存システムに手を加えないことを強く念頭に置いて定義されていることだ。

 これらのパターンを典型的な企業システムに適用した場合、おそらく以下のようにシステム化が行われることになるだろう。

  • 1. ワンストップサービスパターン:既存システムをサービス化し、複数システムをワンストップで処理できるように連携させる
  • 2. ビジネスプロセス自動化パターン:既存システムを改修することなく、イベント契機によってシステム間を連携させる
  • 3. 対話ワークフローパターン:人介在型の業務をシステム化し、ほかのシステムと連携させる
  • 4. 情報統合パターン:既存システムのDBはそのままに、品質の高いデータを各種サービスに迅速に提供する
  • 5. インタフェース統合パターン:フロント部分の情報を統合し、利用者にとって使いやすい統一されたUIを提供する

SOAが注目されている理由の1つが既存システムの活用であることは、もはや疑いのないところだ。その意味で、これらのパターンが、SOA化の効率を上げるためだけでなく、SOAの利点を最大化することも忘れないでほしい。

△ページの先頭に戻る