スターロジックは2008年11月19日,業務のワークフローを定義するGUIエディタ「escafeFlowEditor(愛称Buriエディタ)」をオープンソース・ソフトウエア(OSS)として公開した。同社がすでにオープンソース・ソフトウエアとして公開しているワークフロー・エンジン「escafeFlow(愛称Buri:Business Unit Routeing Integration)」向けのエディタで,Adobe AIR版とFlash版がある。同日同社が開催したイベント「ぶり祭り2008」で発表した。

マウスでワークフローを編集

escafeFlowEditorの画面。マウスでアクティビティを配置し矢印でつないでワークフローを定義する。Adobe AIR版とFlash版がある
escafeFlowEditorの画面。マウスでアクティビティを配置し矢印でつないでワークフローを定義する。Adobe AIR版とFlash版がある
[画像のクリックで拡大表示]

 escafeFlowはJavaフレームワークSeasar2上で動作するワークフロー・エンジンである。WfMCが定義したワークフロー定義言語XPDLで記述されたフローに従い,アクティビティ(Javaのコンポーネントなど)を実行していく。ある条件が成立するまで待機したり,ユーザーの入力や承認といったアクションを待ったり,条件に従い分岐したりすることが可能だ。スターロジックの黒枝真氏が開発した。

 escafeFlowEditorでは,アクティビティを表す箱を編集画面上に配置し,その間を矢印でつなぎ,実行条件を設定していくことでワークフローを定義できる。全体を拡大縮小して表示したり,箱の位置を自由に移動させたり,複数の箱を選んで回転させたり,といったことも可能だ。Adobe AIR版とFlash版がある。escafeFlowの公式サイトではFlash版のオンラインデモを試用することができるようになっている。開発したのはスターロジックの松田亮一氏である。

 「一般的な業務システムは,状態を保持するデータを持ちそれをIF文で判定して次の処理を呼び出す。フローの実装がデータ構造とアルゴリズムに分離してへばりついてしまっている」(スターロジック 代表取締役兼CEO 羽生章洋氏)。ワークフロー・エンジンとエディタにより,フローをデータとアルゴリズムから独立させ,処理の順番変更や新しい処理の挿入といった変更が容易に行えるようになる。

30分で業務システムを自動生成する「ギョイゾー!」のコア

ギョイゾー!の「Burix Studio」データ定義画面
ギョイゾー!の「Burix Studio」データ定義画面
[画像のクリックで拡大表示]
ギョイゾー!の「Burix Studio」で自動生成したアプリケーション
ギョイゾー!の「Burix Studio」で自動生成したアプリケーション
[画像のクリックで拡大表示]

 スターロジックではescafeFlowを,同社が展開するシステム構築サービス「ギョイゾー!」で実際に利用している。「ギョイゾー!」は従来は1業務(インフォセットと呼ぶ,1伝票と入力や承認のワークフロー)を最小構成5万9600円で開発するオーダーメイド・システム構築サービスである。5万9600円という低価格で提供できる理由は,escafeFlowにより開発の自動化を徹底しているためだ。この日のイベントでは,来場者の会社の業務をヒアリングしながら,サービス申込システムを30分ほどで作って見せた。

 「ギョイゾー!」でシステム開発に使用するのは,ワークフローに加え,データベースや画面を自動生成する機能を備えた「Burix Studio」と呼ぶスターロジック製ツールである。この日実際に作成して見せたのは,来場者の会社が提供するサービスの申込受付業務システムである。「受け付けたら顧客データを入力して,おっとその前に,データの不備があった場合は…」といった業務の説明を聞きながら,Burix Studio上でワークフローを作成しながら,画面で使用するデータ項目とそのデータ型などの属性を定義していく。ユーザーの権限に応じてデータの表示や非表示,更新権限の有無なども設定できる。

 ひととおり出来上がったら,データベースとJavaプログラム,クライアントのFlash画面を生成する。ノートパソコン上で20~30分ほどで自動生成は終了した。「作るものさえ決まっていれば,オフショア開発よりも圧倒的に安価」と羽生氏は強調した。完成したシステムはPostgreSQLやSeasar2,Flexなど大規模システムでも使われるオープンソース・ミドルウエアの上で稼働する。スターロジックではサーバー機を増強すれば1000ユーザー規模でも使用できるとしている。

 自動生成される画面レイアウトはギョイゾー!標準の定型スタイルだが,ポップアップによる入力候補選択など,これまでのシステム構築の経験から最も使いやすいユーザー・インタフェースを採用したという。閲覧権限のないデータは表示されす,実行権限のない機能のボタンは押せないようになっている。画面にはワークフローも表示され,全体の仕事の中でどの処理を実行しているのかがわかる。生成されたソースコードを変更すれば画面やロジックのカスタマイズも可能だ。

オフショア開発よりも圧倒的に安い

「ぶり祭り」でワークフロー・エンジンescafeFlow(愛称ぶり)を解説するスターロジックの羽生章洋氏
「ぶり祭り」でワークフロー・エンジンescafeFlow(愛称ぶり)を解説するスターロジックの羽生章洋氏
[画像のクリックで拡大表示]

 このような自動生成を可能にしたのは,Seasar2のDI(Dependency Injection)機能により高まったモジュールの独立性,ワークフロー・エンジンによるフローのデータとアルゴリズムからの独立であるという。「メインフレームからクライアント/サーバー,Webへと変遷してきた長い歴史の中で,業務システムは旧態依然のままでアーキテクチャの進化の恩恵に浴していなかった。今のテクノロジできちんと業務システムを作るということを考えた」(羽生氏)結果たどりついたのがこのアーキテクチャである。設計さえ決まれば,1000画面のシステムであっても1日かからず自動生成できるという。「オフショア開発よりも圧倒的に安価」(羽生氏)。

◎関連リンク
escafeFlowEditor
escafeFlow