Comments
Description
Transcript
WfMC 標準準拠のワークフローシステム運用基盤の開発 − Nautica
WfMC 標 準 準 拠 の ワ ー ク フ ロ ー シ ス テ ム 運 用 基 盤 の 開 発 − Nautica Workflow − 1. 背景 インターネットの普及に伴い、得意分野を生かした企業間の連携や、 企業内でも部門間の業務システムの連動により、経営の意志決定速度を 向上させたいというニーズが高まっている。その際、既存システムに対 する変更をいかに少なくするかが、システム構築に当たっての課題の一 つである。その解決策として、データを中心として既存システムを緩や かに統合することが注目されている。そして、ワークフローエンジンを 中心としたワークフローシステム運用基盤は、その実現のための重要な 構成要素と認識されている。 企 業 に お け る 「 既 存 シ ス テ ム を 連 携 さ せ IT 資 産 の 高 度 活 用 を 図 り た い」という要求に対する、現状のワークフローシステム運用基盤の問題 点は、以下の4点と考えている。 業務間連携を意識した商用製品は価格が高い。 比 較 的 大 規 模 な シ ス テ ム を 前 提 と す る 等 、稼 働 環 境 が 限 定 さ れ て い る 。 他企業とのシステム間あるいは将来導入するシステムとの相互運用 性に不安がある。 OSS に よ る も の は 、 企 業 に よ る サ ポ ー ト が コ ミ ッ ト さ れ て い な い 。 2. 目的 本プロジェクトは、以下の特徴を持つワークフローシステム運用基盤 を開発することにより、これらの問題を解決する。その結果、日本にお けるワークフローシステム運用基盤の普及、ひいては中堅・中小企業に お け る 経 営 へ の IT 活 用 促 進 に 寄 与 す る も の で あ る 。 OSS に よ る ア プ ロ ー チ OSS の ワ ー ク フ ロ ー シ ス テ ム 運 用 基 盤 を 提 供 す る こ と で 、シ ス テ ム 構築コストの引き下げと、中堅・中小企業に対するシステム開発需要 の拡大を目指す。 システムの稼働環境・規模を選ばない JavaVM の 上 に 構 築 す る た め 、既 存 シ ス テ ム の OS 等 の 稼 働 環 境 に 依 存 し な い ( 制 御 対 象 は 、 Windows シ ス テ ム あ る い は Linux シ ス テ ム 。 EJB の 有 無 は 、 い ず れ も 可 能 )。 ま た 、 小 規 模 な シ ス テ ム か ら 複 1/6 数 の 商 用 AP サ ー バ 上 で 多 数 の EJB コ ン ポ ー ネ ン ト を 利 用 す る よ う な大規模システムまで、既存の様々な規模の業務システムを連携させ ることや、本運用基盤上に様々な適用業務システムを開発することが できる。 WfMC 標 準 へ の 対 応 WfMC 標 準 仕 様 に 準 拠 し 、ワ ー ク フ ロ ー シ ス テ ム 運 用 基 盤 に 最 低 限 必要とされる機能を保証する。なお、ワークフロー定義仕様である WfMC の イ ン タ フ ェ ー ス 1 に つ い て は 、昨 今 の 趨 勢 に あ わ せ 、WPDL で は な く XML 形 式 で あ る XPDL を 採 用 す る こ と と す る 。ま た 、標 準 仕様に対する対応表を作成し、対応機能を明確化する。 企業によるサポート アルゴ21は、ワークフローシステム運用基盤を適用した受託のシ ステム構築では、ワークフローシステム運用基盤を含むシステム全体 を一括サポートする。また、他社より製品への組み込み等のためにサ ポート依頼があった場合に備え、別途サポート付き商用ライセンスも 用意する。 3. 開発の内容 本プロジェクトでは今回、以下の6つの機能について開発を行った。 WFアプリケーション クライアント (文書承認) WFアプリケーション クライアント (経費精算) WFアプリケーション クライアント (サンプルアプリケーション) API API API 外部システム 在庫明細 (在庫管理システム) ワークフロー 運用管理 ツール API 通信インタフェース API ワークフロー エンジン API ワークフロー定義 ツール 外部システム 受注明細 XPDL (販売管理システム) の部分が今回の開発範囲 図1 Nautica の 開 発 範 囲 2/6 ①. ミドルウェアとしてのワークフローエンジン ワ ー ク フ ロ ー 定 義 フ ァ イ ル お よ び 、各 種 API を 通 じ て 得 た 情 報 に 基 づき、アクティビティ及びプロセスの完了状態を管理して、プロセス 変数と遷移条件によりフローの進行を制御する。また、外部システム と の 連 携 の た め の API を 提 供 し 、ア プ リ ケ ー シ ョ ン の 実 行 を 管 理 す る 。 ② . WfMC 標 準 に 準 拠 し た ワ ー ク フ ロ ー API ワ ー ク フ ロ ー エ ン ジ ン が 提 供 す る API。 API の 分 類 と し て 、 ワ ー クフローシステム運用基盤の機能を利用するクライアントアプリケー ション用、外部システムとのアプリケーション連携用、運用管理用、 ワ ー ク フ ロ ー エ ン ジ ン 間 の 連 携 用 な ど 50 以 上 の API を 実 装 し た 。 WfMC 標 準 の 各 イ ン タ フ ェ ー ス は C 言 語 を 想 定 し た 構 成 と な っ て い る た め 、Java 言 語 に よ る 実 装 で は 標 準 イ ン タ フ ェ ー ス 仕 様 に 沿 っ た 機 能 レ ベ ル の 対 応 を 行 う こ と と し 、API と WfMC 標 準 イ ン タ フ ェ ー ス と の 対応表を用意した。 ③. ワークフロー定義ツール GUI に よ り ワ ー ク フ ロ ー を 定 義 す る ツ ー ル 。定 義 を 構 成 す る 要 素 に は 、ア プ リ ケ ー シ ョ ン 、プ ロ セ ス 変 数 、ワ ー ク フ ロ ー 参 加 者 、プ ロ セ ス、アクティビティ、遷移があり、これらの定義作業はマウスを使用 して視覚的に行うことができる。ワークフローの定義は検証を行った 後 、 結 果 を XPDL 形 式 で 保 存 す る こ と が 可 能 で あ る 。 図2 定義ツール画面 ④. ワークフロー運用管理ツール GUI に よ り ワ ー ク フ ロ ー の 実 行 状 況 を 管 理 す る ツ ー ル 。運 用 中 の 任 意のワークフローエンジンに接続し、アクティビティの進行状況のモ 3/6 ニタリングや、プロセス変数の編集と遷移条件の再評価を行うことが できる。 図3 運用管理ツール画面 ⑤. 外部との通信インタフェース 各 種 API を RMI 、Web サ ー ビ ス 、Servlet か ら 使 用 可 能 と す る プ ロトコル変換インタフェース。 ⑥. サンプルアプリケーション ワークフローシステム運用基盤の機能を評価、検証するためのサン プルアプリケーション。申請・承認アプリケーションを模した小規模 なプログラムである。 図4 サンプルアプリケーション画面 4/6 Nautica サ ー バ 動 作 環 境 表1 ハードウェア CPU: Pentium4 2.4GHz 以 上 MEM: 512MB 以 上 HDD: 40GB 以 上 対 応 OS Redhat Enterprise Linux ES V.3 Java VM Sun JRE 1.4.x 相 当 Servlet エ ン ジ ン Jakarta Tomcat 5.0 SOAP エ ン ジ ン Apache Axis 1.2 データベースエンジン MySQL 4.1 表2 Nautica ク ラ イ ア ン ト 動 作 環 境 ハードウェア CPU: Pentium4 推 奨 MEM: 256MB 以 上 HDD: 10GB 以 上 対 応 OS Redhat Professional Workstation V.3 Windows XP Professional SP2 Java VM Sun JRE 1.4.x 相 当 表3 ライセンス形態 ワークフローエンジン本体 LGPL 定義ツール・運用管理ツール GPL サポート等 別途、サポートライセンスを用意 4. 従来の技術(または機能)との相違 従来の製品では、ひとつひとつが高額なオプションとされてきた機能 をオープンソースとして提供するアプローチを行った。また、商用製品 で も WfMC イ ン タ フ ェ ー ス 準 拠 と い う 製 品 は 数 少 な く 、こ れ も 特 徴 の ひ とつである。 WfMC ワ ー ク フ ロ ー 参 照 モ デ ル に 適 応 し た エ ン ジ ン WfMC イ ン タ フ ェ ー ス に 準 拠 し た 50 以 上 の API 複数のエンジン間連携機能を提供 他のシステムを統合するためのツールエージェント機能 複数のプロトコルに対応した通信インタフェース RMI over IIOP、 SOAP Web サ ー ビ ス 、 HTTP Servlet GUI ベ ー ス の XPDL 定 義 ツ ー ル GUI ベ ー ス の 運 用 管 理 ツ ー ル 5/6 5. 期待される効果 ワークフローシステム運用基盤は、ビジネスの流れを管理するための 仕組みを備えている。また、エンジン間連携や他システムとの連携機能 など、これまで高額なオプションとして提供されてきた機能を、オープ ンソースで提供している。これらの特徴からさまざまな形態のシステム に応用が可能であり、一般的な稟議書承認システムのような比較的小規 模なものをはじめとして、既存の業務システム間の統合による新たな企 業システムの構築、企業間の取引とバックエンド業務システムとの結合 等、さまざまな規模のシステムを比較的少ない開発コストで実現するこ とが期待できる。 6. 普及(または活用)の見通し オープンソース開発コミュニティを利用した普及活動 SourceForge.JP を 拠 点 と し た OSS プ ロ ジ ェ ク ト 運 営 メンテナンス、機能拡張の継続 ドキュメントの英訳化などで国際市場にもアピール 雑誌等への積極的な紹介 自社ビジネスへの活用 自 社 製 品 へ の 組 み 込 み ( EDI パ ッ ケ ー ジ 等 ) 受託開発案件への適用を通じて提案力の強化 サポートビジネスの立ち上げ 7. 開発者名(所属) 服部充昭、伊藤宣博、中瀬裕子、伊興田恭介、 沼尻 務、佐原義明、内田玲奈 (( 株 ) ア ル ゴ 2 1 研 究 開 発 セ ン タ ー ソ フ ト ウ ェ ア 工 学 技 術 研 究 部 ) (参考)開発者URL プ ロ ジ ェ ク ト : https://sourceforge.jp/projects/nautica/ 問 い 合 わ せ 先 : [email protected] 6/6