「XML」、「SCM(Supply Chain Management)」、「eマーケットプレイス」、これらの要素を含む次世代BtoBの中核を担うのがアプリケーションサーバだ。変化に柔軟に対応できるプラットフォームとして、これからのアプリケーションサーバに求められるものは何か、そしてその開発環境について、IBMのWebSphereを軸に2回に渡って解説していく。
|
BtoBの本質は企業を越えた
システムの統合にある |
2003年には68兆円に達すると見込まれるBtoB市場の形成に向け、各企業のBtoBへの取り組みが本格化してきている。このように急速に拡大するBtoBシステムを構築するために不可欠なのが、社内のシステムの統合、そして社外のシステムとの連携の機能だ。
BtoBの本質は、取引を行う企業の壁を越えてシステムを統合し、1つのSCMを作ることにある。製造業を例にすれば、社外からの注文を反映して自動的に在庫確認が行われ、在庫の状態が社内の生産計画に反映され、生産計画に沿った部材発注が社外へ行われる。社外からの発注というトリガーによって自動的にこうしたアクションが社内のシステム、そして部材メーカーという社外システムに引き継がれている。また、変動するコストなどによって変わる価格や納入条件は、社外のeマーケットプレイスへ通達される。外部の企業はeマーケットプレイスに集まるさまざまな条件を自動的に検索して、自社に適した取引を見つけられる。
BtoBでは、従来のように取引先にファクスや電話で見積を依頼し、納期を確認し、発注書を起票、といった人間が介在する部分をすべてシステム上に移行し、自動化を行うことを目指している。その結果、社外からのリクエストはダイレクトに社内システムに伝えられ、システム内の情報は、社外からでも必要ならば自由に参照可能になる。こうした企業の枠を越えたシステムの連携が実現して初めて、効率を追求したBtoBが実現するのだ。
もちろん、社内のシステムを連携させるシステムの構築ですら容易な作業ではないことは多くの企業で経験されている。BtoBの構築には、それを越えるためにさまざまなテクノロジーが不可欠である。まずはそれらを解説していこう。
EAIはBtoBの前提条件
自社のシステムをBtoBに対応できるようにするには、まず社内のシステムを統合し、そのうえでXMLやHTTPを利用した社外との情報交換を実現する、という2つの課題をクリアしなければならない。
社内システムの統合を実現するには、メインフレームによって構築されたシステムやSAPなどに代表されるERP(Enterprise
Resource Planning)、SCM、SFA(Sales Force Automation)などの基幹業務アプリケーション、DB2やOracleを始めとしたデータベースなど、既存のさまざまなデータソースやシステムとの接続を実現するための、ハブとなるアプリケーションサーバが必要だ。広い意味でのEAI(Enterprise
Application Integration)機能と言ってもよいだろう。当然、このハブは単に接続するだけでなく、情報のフローを制御し、データ・フォーマットを加工/変換し、アプリケーション同士の対話を実現するロジック・エンジンを備えていなければならない。接続の機能としては、具体的には、メインフレームをサポートするためにはMQSeriesのようなメッセージキューイング、CICSやTXSeriesなどのトランザクションサーバとの接続、そしてODBC/JDBCによるデータベースとの接続、CORBAなどのオブジェクト間通信などの機能があげられる。
さらに、データ交換/変換、トランザクション制御、ロジック制御のために、いまやサーバアプリケーションの標準となったJavaのサポートは欠かせない。効率よいアプリケーション開発には、JavaServer
Pages/Java Servlet/Enterprise JavaBeans(EJB)の対応も必要だといえる。当然のことながら、これらに加えて信頼性も、スケーラビリティも要求される。
 |
