Tuesday, July 23, 2013

Activiti BPM Platformことはじめ2(Activiti Explorerの使い方とか)

こんにちは。つい先日Pentax Qを衝動買いしてしまったおおたにです。ボーナスで買ったつもりだったのですが、数期前からボーナス月が6月から7月に変わっていたことに後から気付き(つまりまだ出てない)、査定に戦々恐々しております。あ、むしろボーナス貰えたとしてそこからどれくらい小遣いが出るかも重要なのか!とか色々悶々としていますが、買ってしまった以上、元を取るべくじゃんじゃん写真撮っていくしかないですね。ひとまず試し撮りしたものを貼っておきます。


というわけで、今回はActivitiというBPMエンジン(ワークフローエンジン)について、標準で付いてくるツールの使い方について説明しようと思います。なお、インストール方法については「Activiti BPM Platformことはじめ(インストール方法とか)」に書いてありますので参照してください。以下の内容はこの記事に従ってActivitiがインストールされていることを前提としています。また、以下の内容は現時点での最新バージョンである5.13に基づく記事となっています。


Activiti Explorer


まずはActivitiが標準で用意しているGUIであるActiviti Explorerを見てみましょう。ローカルPCでアプリケーションサーバが稼働しているとして、http://localhost:8080/activiti-explorer/ にアクセスし、ユーザIDとパスワードを入力します。まずはユーザkermitでログインします(パスワードもkermitです)。

タスク画面

ログインすると以下の画面が表示されます。もしくは画面上部の「Tasks」をクリックすると表示されます。この画面では、ユーザに関わるタスクを確認することができます。


 この画面で確認できるタスクは以下のとおりで、これら一覧画面でタスクをクリックすると、そのタスクの詳細が表示されます。
  • Inbox : 自分がアサインされているタスク
  • My Tasks : 自分がオーナーのタスク
  • Queued : 自分が所属するグループがアサイン候補となっているタスク
  • Involved : 自分が関係するタスク
  • Archived : 完了済みのタスク
少し補足すると、タスクには、担当者がアサインされているもの(Inboxに表示)、担当者は未アサインだが特定のグループがアサイン候補となっているもの(Queuedに表示)、担当者は未アサインだが特定のユーザ(複数可)がアサイン候補となっているもの(Involvedに表示)があります。なお、アサイン候補というのは、指定のグループもしくは複数ユーザに対して、そのうちの誰か1人が担当者としてタスクを処理する、というものです。例えば、Managementグループがアサイン候補になっているタスクは、KermitもしくはGonzoが担当者としてこのタスクを引き取り、処理を行う必要があります。この、タスクを引き取る(自分を担当者にアサインする)処理を「クレーム」と呼びます。

タスク詳細画面では、以下のようなことが行えます。
  • 期限、優先度、概要の確認や変更(クリックするとインライン編集できます)
  • オーナーや担当者の変更
  • クレーム処理
  • サブタスクの追加や確認
  • ファイルの添付
  • フォームへの情報の入力や、承認/却下/完了等のアクションの実行
  • アクティビティストリームの表示やコメントの追加(画面右側のEvents欄)

プロセス画面

画面上部の「Processes」をクリックするとプロセス画面が表示されます。


この画面では以下のことが行えます。
  •  My instances : 自分が開始したプロセスの確認とプロセスのキャンセル
  • Deployed process definitions : 利用可能なプロセス定義の確認とプロセスの開始、編集可能なプロセス定義への変換
  • Model workspace : 編集可能なプロセス定義の確認と、プロセス定義の新規作成・インポート・編集など
Model workspaceでは、Activiti Modelerというツール(Activiti 5.11でActiviti Explorerに統合されました)を使い、ブラウザ上でプロセス定義の作成や編集を行うことができます。Activiti Modelerについては別の記事で取り上げる予定です。

レポート画面

画面上部の「Reports」をクリックするとレポート画面が表示されます。


この画面では、レポート定義とそれに従ったレポートの確認、レポート条件の保存とその呼び出しが行えます。レポート定義についてはまた別の機会に説明したいと思います。

管理画面

画面上部の「Manage」をクリックすると管理画面が表示されます。


 この画面は管理者向けの画面で、以下のことが行えます。
  • Database : データベースのテーブルに格納されたデータの閲覧
  • Deployments :プロセス定義のデプロイ、アンデプロイ、確認
  • Active Processes : 現在利用可能なプロセス定義の確認、利用停止
  • Suspended Processes : 利用が一時的に停止されたプロセス定義の確認、利用停止の解除
  • Jobs : 現在実行中のジョブ
  • Users : ユーザ設定
  • Groups : グループ設定
  • Administration : DB設定の確認や現在回っているプロセス・既に完了したプロセスの確認


基本的には、プロセス画面のDeployed process definitionsからプロセスを開始し、各ユーザがタスク画面でタスクを処理するという流れになります。例えば、デフォルトで登録されているVacation requestのワークフローを実行してみましょう。

1. 「Processes」→「Deployed process definitions」をクリックし、「Vacation request」を選択して「Start process」をクリックする


2. プロセス開始フォームに情報を入力し、「Start process」をクリックする



3. Vacation requestプロセスはManagementグループがアサイン候補となっているので、クレーム処理を行います。Managementグループのユーザ(kermitもしくはgonzo)でログインし、「Tasks」→「Queued」→「Management」をクリックし、Handle vacation requestタスクを選択し、「Claim」をクリックします。


4. 自分が担当者になるので、「Inbox」内のHandle vacation requestタスクを選択し、ApproveもしくはRejectを設定して「Complete task」をクリックします。


以上でVacation requestプロセスの処理が完了です。完了したプロセスは管理画面の「Administration」→「Completed process instances」で確認することができます。



今回はActiviti Explorerの簡単な紹介をしてみましたが、是非実際に触ってActiviti BPM Platformを試してみてもらえればと思います。 次回はActiviti Modeler周りについて紹介できればと思います。

 (2013/07/25追記) 「Activiti BPM Platformことはじめ3(Activiti Modelerの使い方)」を公開しました。
 (2014/06/20追記) 「Activiti BPM Platformことはじめ4(レポートを追加してみよう)」を公開しました。

No comments: