既 存 資 産 を 活 かす 再 構 築 のポイント ~ SOA 事 例 の 現 場 から ~ 2007/11/19 株 式 会 社 日 立 製 作 所 ソフトウェア 事 業 部 第 2ネットワークソフト 設 計 部 チーフアーキテクト 桐 越 信 一
Contents 1. SOAの 概 要 と 過 去 のSOA 的 な 事 例 2. ユーザ 事 例 (SOA 適 用 方 針 )) 3. ユーザ 事 例 ( 販 売 管 理 購 買 管 理 でのSOA 設 計 )
1 SOAの 概 要 と 過 去 のSOA 的 な 事 例
1-1. SOA 概 要 (の 統 合 ) ポイント SOA(Service Oriented Architecture)とは の 組 合 せ で 全 体 最 適 の 統 合 を 構 築 すること アーキテクチャとして ( 分 散 処 理 業 務 の 部 品 化 ) アプローチとして ( 業 務 プロセスの 可 視 化 の 再 利 用 ) 個 別 の 集 合 体 全 体 最 適 の 統 合 業 務 業 務 業 務 業 務 プロセス ESB 業 務 業 務 3
1-2. SOA 概 要 ( 統 合 のパターン) ポイント SOA(Service Oriented Architecture)の 統 合 には 以 下 の 形 態 がある インタフェースの 統 合 プロセスの 統 合 情 報 の 統 合 業 務 個 別 の 集 合 体 業 務 業 務 新 業 務 業 務 プロセス 最 適 化 (To-Be) インタフェース 統 合 業 務 (オンライン) 業 務 (ワークフロー) プロセス 統 合 業 務 業 務 業 務 (オンライン) 業 務 (ワークフロー) 業 務 (バッチ) 情 報 統 合 4
1-3. SOA 概 要 ( 連 携 アーキテクチャ) ポイント メインフレーム オンライン ERPなどの 既 存 資 産 を シームレスに 連 携 できるアダプタがあること データ 変 換 機 能 や 文 字 コード 変 換 機 能 が 提 供 されること OpenTP1 メイン フレーム の 例 SAP R/3 Oracle EBS メインフレーム オブジェクト ラッパー OpenTP1 メイン フレーム 日 立 MQ WebSphere MQ OpenTP1 アダプタ iwayアダプタ オブジェクト アクセスアダプタ レガシーゲートウェイ ucosminexus Service Platform ビジネスプロセス(BPEL) XML バイナリ 変 換 EBCDIK/KEIS Unicode 変 換 もサポート 5
1-4. SOA 概 要 ( 設 計 形 態 ) ビジネスプロセスモデリング 顧 客 受 注 係 ビジネスプロセス 設 計 BPEL 実 装 注 文 する 受 注 を 処 理 する ビジネスプロセス (コンポーネントベース) モデリング 受 注 与 信 見 積 受 注 受 付 在 庫 引 当 製 造 手 配 出 荷 指 示 A コンポーネント 設 計 (コンポーネント 設 計 ) B Java.NET などでの 実 装 C 6
1-5. 過 去 のSOA 的 な 事 例 ( 組 立 ) 基 幹 ビジネス プロセス SOA ビジネス プロセス 受 付 出 荷 指 示 出 荷 EDI 受 信 データ 組 立 運 賃 計 算 送 品 状 作 成 顧 客 A パラメタa データ 組 立 コンポーネント 運 賃 計 算 コンポーネント 処 理 クラス1 送 品 状 作 成 コンポーネント1 共 通 クラス 共 通 クラス 共 通 クラス 顧 客 B パラメタb 処 理 クラス2 送 品 状 作 成 コンポーネント2 共 通 クラス 7
1-6. 過 去 のSOA 的 な 事 例 ( 組 替 ) AsIs ビジネス プロセス 受 注 輸 出 審 査 出 荷 止 め 出 荷 指 示 出 荷 AsIs 構 成 受 注 受 付 コンポーネント 輸 出 審 査 コンポーネント 出 荷 止 め 管 理 コンポーネント ToBe ビジネス プロセス 輸 出 審 査 出 荷 止 め 受 注 出 荷 指 示 出 荷 ToBe 構 成 輸 出 審 査 コンポーネント 出 荷 止 め 管 理 コンポーネント 受 注 受 付 コンポーネント 8
1-7. 過 去 のSOA 的 な 事 例 (プロセス 連 携 ) 新 規 Java 販 売 生 産 旧 のデータ フォーマットや I/Fを 意 識 したくない 新 規 ERPパッケージ 会 計 人 事 WS WS EAI 的 なHubを 開 発 プロセスシナリオ MQ ftp WS SQL 変 換 コンポーネント データ フォーマット/コード 変 換 既 存 M/F データフォーマットや I/Fを 変 更 したくない 既 存 C/S 9
2 ユーザ 事 例 (SOA 適 用 方 針 )
2-1. 情 報 の 統 合 レイヤ インタフェース 統 合 基 盤 ポータルフレームワーク リッチクライアントなどでの 画 面 統 合 凡 例 赤 字 : 世 の 中 で 一 般 的 に SOA 基 盤 と 称 されるもの : 製 品 を 適 用 BtoB 連 携 基 盤 プロセス 統 合 基 盤 外 部 トランスレータ EAI 連 携 基 盤 SOAビジネスプロセス 制 御 基 盤 (メッセージフロー 型 対 話 フロー 型 ) 各 種 アダプタ OracleEBS,アドオン 機 能 Java,.NET AP M/F 他 パッケージ 情 報 統 合 基 盤 SOA 情 報 統 合 基 盤 Master of Master 用 AP DB 運 用 管 理 統 合 基 盤 運 用 管 理 ツール 11
2-2. 情 報 の 統 合 レイヤ (アーキテクチャ) ユーザインタフェース 統 合 基 盤 ucosminexus Portal Framework リッチクライアント 製 品 凡 例 赤 字 : 世 の 中 で 一 般 的 に SOA 基 盤 と 称 されるもの : 製 品 を 適 用 BtoB 連 携 基 盤 プロセス 統 合 基 盤 外 部 BtoB 連 携 製 品 ucosminexus Service Architect ucosminexus Service Platform ucosminexus Service Coordinator - InteractiveWorkflow ORACLE EBS Java,.NET AP M/F 他 パッケージ 情 報 統 合 基 盤 ucosminexus Information Fusion Master of Master 用 AP DB 運 用 管 理 統 合 基 盤 12
2-3. SOAの 段 階 的 構 築 ESB 既 存 既 存 既 存 既 存 の 改 修 なしで そのままSOA 基 盤 に 接 続 ESB 既 存 既 存 新 規 既 存 の 一 部 を 新 たに 化 してSOA 基 盤 に 接 続 ESB 新 規 新 規 新 規 新 規 に 化 を 図 り SOA 基 盤 に 接 続 13
2-4. 既 存 資 産 の 間 連 携 ( 初 期 ) 販 パッケージ 売, 購 買 管 理 etc パッケージ 原 価 管 理 パッケージ 出 荷 管 理 M/F( 自 社 開 発 ) 自 社 開 発 自 社 開 発 パッケージ 会 計 管 理 パッケージ 生 産 管 理 パッケージ 生 産 管 理 パッケージ 売 掛 買 掛 管 理 パッケージ パッケージ 自 社 開 発 自 社 開 発 14
2-5. 既 存 資 産 の 間 連 携 ( 現 状 ) 販 パッケージ 売, 購 買 管 理 etc 販 パッケージ 売, 購 買 管 理 パッケージ 原 価 管 理 パッケージ 出 荷 管 理 M/F( 自 社 開 発 ) OracleEBS 自 社 開 発 手 作 りによる 保 守 性 の 問 題 他 自 社 開 発 EAI ( 自 社 開 発 ) ftp,mq,データ 変 換 パッケージ 会 計 管 理 パッケージ 生 産 管 理 パッケージ 生 産 管 理 パッケージ 売 掛 買 掛 管 理 パッケージ パッケージ 自 社 開 発 自 社 開 発 15
2-6. 既 存 資 産 の 間 連 携 ( 今 後 ) 販 パッケージ 売, 購 買 管 理 パッケージ 原 価 管 理 パッケージ 出 荷 管 理 新 規 I/F 既 存 I/F OracleEBS 自 社 開 発 自 社 開 発 プロセス 統 合, 情 報 統 合 SOA 基 盤 ESB:Enterprise service Bus パッケージ 会 計 管 理 パッケージ 生 産 管 理 パッケージ 生 産 管 理 パッケージ 売 掛 買 掛 管 理 パッケージ パッケージ 自 社 開 発 自 社 開 発 16
2-7. SOAの 処 理 方 式 パターン パターン1 オンラインクライアント ESB パターン1 オンライン パターン4 情 報 統 合 Webアプリなど ビジネス プロセス アダプタ Webなど 業 務 DB 業 務 DB 統 合 DB パターン2 ワークフロー 業 務 ワークフロー パターン2 ワークフロー 業 務 ワークフロー SOA 情 報 統 合 基 盤 Webアプリ など Webアプリ など 複 数 人 アダプタ 複 数 人 Webアプリ など Webアプリ など パターン3 SOAプロセス 統 合 基 盤 ( 対 話 ワークフロ 型 ) イベントスケジューラ 運 用 管 理 ツール 起 動 用 ユーザ プログラム ( 非 常 駐 ) SOAプロセス 統 合 基 盤 (メッセージフロー 型 ) SOAプロセス 統 合 基 盤 ( 対 話 ワークフロ 型 ) パターン1 パターン2 パターン3 :メッセージフロー 型 : 対 話 ワークフロー 型 :イベントトリガ 型 製 品 ユーザ 定 義 ユーザ 実 装 パターン4 : 情 報 統 合 型 17
2-8. SOA 処 理 方 式 パターンの 適 用 基 準 パターン 概 要 適 用 メッセージフロー 型 対 話 ワークフロー 型 イベントトリガ 型 ビジネスプロセスに 沿 って 各 が 同 期 非 同 期 で 処 理 実 行 されていくような 形 態 ワークフローの 定 義 に 沿 っ て 同 一 が 対 話 型 で 実 行 されるような 形 態 時 刻 指 定 など バッチ 処 理 的 に 外 部 から 起 動 がかかる ような 形 態 在 庫 の 引 当 () 出 荷 指 示 (サー ビス)のように 一 連 のがビジネ スプロセスで 接 続 されるような 部 分 発 注 審 査 処 理 ()において 入 力 審 査 承 認 など 同 一 が 対 話 型 のフローで 処 理 されるような 部 分 バッチ 処 理 でのデータ 抽 出 ~ 各 への 自 動 配 布 など 特 定 時 刻 で 起 動 され るか または 何 かのイベントにより 起 動 さ れ 一 連 の 流 れがシナリオ 化 できるような 部 分 情 報 統 合 型 情 報 そのものが 統 合 される ような 形 態 Master of MasterやHubDBのように マス タの 連 携 や 統 合 を 図 る 必 要 がある 部 分 上 記 パターンの 組 合 せも 存 在 する 18
3 ユーザ 事 例 ( 販 売 管 理 購 買 管 理 でのSOA 設 計 )
3-1. SOA 基 本 設 計 ( 例 : 販 売 ) 統 合 DB 層 共 通 マスタ 売 掛 管 理 受 注 残 在 庫 情 報 業 務 処 理 データ 受 注 売 上 情 報 コンポーネント 層 受 注 受 付 在 庫 引 当 入 庫 製 造 指 示 出 荷 指 示 売 上 計 上 インタフェース 層 または WSDL(Web Service Definition Language) ( 引 当 可 ) 開 始 メッセーシ 変 換 受 注 受 付 在 庫 引 当 ( 引 当 不 可 ) 出 荷 指 示 出 荷 終 了 ビジネスプロセス 層 (SOA 基 盤 ) ESB(Enterprise Service Bus) 入 庫 製 造 指 示 生 産 BPEL(Business Process Execute Language) 進 捗 把 握 ビジネス プロセス ログ 監 査 証 跡 BAM (Business Activity Monitoring) 生 産 計 画 生 産 管 理 出 荷 20
3-2. SOA 基 本 設 計 ( 例 : 販 売 ) 統 合 DB 層 受 注 残 OracleEBS 内 でのDB 連 携 や 共 通 マスタ 人 手 により 業 務 処 理 が 実 現 され ビジネスプロセスが 可 視 化 出 来 ない 部 分 業 務 処 理 データ 在 庫 情 報 受 注 売 上 情 報 売 掛 管 理 コンポーネント 層 受 注 受 付 在 庫 引 当 入 庫 製 造 指 示 出 荷 指 示 売 上 計 上 インタフェース 層 または WSDL(Web Service Definition Language) ( 引 当 可 ) 開 始 メッセーシ 変 換 受 注 受 付 在 庫 引 当 ( 引 当 不 可 ) 出 荷 指 示 出 荷 終 了 ビジネスプロセス 層 (SOA 基 盤 ) ESB(Enterprise Service Bus) 入 庫 製 造 指 示 生 産 BPEL(Business Process Execute Language) 進 捗 把 握 ビジネス プロセス ログ 監 査 証 跡 BAM (Business Activity Monitoring) 生 産 計 画 生 産 管 理 出 荷 21
3-3. SOA 基 本 設 計 ( 例 : 販 売 ) ORACLE EBS コンポーネント (アドオン 部 分 ) 受 注 受 付 在 庫 引 当 入 庫 製 造 指 示 出 荷 指 示 売 上 計 上 インタフェース 層 SOAプロセス 統 合 基 盤 WSDL(Web Service Definition Language) または 連 携 アダプタ 開 始 メッセーシ 変 換 終 了 開 始 受 注 受 付 生 産 開 始 出 荷 指 示 出 荷 入 庫 終 了 メッセージフロー 型 終 了 インタフェース 層 連 携 アダプタにより 既 存 I/Fを 継 承 開 始 対 話 ワークフロー 型 入 力 審 査 承 認 終 了 生 産 計 画 生 産 管 理 出 荷 売 掛 管 理 22
3-4. OracleEBSアクセス 方 式 と 既 存 連 携 ORACLE EBS 受 注 情 報 アドオン 生 産 指 示 (アドオン) API or OpenI/F View or 受 注 受 付 ( 外 部 連 携 ) or iway アダプタ iway アダプタ or DB アダプタ or 生 産 指 示 ( 外 部 連 携 ) WSDL(Web Service Definition Language) 開 始 生 産 計 画 生 産 管 理 受 注 登 録 開 始 メッセーシ 変 換 既 存 データフォーマット 既 存 I/Fを 継 承 する 生 産 指 示 23
3-5. OracleEBSアクセス 方 式 の 適 用 方 針 種 別 iway アダプタ DBアダプタ EBS 内 アドオンAP EBS 外 AP 概 要 OracleEBSとのWeb による 連 携 を 可 能 にするコン ポーネント DBをとして 操 作 す るために 提 供 されたコンポー ネント 対 象 DBや 実 行 SQLを 定 義 し て 利 用 データ 操 作 参 照 可 更 新 可 新 規 開 発 要 可 可 新 規 開 発 要 EBSへのアクセスは Open I/F ( 非 同 期 )または API ( 同 期 ) 適 用 方 針 開 発 工 数 的 には 有 利 新 規 開 発 と 価 格 面 での 比 較 を 検 討 し 利 用 の 可 否 を 決 定 可 不 可 参 照 系 でViewを 作 成 して 利 用 する 可 可 アドオン 部 分 が 存 在 し かつ BPEL とのリアルタイムな 連 携 が 必 要 な 場 合 に 適 用 更 新 系 での 適 用 については アダ プタとの 工 数 費 用 との 兼 ね 合 い で 決 定 24
3-6. 対 話 ワークフローとメッセーシ フロー 連 携 ( 例 : 購 買 ) OracleEBS アドオン or 外 部 AP 対 話 ワークフロー 開 始 入 力 審 査 承 認 終 了 ORACLE EBS 発 注 情 報 ワークフロー 業 務 方 式 1:ワークフロー 業 務 BPEL 連 携 ワークフロー 業 務 から 直 接 BPELを 開 始 方 式 2: OracleEBS BPEL 連 携 (ワークフロー 終 了 後 ) a. OracleEBSの 情 報 を 取 得 してBPELを 開 始 b. BPELを 開 始 してOracleEBSの 情 報 を 取 得 呼 び 出 しI/F Web ( 同 期 ) SessionBean ( 同 期 ) WS-Reliability ( 非 同 期 ) DBキュー ( 非 同 期 ) BPEL 開 始 受 付 25
3-7. 対 話 ワークフローからのBPEL 実 行 ( 方 式 1) ワークフロー 業 務 BPEL 連 携 OracleEBS アドオン or 外 部 AP ORACLE EBS 対 話 ワークフロー 開 始 入 力 審 査 承 認 終 了 or 発 注 情 報 1 業 務 ステップに 関 連 する 作 業 を 実 施 2 最 終 業 務 ステップの 完 了 条 件 をチェック 作 業 実 施 最 終 業 務 評 価 発 注 情 報 ワーク 管 理 3 OracleEBSに 発 注 情 報 を 格 納 ( 発 注 情 報 を ワークフロー 業 務 内 で 保 持 する 場 合 ) 4 BPEL 起 動 処 理 を 呼 び 出 し 終 了 時 処 理 5 要 求 電 文 (XML 形 式 or バイナリ 形 式 )を 作 成 6 BPELを 起 動 BPEL 起 動 同 期 / 非 同 期 BPEL 開 始 受 付 26
3-8. 対 話 ワークフローからのBPEL 実 行 ( 方 式 2-a) OracleEBSの 情 報 を 取 得 して BPELを 開 始 対 話 ワークフロー 開 始 入 力 審 査 承 認 終 了 or ORACLE EBS 発 注 情 報 1~3 (1-1)と 同 様 作 業 実 施 最 終 業 務 評 価 終 了 時 処 理 発 注 情 報 ワーク 管 理 EBS アダプタ or DB アダプタ or 5 ワークフロー 処 理 済 (BPEL 未 処 理 ) 情 報 を 取 得 6 件 数 が1 件 以 上 の 場 合 BPELを 起 動 BPEL 起 動 発 注 情 報 取 得 ( 外 部 連 携 ) 同 期 / 非 同 期 4 JP1/AJSによる 定 時 起 動 JP1/AJS 定 時 起 動 BPEL 開 始 受 付 終 了 27
3-9. 対 話 ワークフローからのBPEL 実 行 ( 方 式 2-b) BPELを 開 始 してから OracleEBSの 情 報 を 取 得 対 話 ワークフロー 開 始 入 力 審 査 承 認 終 了 or ORACLE EBS 発 注 情 報 1~3 (2-a)と 同 様 作 業 実 施 最 終 業 務 評 価 終 了 時 処 理 発 注 情 報 ワーク 管 理 EBS アダプタ or DB アダプタ or 5 BPELを 起 動 BPEL 起 動 発 注 情 報 取 得 ( 外 部 連 携 ) JP1/AJS 4 JP1/AJSによる 定 時 起 動 定 時 起 動 同 期 / 非 同 期 BPEL 開 始 受 付 同 期 発 注 情 報 取 得 6 ワークフロー 処 理 済 (BPEL 未 処 理 ) 情 報 を 取 得 条 件 分 岐 ( 後 続 処 理 ) 7 ( 件 数 1 件 ) のとき 後 続 へ 終 了 28
3-10. 対 話 ワークフローからのBPEL 実 行 方 式 比 較 方 式 BPEL 起 動 起 動 タイミンク 業 務 情 報 の 受 付 BPELに おける 一 括 処 理 備 考 方 式 1 対 話 ワークフロー AP 連 携 業 務 終 了 直 後 BPEL 起 動 時 不 可 ワークフロー 業 務 とBPEL 起 動 処 理 間 に 依 存 関 係 あり 方 式 2 -a イベントトリガ (BPEL 起 動 コンポーネント) 定 時 BPEL 起 動 時 可 BPEL 起 動 コンホ ーネントと 業 務 情 報 取 得 処 理 間 に 依 存 関 係 あり 案 件 がない 場 合 BPELは 起 動 され ない 方 式 2 -b イベントトリガ (BPEL 起 動 コンポーネント) 定 時 BPEL 内 の 取 得 Activity 可 ワークフロー 業 務 BPEL 起 動 処 理 業 務 情 報 取 得 処 理 の 分 離 案 件 がなくてもBPELが 起 動 される (BPELのログが 記 録 される) 29
3-11. 既 存 との 連 携 処 理 OracleEBS アドオン or 外 部 AP 対 話 ワークフロー ORACLE EBS 開 始 ワークフロー 業 務 入 力 審 査 承 認 終 了 発 注 情 報 or 発 注 情 報 発 注 指 示 (BPEL 起 動 ) 1 出 力 先 による 分 岐 : EDI / FAX / PRT 2 発 注 情 報 の 送 信 発 注 (EDI) or ファイル アダプタ BPEL [EDI] 開 始 受 付 条 件 分 岐 発 注 (EDI) 終 了 既 存 フォーマット JP1/FTP TWX-21(VAN) FEP( 通 信 G/W,トランスレータ) 3ファイルの 転 送 30
3-12. 既 存 との 連 携 処 理 OracleEBS アドオン or 外 部 AP 対 話 ワークフロー ORACLE EBS 開 始 ワークフロー 業 務 入 力 審 査 承 認 終 了 発 注 情 報 or 発 注 情 報 発 注 指 示 (BPEL 起 動 ) 1 出 力 先 による 分 岐 : EDI / FAX / PRT 2 発 注 情 報 の 送 信 発 注 (EDI) or ファイル アダプタ BPEL [EDI] 開 始 受 付 条 件 分 岐 発 注 (EDI) 終 了 既 存 フォーマット 既 存 部 JP1/FTP 分 は 一 切 変 更 なし TWX-21(VAN) FEP( 通 信 G/W,トランスレータ) 3ファイルの 転 送 31
他 社 権 利 表 示 iwayおよびiway Softwareは,Information Builders, Inc.の 米 国 およびその 他 の 国 における 登 録 商 標 です Java 及 びすべてのJava 関 連 の 商 標 及 びロゴは, 米 国 及 びその 他 の 国 における 米 国 Sun Microsystems, Inc.の 商 標 または 登 録 商 標 です Oracleは, 米 国 Oracle Corporationの 登 録 商 標 です SOAP(Simple Object Access Protocol)は, 分 散 ネットワーク 環 境 においてXMLベースの 情 報 を 交 換 するための 通 信 プロトコルの 名 称 です WebSphereは, 米 国 における 米 国 International Business Machines Corp. の 登 録 商 標 です SAPは,SAP AGのドイツ 及 びその 他 の 国 における 登 録 商 標 または 商 標 です その 他 記 載 の 会 社 名 ブランド 名 および 製 品 名 は それぞれの 会 社 の 商 標 もしくは 登 録 商 標 です 32