図 BtoBの2つの課題 |
次世代BtoB、Webサービスを実現するXML、SOAP、UDDI
BtoBを実現するもう1つの課題である社外との情報交換においては、企業間で互いにデータ構造を解釈し交換できるように定義付けする必要もある。それに利用するのがXMLだ。また通信プロトコルにはHTTPやSMTPが主に使われるだろう。
さらに、不特定の企業が参加するBtoBでは、製品コードや、取引のためのデータ構造、情報交換プロトコルなどが業界内で統一されていなければならない。すでに米国の民間企業団体である「RosettaNet」は、半導体や情報機器の受発注をXMLで行うために、上記のような標準化を行っており、米国ではIBMやCisco、Dell、3COM、国内でもNEC、ソニーらが参加して、実際のBtoBを開始している。こうした標準化の動きは他の業界にも及んでいる。
BtoBをより高度にし、さまざまな業界で利用されるには、システム連携がもっと柔軟に利用できるような仕掛けが重要になってくる。現在のBtoBは単に「情報交換」の上に成り立っていると言っていい。しかし今後は、例えば、取引先サイトの「見積用オブジェクト」を呼び出して自社で利用したり、自社で用意している「製品一覧取得用オブジェクト」機能を他社からも利用可能にする、といったインターネットをまたがったオブジェクト呼び出しが実現されようとしている。
これを実現するのがSOAP(Simple Object Access Protocol)とUDDI(Universal Description
Discovery, and Integration)である。SOAPはXMLをベースにリモート環境のサービスを呼び出し、オブジェクトにアクセスするためのプロトコルであり、UDDIはインターネット上から目的にあったサービス(を提供するサイト)を見つけるためのディレクトリである。こうしてインターネット上のBtoBサイトは連携され、ユーザーは処理を指定するだけで必要なサービスを必要な時にJust
in Timeに呼び出し、あとは自動的に処理してくるというのが次世代BtoB、Webサービスの姿である。UDDIは、IBM、Microsoft、Aribaが中心となって策定され、多くの参加企業を得ており、業界標準になることが期待される。
|
BtoBプラットフォームの条件を満たす
WebSphereソフトウェア・プラットフォーム |
メインフレームも含む柔軟なアプリケーション統合機能、さらにXML/SOAP/UDDIなどが次世代BtoBを支えるキーテクノロジーであると紹介した。そして、アプリケーションサーバはこれらを実現するプラットフォームとして進化し続けている。従来のアプリケーションサーバは、Webサーバ+ロジック・エンジンというイメージで捉えられることも多い。しかし、これまでの解説で、アプリケーションサーバこそが次世代BtoB戦略の中核になる最有力候補に位置付けられるということはお分かりいただけるだろう。
こうした次世代BtoBの構築に一貫したアーキテクチャで対応できる統合環境が、WebSphere Application Serverを基盤とする、WebSphereソフトウェア・プラットフォームである。
WebSphere Application Serverは、3階層モデルの中核となるビジネスロジックの基盤を提供するアプリケーションサーバであり、J2EE(Java2
Platform Enterprise Edition)をサポートし、XMLにも対応、現在SOAP/UDDIによるWebサービスのサポートを進めている。さらに、WebSphere
Application Serverはメインフレーム(S/390)からAS/400、Solaris、AIX、HP-UX、WindowsNT/2000、Linuxといった主要なプラットフォームをサポートしており、これらのプラットフォームにまたがったアプリケーションの開発も可能だ。
WebSphere Application Serverの最新バージョンは3.5であり、3つのエディションが用意されている。スタンダード版はセッション管理機能のほか、サーブレットやJSPといった基本機能を提供する。アドバンスド版は、スタンダード版に加えてEJBを実装し、クラスタリング構成が可能である。Webアプリケーションを構成するサーブレットやEJBコンポーネントの設定はWebブラウザ上の運用管理コンソールで行うことができる。またエンタープライズ版は、アドバンスド版同様にEJBをサポートし、TPモニター「TXSeries」、CORBAベースのコンポーネントサーバー「Component
Broker」が加わる。
 |
