チュートリアル 1: エンタープライズ アプリケーション統合
Microsoft BizTalk Server は、アプリケーション統合とビジネス プロセス管理 (BPM) 用の開発環境とランタイム環境を提供します。 このチュートリアルでは、BizTalk Serverを使用してエンタープライズ アプリケーション統合 (EAI) ソリューションを設定およびデプロイする際のエンド ツー エンドの演習について説明します。
ビジネス シナリオ
Contoso は、コンピューターのハードウェアやソフトウェアを販売するオンライン ストアです。 Contoso は最近、リソース管理用にエンタープライズ リソース プランニング (ERP) システムを購入しました。 このチュートリアルでは、既存の倉庫システムを ERP システムに統合し、倉庫の要求プロセスを自動化するために、BizTalk Server を使用してエンタープライズ アプリケーション統合 (EAI) ソリューションを開発します。
この統合ソリューションには課題がいくつかあります。
メッセージの輸送。 倉庫システムと ERP システムは、2 つの異なるプラットフォームに存在し、メッセージの送受信に異なるトランスポート プロトコルを使用する可能性があります。 このソリューションでは、送信側システムによってサポートされるプロトコルでメッセージを受信し、受信側システムによってサポートされるプロトコルでメッセージを転送できる必要があります。 BizTalk Serverは、メッセージの転送にアダプターを使用します。 BizTalk Server と BizTalk Adapter Pack には多数のネイティブ アダプターが付属しています。 アダプターを追加するには、ベンダーから購入する方法と、BizTalk Server で提供されるアダプター フレームワークを使用して独自に開発する方法があります。 アダプターの詳細については、「BizTalk Serverのアダプター」を参照してください。
メッセージ変換。 メッセージには、XML (eXtended Markup Language)、EDI (Electronic Data Interchange)、区切り文字を使用したファイルなど、多くの種類があります。 BizTalk Server では主に XML を使用します。 ほとんどの場合、受信メッセージはまず XML に変換されます。 このプロセスは 解析と呼ばれます。 送信側では、メッセージを XML から他の種類に変換できます。 このプロセスは シリアル化と呼ばれます。
ビジネス プロセス管理。 ほとんどの EAI シナリオは、メッセージをあるシステムから別のシステムに転送するだけではありません。 通常は、より多くのシステムと複雑なワークフローにかかわっています。 このシナリオでは、倉庫から在庫補充を要求するメッセージが送信されます。ソリューションはメッセージを受信し、要求の総計を確認します。 総計が一定量を超える場合、要求は自動的に拒否され、拒否メッセージが送信されます。それ以外の場合は要求が ERP システムに転送されます。
このビジネス プロセスを説明する図を次に示します。
このチュートリアルでは、BizTalk Server開発ツールを使用して、ビジネス プロセスを設計および展開します。
準備
BizTalk Server 統合ソリューションを作成する前に、次の基本情報を収集する必要があります。
BizTalk Server ソリューションで統合する必要があるアプリケーション/システムの数。 このシナリオでは、ERP と倉庫の 2 つのシステムがあります。
各アプリケーションでサポートされるトランスポート プロトコル。 ソリューションを簡易にするために、両方のアプリケーションでファイルが使用されると想定します。 倉庫システムは、要求をファイルとしてファイル フォルダー内に入れます。 BizTalk Server ソリューションはフォルダーからファイルを取得し、ファイルを処理して、ERP システムが監視する別のフォルダーに要求を入れます。
アプリケーションが使用するメッセージの種類。 ソリューションを簡易にするために、両方のアプリケーションで XML が使用されると想定します。 BizTalk のスキーマは、BizTalk メッセージ内の XML データ構造を定義するドキュメントであり、その目的は、XML メッセージの処理および検証用のテンプレートを作成することです。 BizTalk Server には、BizTalk スキーマを作成できる BizTalk エディターが付属しています。
ビジネス プロセス。 プロセスの説明については、前述しました。
BizTalk Server のアーキテクチャ
ソリューションが BizTalk Server でどのように実行されるかを理解しておくと役に立ちます。 次の図は、BizTalk Serverを介したデータフローを示しています。
(倉庫システムは、要求をファイル フォルダーに入れます。)
BizTalk Server の受信場所には、ファイル アダプターと XML 送信パイプラインが構成されます。 ファイル アダプターは、ファイル フォルダーを定期的にポーリングしてファイルがあるかどうかを確認します。 メッセージが受信されると、BizTalk Server メッセージング エンジンは、メッセージをパイプライン経由で送信します。 要求メッセージは XML 形式なので、この場合は XML 送信パイプラインが使用されます。 XML 送信パイプラインは、メッセージが整形式の XML ファイルであることを確認します。 その後、メッセージはメッセージ ボックス データベースに保存されます。
オーケストレーション エンジンが、メッセージをオーケストレーションで処理する準備ができたと判断すると、オーケストレーションのインスタンスがインスタンス化されます。 メッセージの総計により、オーケストレーション エンジンは要求メッセージか要求拒否メッセージのどちらかをメッセージ ボックス データベースに保存します。
さらに、メッセージ エンジンは、要求メッセージか要求拒否メッセージかで送信ポートを使い分けてメッセージを処理します。 まず、メッセージング エンジンは、メッセージを XML 送信パイプライン経由で送信し、次に、ファイル アダプターを使用して、送信ポートの構成に応じて異なるファイル フォルダーにメッセージを送信します。
(倉庫システムと ERP システムの両方が、指定されたフォルダーを監視してメッセージを取得します。)