第3回は、世界標準のビジネスプロセス記述言語「BPEL(Business Process Execution Language)」によって、SOAを実現するコンポーネント「Oracle BPEL Process Manager」について解説する。BPEL Process Managerは、Fusion Middlewareの中でも、特にSOA(サービス指向アーキテクチャ)によるインテグレーションの基盤となるコンポーネントである。
既存のIT資産を生かしてフレキシブルなシステムに移行するには、もはやSOAは必須条件といえる。そのためBPEL Process Managerは、Fusion Middleware上でデータやプロセスのインテグレーションを行う際、中心的な役割を果たすコンポーネントとなる。今回は日本オラクルのシステム事業推進本部 営業推進部 Fusion Middlewareグループ 担当シニアマネージャー、森本信次氏より、BPEL Process ManagerによるWebサービスの統合と、同社のSOA戦略について話を聞いた。
■ BPELとは?
まず最初にBPELという言語について簡単に解説しておこう。BPELとは、XMLベースのビジネスプロセス記述言語だ。「BPEL4WS(Business Process Execution Language for Web Services)」と表記されることもあり、Webサービスの呼び出しやデータ操作といったアクティビティの組み合わせによって、ビジネスプロセスを定義する。実際には、ビジネスプロセスを設計して記述するツールと、記述されたワークフローを実行する環境から構成される。
BPELのベースになったのは、IBMのWSFL(Web Services Flow Language)とMicrosoftのXLANGという言語だが、BPELそのものは2002年にIBM、Microsoft、BEAによって提唱され、その後は標準化団体であるOASISで管理されている。現時点でのワークフロー記述言語としては、BPELが世界標準であるといっても問題はないだろう。
このように、BPELは大手ベンダが中心となって提唱された標準規格ではあるものの、比較的新しい仕様であるため、BPELを正式にサポートした製品はまだ少ないのが現実である。単なるモデリングのツールでBPELをサポートするのは簡単だが、ミドルウェアがBPELのエンジンとなるコンポーネントを実装していなければ、BPELで記述されたモデルは“絵に描いた餅”に過ぎない。つまり、Fusion Middlewareは、BPELのエンジンをミドルウェアのコンポーネントとして内包できる数少ない製品のうちのひとつなのである。
■ SOA基盤としてのFusion Middleware
|
システム事業推進本部 営業推進部 Fusion Middlewareグループ 担当シニアマネージャー 森本信次氏
|
|
BAMの画面イメージ
|
ここまでの連載でも紹介してきたように、Fusion MiddlewareはOracleが提供するSOAの基盤である。そして、BPEL Process Managerは、SOAを実現するためにプロセスとプロセス、あるいはデータとアプリケーションを接続する接続するコンポーネントである。名前の通りBPELをネイティブにサポートし、ビジネスプロセスを記述して、サービスをデプロイするBPELエンジンである。
「SOAはインテグレーション、つまり“何か”と“何か”をつなぐためのアーキテクチャです。プロセスとプロセスをつないだり、Data Hubの中のデータとアプリケーションをつないだりするためには、つなぐための仕組みが必要です。この仕組みをFusion MiddlewareではBPELで実現しています」(森本氏)。
企業の経営層は「これまでのIT投資を無駄にしたくない」と考えるのが普通である。特に日本ではこれまで、独自のアーキテクチャをもつシステムに対して、多額の投資を行ってきた。これらのレガシーシステムで動いているアプリケーションには質の高いものも多く、重要な情報資産となっている。このようなシステムをマイグレーションしたいと考えている企業にとって、SOAは非常に魅力的な提案である。
「先日、講演でレガシーシステム向けのアダプタの話をしたのですが、多くのお客様が興味を持ってくださいました。『たくさんのアダプタが用意されているので、レガシーシステムとの連携も可能です』であったり、『SOAというのはあたらしくWebアプリケーションを作るだけではなく、既存のシステムも生かせます』というと、お客様にはとても受けがいいようです」(森本氏)。
既存の資産の問題と同時に、経営層は将来の変化にも対応できるフレキシブルな仕組みに投資したいとも考えるだろう。このようにBPELという仕組みそのものに対する認知度は低くても、BPELで実現するシステムの連携を望む声は多く、潜在的な市場はとても大きい。なお、現在日本オラクルが提供しているアダプタは250にのぼるという。
さらに、ビジネスプロセスのモニタリング機能を提供する「Oracle Business Activity Monitoring(以下、BAM)」を利用すると、リアルタイムの経営ダッシュボードが提供され、ビジネスプロセスを監視して特定の条件でアラートすることができる。たとえば、取引先からの入金が確認できないであるとか、在庫数以上に商品への注文が殺到しているといったビジネスイベントを、リアルタイムでアラートすることができるのである。
BAMのダッシュボードは経営層向けにビジネスプロセスとビジネスイベントを監視する機能を提供し、KPI(Key Performance Indicator:経営分析指標)への影響をリアルタイムで把握できるようになる。しかも、このダッシュボードから、ビジネスプロセスを修正するといった、是正処置をおこなうことも可能になっている。
■ 標準のテクノロジで統合する理由
BPEL Process Managerは、2004年に米Oracleが買収したソフトウェアベンダであるCollaxaの「Collaxa BPEL Server」をベースに、Fusion MiddlewareとしてOracleのほかの製品と密に連携するように開発された製品である。Collaxaの買収について、森本氏は次のように語っている。
「Collaxaは、BPELを基盤とした製品を早くから導入してきました。Oracleの掲げるホットプラガブル構想からもご理解いただけるように、“プラガブル”であるためには、BPELのような標準的なテクノロジで実現されている必要があります」(森本氏)。
このようにOracle Fusion Middlewareでは、既存のシステムやデータをつなぐための仕組みとして標準テクノロジであるBPELを採用したのである。しかし、BPELは標準のテクノロジではあるものの、まだまだ一般の認知度は低い。そのため、OracleではBPELという名前ではなく、システムをつなぐための仕組みとしてユーザーに提案しているという。
また、統合といっても、その言葉の意味する範囲は非常に広い。EAといった広い視野での統合を意味していることもあれば、単にデータの統合だけを行いたい場合もある。ユーザーの望む統合の形がどのようなものであったとしても、BPELであれば小規模から大規模まで柔軟に対応することができる。
■ ビジネスを可視化する“モデリング”というアプローチ
|
BPEL Process ManagerにおけるBPEL Consoleの画面イメージ
|
ITがひとり歩きをしてしまったために、経営層が自分たちのITインフラがどうなっているのかを把握することができないという声をよく耳にする。個人情報保護法や日本版SOX法などのITに関係する法律の整備が話題となっている現状では、ITのコンプライアンスを実現しなければならないのに、情報システム部門の担当者に長い説明を聞いてもさっぱり理解できないというのである。
逆に情報システム部門では、ビジネスプロセスを理解しているエンジニアが少ないという問題を抱えている。経営層との意識のすり合わせをあいまいにして開発をすすめた結果、経営層が求めるシステムとは異なるシステムになってしまうこともある。
このようなビジネスとテクノロジとの乖離(かいり)は、両者の意識にあわせたコミュニケーション手段がないために起きる。テクノロジを知っている経営者や、ビジネスを理解したエンジニアが企業にいると、比較的プロジェクトは成功しやすい。しかし、そのような人材はあまり多いとはいえないのが現実である。
BPEL Process Managerは、サービスをコンポーネントとして、それらのコンポーネントをアクティビティでつないでいくようにビジネスプロセスを記述していく。ITをビジネスプロセスの観点から設計するため、それぞれのサービスの詳細は抽象化されている、そのため、技術的な知識はそれほどなくても、ビジネスの動きを知っている人物であれば、BPEL Process Managerを使いこなすことができるようになっている。また、サービスを部品として扱うため、足りない部品があると感じた時に、その機能を持ったサービスの開発を情報システムに要求するといったビジネスドリブンなIT投資を可能にする。
さらに、BPEL Process Managerは、非常にビジュアライズされたモデリングツールという側面も持っている。結果としてUMLのアクティビティ図に近いようなモデル図が作成されるため、システム全体をモデルによって可視化できる。そのため、既存の統合化されたシステムに対してリバースエンジニアリングするようにBPEL Process Managerを適用し、現状をモデル化して把握したりするといった使い方も可能になる。このようにBPEL Process Managerは、ビジネスとITとの架け橋的な存在となる機能であるともいえるだろう。
■ 統合による価値を提供するFusion Middleware
あらためてFusion Middleware全体の構成を見なおしてみると、SOAの基盤としていかによく考えられた製品戦略であるかが理解できる。ユーザーにとって最も重要なIT資産であるデータを一元的に管理し、データとアプリケーション、あるいはプロセスとプロセスをBPELでつなぐことができる。そしてパフォーマンスやスケーラビリティを確保するための足回りとしてグリッドコンピューティングがあり、Oracle Enterprise Managerが全体を管理できるのだ。
どれほどの企業がSOAという考え方を意識しているかどうかはわからないが、多くの企業で業務単位や部門ごとにそれぞれ個別に稼動しているシステムを統合したいと考えているのは事実である。システム統合によって管理を効率化したり、サービスの連携によって既存の資産を生かしたりしながら経営的なバリューを手に入れるためである。その手段としてOracleが提供しているのは、Fusion MiddlewareのコンポーネントであるBPEL Process Managerなのである。
次回は、セキュリティ基盤「Oracle Identity Management」を中心としたセキュリティ確保のための取り組みを紹介する。
■ URL
日本オラクル株式会社
http://www.oracle.co.jp/
Oracle Fusion Middleware
http://www.oracle.co.jp/products/middleware/
( 北原 静香 )
2006/02/10 00:12
|