Comments
Description
Transcript
技術参照モデル(TRM)に準拠した データ交換/連携基盤
技術参照モデル(TRM)に準拠した データ交換/連携基盤 5.2. EAI 5.4. SOA マクロソフト株式会社 パブリックセクター ゕジェンダ 1. はじめに 2. TRM におけるデータ交換/連携基盤 3. データ交換/連携基盤を実現するBiztalk Server 2 本資料がカバーする範囲 本資料はTRMの以下の章について準拠することを目的としたものです。 5.2. EAI 章番号 機能・サービス 5.2.2 EAI 5.4. SOA関連 章番号 機能・サービス 5.4.2 ビジネス・プロセス管理 5.4.3 エンタープラズ・サービス・バス 5.4.4 マネジメント 5.4.5 マッシュゕップポータル 5.4.6 ビジネス活動監視 5.4.7 開発環境 5.4.8 サービス・リポジトリ 5.4.9 ゕダプター 3 はじめに 多くのシステムにおいて「変化への対応力の向上」、「開発・保守性の向上」、 「全体最適の実現」といった課題を抱えています。 TRMに準拠したデータ交換/連携基盤を構築する(=EAI/SOAを活用する)こと で、情報システムが抱える各種課題の解決を実現します。 技術参照モデルの目的 利用者の利便性の向上 EAI/SOAによる課題解決例 散在するデータ/サービスを連携・再利用することによる業務効率の向上 疎結合システムによる変化への対応力向上 分離調達における確実なシステム構築 データ連携の集約と可視化による開発・保守性の向上 業務・システムのライフサイクルを 通したトータルコストの最適化 データ連携の標準化とオープンな標準技術の採用による全体最適の実現 調達効率の向上 サービスの再利用による保守性向上と全体最適化へのシフト 4 TRMにおけるデータ交換/連携の定義(EAI) 図5.2-1EAIの概念図 Aシステム Cシステム EAI アダプタ アダプタ Bシステム フ ォ ー マ ッ ト 変 換 ルーティング マッピング定義 フ ォ ー マ ッ ト 変 換 アダプタ アダプタ Dシステム プロセス制御 EAI(Enterprise Application Integration) とは、多種多様なコンピュータシステム群や各種ビジネス パッケージ群をハブ&スポーク型のゕーキテクチャにて連携/統合させ、より戦略的な機能や情報として提 供する機能及びミドルウェゕ/ゕプリケーションパッケージや統合技術のことである。 従来サーバ間で情報交換する手法としては、フゔル転送若しくはメッセージング技術が一般的に考えら れる。しかし情報交換が必要なサーバ数が増加するにつれ、その情報交換の仕組みを個別に開発運用保守 するよりも、その機能を独立させ標準化することが、開発運用保守を考えると効率的であると考え出され たのがEAI である。EAI の処理は非同期処理(疎結合)でなされる形式が一般的である。これはサーバ側 の処理、及びEAI 機能サーバの処理を独立的に非同期で処理させることにより、EAI の処理が滞ること で、接続する各サーバの処理に影響が及ぶことを防止するためである。 5 TRMにおけるEAI機能要件 技術参照モデルによるEAIの機能・サービスの定義 多種多様なコンピュータシステム群や各種ビジネスパッケージ群をハブ&スポーク型のゕーキテクチャに て有機的に連携/統合させ、より戦略的な機能や情報として提供する。 なお、システム接続のために、ビジネスパッケージ群との接続性を容易にするゕプリケーションゕダプタ、 標準的なプロトコルを使った接続性を容易にするテクノロジゕダプタ、はん用機との接続性を容易にする メンフレームゕダプタの1 種類若しくは複数種類のゕダプタ機能を提供する。 技術参照モデルによるEAIの機能要件 フォーマット 変換 接続するシステムやゕプリケーションごとの異なるデータフォーマットや文字コードを変換し、 対応付ける機能を有すること。 ルーテゖング データの内容に応じて、1 つ又は複数の送信先へデータを振り分ける機能を有すること。 ゕダプタ EAI に接続するサーバ側のンタフェース開発負荷を軽減するために用意される各種接続補助 機能を有すること。 プロセス制御 ルーテゖング、フォーマット変換などを組み合わせ、複数のシステムを介した業務プロセスを 自動化する機能を有すること。 マッピング 各システムで扱うデータの項目同士を対応付ける機能を有すること。 6 TRMにおけるデータ交換/連携の定義(SOA) 業務上の1 つの処理に相当するソフトウェゕの機能をサービスと見なし、そのサービスをネットワーク上 で標準化された手順で呼び出せるように連携させてシステム全体を構築していくゕーキテクチャ。現在、 一般的にはWeb サービス技術仕様を用いることが多い。サービスのンタフェースを定義し、ネットワー ク上で連携させてシステム全体の素早い構築及び高いメンテナンス性を可能にする仕組みでもある。 システム管理者や開発者など提供者側にとっても、SOA のマネージメント機能によって、サービスのログ 情報や監視統計情報を収集したり、ゕクセス・ポリシーの設定を行う等の管理を行うことができ、さらに 開発環境によって、ンタフェースとサービスを分離した変化に強いゕプリケーションの開発のための統 合環境が提供されるため、開発が容易になる。 7 TRMにおけるSOA関連機能要件 技術参照モデルによるSOA関連機能・サービスの定義 業務上の1 つの処理に相当するソフトウェゕの機能をサービスと見なし、そのサービスをネットワーク上 で標準化された手順で呼び出せるように連携させてシステム全体を構築していくゕーキテクチャ。 現在、一般的にはWeb サービス技術仕様を用いることが多い。サービスのンタフェースを定義し、ネッ トワーク上で連携させてシステム全体の素早い構築及び高いメンテナンス性を可能にする仕組みでもあ る。 技術参照モデルによるSOA関連機能の機能要件 ビジネス・プロセス管理 複数のサービスの組合せやフロー制御を定義することでサービスとビジネス・プロセスを結合 し、ビジネス・プロセスの実行を支援する。 エンタープラズ・サー ビス・バス 分散ゕプリケーション間でのメッセージの信頼性を保証することにより、サービスの統合を実 現する。 マネージメント サービスを仲介し、セキュリテゖ及びポリシーを管理する。 マッシュゕップポータル フロントエンドゲートウェとしてサービスをマッシュゕップして提供する。 ビジネス活動監視 業務及びプロセスを監視し、SLA やKPI(Key Performance Indicators:重要業績評価指標) と実際のビジネス・プロセスとを関連付け、可視化する。 開発環境 SOA サービス開発のためのIDE 及びゕプリケーション開発フレームワークを提供する。 サービス・リポジトリ/レ ジストリ SOA サービスに関する情報の登録、公開、検索を実現する。 ゕダプタ Web サービスやレガシーシステム、データベース、ERP、バックエンドシステム、カスタムゕ プリケーション及びサービス等との接続を実現する。 Web サービスプロトコル ンターネット標準技術を使用して、異なるプラットフォーム上のゕプリケーションを統合す ることを可能にする仕組みを提供する。詳しくは、「Web サービスプロトコルの機能・サービ ス」参照。 8 TRMで定義されているEAI・SOA関連機能 SOA関連機能 マネージメント 図5.4-1SOA 主要コンポーネントより マッシュアップポータル ビジネス活動監視 開発環境 ビジネス・プロセス管理 サービスレジストリ エンタープライズ・サービス・バス Webサービスプロトコル EAI機能 図5.2-1EAIの概念図より アダプタ アダプタ フ ォ ー マ ッ ト 変 換 アダプター ルーティング マッピング定義 プロセス制御 フ ォ ー マ ッ ト 変 換 アダプタ アダプタ 9 BizTalk Serverがカバーする範囲 SOA関連機能 マネージメント 主要要件をBizTalk & BizTalk ESB Toolkitでカバーします! マッシュアップポータル ビジネス活動監視 開発環境 ビジネス・プロセス管理 サービスレジストリ エンタープライズ・サービス・バス Webサービスプロトコル サービスリポジトリ アダプター EAI機能 BizTalk標準機能でEAI機能要件のすべてをカバーします! 10 BizTalk Serverによる機能要件の解決 SOA関連機能の主要要件をBizTalk & BizTalk ESB Toolkitでカバーします! Cloud Services エンタープラズ・サービス・バス ビジネス活動監視 マネージメント サービスマネージメント ゕダプタ BAM SOAP アダプタ オーケストレーション HTTP アダプタ MQ アダプタ ホスト アダプタ メッセージボックス ビジネス・プロセス管理 BizTalk標準機能でEAI機能要件のすべてをカバーします! ルーテゖング マッピング フォーマット変換 システム メッセージ システム メッセージ システム メッセージ メッセージ 受信アダプタ SOAP アダプタ MQ アダプタ プロセス制御 マッパー オーケストレーション サブスクライブ パブリッシュ FTP アダプタ パブリッシュ ゕダプタ メッセージ ボックス メッセージ 送信アダプタ メッセージ システム File アダプタ メッセージ システム ホスト アダプタ メッセージ システム SMTP アダプタ サブスクライブ 11 Appendix 12 BizTalk Serverの特徴 オールインワンの汎用連携ミドルウェア 多種多様なデータ連携ニーズにワンパッケージ&リーズナブル価格でお応えし ます。 既存システムを有効活用できます。基本的に接続先システムに手を加える必要 はございません。 特定ゕプリの連携ツールとしてスモールスタートし段階的にSOA/ESB基盤へ 発展できます。また、外部連携にも活用できます。 フロントエンド製品との相互運用性 使い慣れたOffice製品を入出力ツールとして利用できます。 ポータル製品のOffice SharePoint Serverと容易に連携できます。 Dynamics CRMと容易に連携できます。 GUIベース&統合化された開発環境 ゕコンをつないでデータ連携を定義。開発/保守を迅速かつ容易に行なえま す。 連携仕様&ビジネスプロセスを見える化できます。 開発環境をVisual Studioに一本化。開発やメンテナンス時のUI&操作の平準 化を図れます。 13 BizTalk Server機能概要 多種多様な連携ニーズにオールインワンでお応えします。 • • • 連携機能の集約 豊富な連携手段を標準提供。多種多様な連携ニーズにマルチプロトコル/マルチフォーマットでお応えします。 接続先システムのインターフェイス仕様に合わせた実装が可能です。既存システムに手を加える必要はございません。 既存システムと共存し資産を有効活用できます。また、既存システム機能をWebサービスでラッピングして活用で きます。 IBM z/iSeries SAP Peoplesoft RFID Siebel EDIFACT , AS2 各種アプリ連携 HL7 SWIFT RosettaNet , CEDI 各種プロトコル対応 各種データフォーマット対応 SOAP XML HTTP/S CSV FTP 固定長 SMTP TEXT SQL Server POP3 Record MQ Office連携 各種DB連携 Excel InfoPath File Server Oracle DB2 BizTalk Serverを使うことにより、既存資産の有効活用や新システム・標準技術への接続対応を迅速かつ低コストで実現 できます。また、サービス連携に必要な機能を標準装備しているため、SOAやESBの基盤としても利用できます。 14 BizTalk Server機能概要 GUIツール(Visual Studio)を使って設計/開発できます。 • • • • • 連携の見える化 データ連携、プロセス、実行制御の定義をGUIベース(部品の組み合わせ)で行えます。 複数サーバをまたがっての条件分岐、ループ、並列処理などの実行制御が可能です。 受信したメッセージのデータ変換/加工(構造変換、フィルタリング、マッピング、関数)を容易に行えます。 BizTalk上で作成したプロセスは、部品化して他システムや業務における再利用が可能です。 論理プロセスと物理的な接続先の設定(通信プロトコルやアドレスなど)を分離することにより、高い柔軟性を実現 します。 コーディングイメージ GUIツール利用イメージ public void CSVtoXML(string csvfile,string xmlfile) { string row = string.Empty; string[] data; using (StreamReader csvRr = new StreamReader(csvfile, Encoding.UTF8)) { using (XmlTextWriter xmlWr = new XmlTextWriter(xmlfile, Encoding.UTF8)) { xmlWr.WriteStartDocument(); xmlWr.WriteStartElement("EmpRoot"); xmlWr.WriteStartElement("EmpRecord"); while ((row = csvRr.ReadLine()) != null) { data = row.Split(','); xmlWr.WriteElementString("EmployeeNo", data[0]); xmlWr.WriteElementString("Name", String.Concat(data[2],data[1])); xmlWr.WriteElementString("DeptName", data[3]); xmlWr.WriteElementString("Kousin_data", DateTime.Now.ToShortDateString()); } xmlWr.WriteEndElement(); xmlWr.WriteEndElement(); GUIツールを使うことで開発の生産性と保守性を高めます。また、連携仕様の見える化により属人化やコミュニケーション xmlWr.WriteEndDocument(); ギャップを極力回避できます。さらに、作成したプロセスはサービスとして汎用的に再利用することが可能です。 } } 15