オープンソースのワークフローActivitiを動かしてみた
Activitiってなに?
ワークフロー、承認フロー、仕事の流れ、業務フローを設定して制御してくれるエンジン。 これによってこのワークフローの仕組みを0からプログラミングすることがなくなる便利なツールです。 このようなツールは各メーカーが販売をしてますが、このActivitiはフリーで提供しています。
ワークフローってなに?
業務の流れのこと、例えばある社員が家族旅行で会社を休むことになったとします。会社を休むことを会社に伝える必要があるので、ここで休暇申請を行います。申請書に日程や必要事項を記入し会社に提出します。 この時にいきなり会社(社長)に提出するわけではなく、企業によってルールが存在します。社員はまず自分の直属の上司の室長へ申請書を提出します。室長は押印をして課長へ、課長は部長へ、部長から総務へそして出張申請が承認されます。(休暇申請にしてはややこしすぎる感はありますが。笑)
このような「流れ」を「フロー」と呼びワークフローや業務フローなどいろいろな呼び方をされているようです。
期待すること気になることActivitiに何ができるのか知りたい。
Activitiを使用するにあたり以下のようなことを期待しました。
- ワークフローシステムを簡単に作れるようになること。工数がかからないこと。
- ワークフローが変更になったときにメンテナンスが簡単にできること。
- Activitiを使えることがビジネスのアドバンテージになること。
気になること。
- 他社有償のパッケージに比べて劣るところはなんだろう、許せる範囲だろうか。
- エンタープライズ版のAlfresco Activitiがあるが、フリーだと何が足りないのだろうか。
- 特殊なパターンのワークフローは作れるのだろうか。
とりあえず環境作ってみよう。
触ってみないと実感わかないのでとにかくトライトライ!
- 以下のページからダウンロードします。
(この記事の作成時はactiviti-5.18.0.zipが最新です)
参考までにActivitiのページ。 http://activiti.org/ のトップメニューにもDownloadページへのリンクがあります。
2. ダウンロードしたファイルを解凍すると、「activiti-5.18.0\wars」フォルダの中にある「activiti-explorer.war」をデプロイします。
- tomcat7\webappsフォルダはいかに配置します。
- Tomcatを起動します。
- ブラウザを起動してhttp://localhost:8080/activiti-explorer/にアクセスします。
以下のような画面が表示されます。
3. ユーザー名パスワードを入力しログインします。
ユーザー名パスワードは以下です。
- 申請者:fozzie
- 承認者:gonzo
- 管理者:kermit
5. 休暇申請のサンプルがありますので使ってみます、ヘッダ部分のプロセスをクリックすると、以下のような画面が現れます。
6. 右上のプロセスの開始ボタンをクリックすると以下のような画面が現れます。
7. 必要事項を入力しプロセスの開始ボタンを押します。
ここでモチベーション欄はいったい何を書こうか悩んでしまいますね。
8. gonzoさんでログインすると、待機中に1と表示されているのが確認できます。
9. 待機中をクリックすると、選択メニューが現れるのでステータスに1が表示されている、Managementをクリックします。
12. 真ん中あたりの Do you approve this vacationのプルダウンめにゅーから
ApproveまたはRejectを選択します。
13. タスクの完了を押します。
14. 12で却下すると申請者に以下のような画面が現れます。
もう一度申請するか聞いています。
このように使っていくのですが、休暇申請の流れとしてはとてもシンプルで不満が残るサンプルでした。