図 WebSphere Application Serverの構成 |
J2EEに対応するWebSphere Application Server
次世代のBtoBに対する要件は単純なものではないが、そうした要件を満たす次世代BtoBシステムのプラットフォームとして各ベンダーが注目しているのがJ2EE(Java2
Platform Enterprise Edition)だ。J2EEは99年9月に米サンマイクロシステムズが発表した企業システム構築のためのJavaプラットフォームであり、Java2をベースにEJB(Enterprise
Javaeans)、サーブレット、JSP(JavaServer Pages)の3つのサーバーサイドJavaで構成され、これらを利用してアプリケーションを開発するためのインターフェイスが規定されている。Enterprise
Editionとして拡張された部分は基本的にインターフェイスであり、システムが提供する業務処理の中核となるビジネスロジックはアプリケーションサーバ上に実装/構築されていくことになる。
J2EEを利用することの最大のメリットは、従来のCGIでは困難だったトランザクション管理やセッション管理など、Webアプリケーション構築の基本的な枠組みが提供されることにある。また、Javaというオブジェクト技術をベースにしているため、ビジネスロジックをパーツとして開発しておけば再利用が可能であり、さらにJ2EEに対応したアプリケーションサーバならプラットフォームを問わず利用可能である。このようにJ2EEは生産性やポータビリティの点で変化に柔軟に対応できることが次世代BtoBのプラットフォームとして期待されている。
Webアプリケーションにおける3階層モデルのメリット
J2EEを利用したWebアプリケーションは必然的に、「プレゼンテーション(ブラウザ)」、「ビジネスロジック」、「データアクセス」の3つの論理的なブロックが前提となる。この3階層モデルは、クライアント−サーバ型の2階層モデルと比較すると、アプリケーションの変更に対しては、中間のビジネスロジックの変更で対応できるので、クライアントを変更したりインストールし直したりする必要がないというメリットがある。
また3階層モデルは、在庫管理や販売管理といった基幹システム(データベース)の統合という次世代BtoBに必須の要件も満たす。データベースへのアクセスは、JDBCを経由したアプリケーションサーバ上のコンポーネントとして構築するので、基幹システムに変更があっても、ビジネスロジックは最低限の変更で対応できる。データベースへのアクセスを行うコンポーネントはアプリケーションサーバが用意しており、これにトランザクション管理を任せることができる。
スケーラビリティの点でも重要だ。3階層モデルなら、アクセス数に応じてアプリケーションサーバを追加することで負荷を分散させることが可能だ。アプリケーションサーバによっては、ロードバランスに応じて適切にサーバを振り分ける負荷分散機能を備えている。こうしたアプリケーションサーバを用いれば、DNSのラウンドロビンで振り分けるよりも手軽に高度な負荷分散が実現できる。
もちろん、WebSphere Application Serverでもこうした3階層構造のメリットを生かした柔軟性とスケーラビリティを備えている。EJBとサーブレットによりロジックのコンポーネント化が実現でき、さらにプレゼンテーション部分をJSPにまとめることができるため、アプリケーションの変更に対して効率的に、かつ柔軟に対応可能だ。また、WebSphere
Edge Serverは、クラスタによるスケーラビリティの向上を行うためのソフトウェア製品。複数のロードバランス方法を備えており、WebSphere
Application Serverと組み合わせることで大規模なサイトの構築を実現する。
WebSphereソフトウェア・プラットフォームにはこうしたアプリケーションサーバを基盤に、開発環境としてWebSphere
Studio、VisualAge for Javaが用意されており、またビジネスインテグレーションのためのミドルウェア製品群としてMQSeriesファミリーがある。MQSeriesは強力なアプリケーション間連携機能で、複数の企業アプリケーションを統合するハブとしての役割を果たす。また、WebSphere
B2B Integratorは、BtoBの構築に必要なビジネスプロセスの設計などをWebSphere上で容易に行えるようにするミドルウェアである。さらに、BtoBに限らず、BtoCのeコマース・サイト構築のプラットフォームであるWebSphere
Commerce Suiteが用意されている。
これらの製品群は、WebSphere Application Server を軸にソリューションの目的に応じて自由に組み合わせて用いることも可能だ。
次回はこれらWebSphereファミリーのうち、サーバーサイドJavaの統合開発環境を提供するVisualAge for
Javaを中心に具体的なソリューションについて紹介する。
 |
図 WebSphere 管理コンソール画面 |
|