Thursday, July 25, 2013

Activiti BPM Platformことはじめ3(Activiti Modelerの使い方)

こんにちは。おおたにです。

最近手足口病が流行っていますが、うちの娘も例にもれず手足口病に罹患しました。去年罹患した際はほとんど発疹が出なかったのですが、今年はひどく、お腹/背中を除くほぼ全体に発疹が出ました(手足口以外にも発疹が出るのが今年の特徴らしいです)。大人も感染・発症する可能性があるらしいので、みなさんも気を付けてください。

さて、今回はActiviti Modelerについて紹介しようと思います。Activiti Modelerはブラウザベースのプロセス定義ツールで、Activiti 5.11でActivitiに統合されました。以前はSignavioが提供するActiviti Modelerが利用可能でしたが、現在はKIS BPMのオープンソース版が統合されています。
なお、Activitiのインストール方法、Activiti Explorerの使い方については「Activiti BPM Platformことはじめ(インストール方法とか)」「Activiti BPM Platformことはじめ2(Activiti Explorerの使い方とか)」あたりを参考にしてみてください。

(2014/06/20追記) 「Activiti BPM Platformことはじめ4(レポートを追加してみよう)」 を公開しました。


まずはじめに


予め話しておくと、個人的には実際のプロジェクトでActiviti Modelerを使ったことはありません。プロセス定義ツールとしては、Activiti ModelerのほかにActiviti Eclipse BPMN 2.0 Designer(Eclipseのプラグイン)が使えますが、いつも後者を利用しています。理由としては、以下のとおりです。
  • 大体のプロジェクトではJavaでの実装と絡むことが多いので、Eclipseであれば1ツール(1IDEか)で開発が行える
  • 両ツールのcapabilityを比較したことが無い(ただの怠慢です)。が、Designerの方が以前から開発・メンテナンスされていることから考えると、現時点ではこちらの方が有用だろうと考えている(ただの推測ですすいません…)
  • 実際にエンドユーザに利用してもらうものと捉えると有用に思えるが、BPMN2.0でプロセス定義->即利用、という流れが実際の現場では考えにくい(ワークフロー定義の形については定義しうるが、それに付随するビジネスロジックのキック等を考えるとそこまで含めての実装は現場レベルでは難しい)
ただ、てっとり早くプロセス定義を行ってActivitiを試してみたい、というような用途であれば、わざわざEclipseの開発環境を整える必要もないため、Activiti Modelerを利用する意義があるのではないかと思います。


早速使ってみよう


では、早速使ってみましょう。Activiti Explorer上で新しいプロセスを定義し、デプロイして実際に使ってみるところまでを見ていきます。

1. Activiti Explorerにユーザkermitでアクセスし、プロセス画面に移動して「Model workspace」をクリックします。編集可能なモデルが表示されるので、ここで「New model」をクリックします。

2. モデル名を入力し、編集方法として「Activiti Modeler」を選択して、「Create」をクリックします。(「Table-driven definition」を選択すると、Activiti Kickstartというツールを利用した簡易プロセス定義を行えます。5.12でActiviti Explorerに統合されました)。



3. Activiti Modelerが起動するので、画面右側の展開アイコンをクリックし、プロセス名、プロセスIDを入力します(プロセスIDについてはスペースを含めないようにしてください。デプロイに失敗します)。


4. 続いて、画面左側のツールボックスから必要な部品をD&Dして接続します。今回は簡単な1ステップ承認ワークフローを作ってみましょう。Start event、User task、End eventを以下の図のように接続し、User taskのプロパティを以下のように設定します(やはりIdにはスペースが入らないようにしてください)。Assignmentsは、Value欄の右端の「...」をクリックし、ダイアログ上で設定します。今回はmanagementグループがアサイン候補となるように設定しています。

5. 設定が終わったら、画面左上の保存アイコンをクリックします。確認ダイアログが表示されますが、そのまま保存を行います。


6. 保存に成功すると、Model workspaceに先ほど作成したモデルが追加されます。このモデルをデプロイするには、画面右上のModel actionから「Deploy」を選択します。


7. デプロイに成功すると、以下のように管理画面のDeploymentsに遷移し、作成したモデルがデプロイされていることが確認できます(デプロイに失敗すると、その旨が赤枠のポップアップで表示されます)。

8. 続いて、実際にこのプロセス定義を使って動作を確認してみましょう。以下の画面からプロセス定義名(ここでは「test procecss1」)をクリックします。


9. プロセス定義一覧に遷移するので、このプロセス定義を選択して「Start process」をクリックします。正しく開始できると、その旨がポップアップ表示されます(エラーの場合は赤枠のポップアップが表示されます)


10. タスク画面のQueued→Managementにタスクが1件追加されていることを確認します。これをClaimし、Complete taskすると正常にプロセスが完了すると思います。完了したら管理画面のAdministration→Completed process instancesを確認してみてください。


以上がActiviti Modelerを使ったプロセス定義・テストのとても基本的な流れです。
興味のある方は是非このActiviti Modelerを試してみてくださいね!

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(レポートを追加してみよう)」を公開しました。

Tuesday, July 16, 2013

Espionnage: la FSF deconseille le cloud public, recommande les clouds privés basés sur le libre

Le journal The Guardian a révélé que la NSA (Agence de Sécurité Nationale des États-Unis) dispose d'un accès direct aux systèmes de Google, Facebook, Apple et autres géants de l'Internet, pour espionner les communications qui passent par les États-Unis. John Sullivan, directeur de la Free Software Foundation, conseille d'utiliser des logiciels libres (en cloud privé) plutôt que les clouds publics:

Des intrusions de la vie privée de cette ampleur sont à craindre, quand les gens abandonnent leurs données et logiciels locaux et migrent vers le stockage et les applications en ligne. Les géants come Microsoft, Facebook et Google sont vulnérables aux requêtes du gouvernement exigeant les données des utilisateurs. Pour contrer ce problème, il y a de meilleurs moyens, plus sûrs, de partager des informations en ligne. Les logiciels libres comme GNU MediaGoblin, StatusNet, Diaspora, pump.io, Tahoe-LAFS, FreedomBox et SparkleShare travaillent d'arrache-pied pour créer un monde moins centralisé, un monde dans lequel les utilisateurs maintiennent le contrôle sur leurs données et sur les logiciels qui accèdent à ces données, mais un monde qui est tout aussi pratique et social que son équivalent centralisé.

MediaGoblin: Publication de media. Similaire à Flickr, YouTube, SoundCloud.
StatusNet: Micro-blogging. Similaire à Twitter.
Diaspora, pump.io, Freedombox: Réseau social décentralisé. Similaire à Facebook.
Tahoe-LAFS, SparkleShare, CmisSync: Synchronisation de fichiers. Similaire à Dropbox.
Zimbra: Email. Similaire à Gmail/Calendar.

Wednesday, July 10, 2013

CMIS Workbenchの使い方・デバッグ方法

ご無沙汰しています。linzhixingです。
前回からだいぶ間が空いてしまいましたが、その間主に弊社の自社製品である文書管理プラットフォームNemakiWareを開発していました。

私だけではないと思いますが、開発が面白いとついつい外向けにアウトプットするのを忘れがちになってしまいますね。とくに開発中は弊社内でなかなか活発に利用されているコミュニケーションツールco-meetingにバグや学習したことなどをラフに吐き出してアウトプット欲が満たされてしまっていましたが、今日は「ビールでも呑みながらもっとブログを書こう」という会社イベントにつられて、うっかり書きにきました。

NemakiWareは先日Ver1.0GAをリリースしたばかりで、ブログにするには恰好のとてもホットな話題なのですが、その分重たくもあり、今日は次回見送りです。お酒、呑んでるんで。
その代わり、今回のブログはNemakiWareの開発者なら誰でもマストな、CMIS Workbenchの使い方およびWorkbenchを使ったデバッグについてです。

 

CMIS Workbenchって?

NemakiWareは、Alfrescoなど他の主要なECMと同じく、CMISという共通規格によって文書にアクセスしたり編集したりすることができます。

CMIS規格自体はあくまで規格であり、その実装方法は様々に考えられますが、実装用ライブラリとしてはApache Chemistryがほぼデファクトスタンダードといえるでしょう。そのChemistryが提供する、開発用の簡易的なクライアントがCMIS Workbenchです。

Workbenchには
  • 簡便なクライアント機能
  • 個々のECMリポジトリが正しくCMISを実装しているかユニットテスト
の機能が用意されています。

CMIS Workbenchはこのページから取得できますが、起動方法、デバッグの方法など説明された記事が少ないので(特に日本語!)、ご説明いたします。


インストール

  • このページからOpenCMIS Workbenchをダウンロードします。
  • ダウンロードしたzipを解凍し、中にあるworkbench.sh(WIndowsならworkbench.bat)を実行します。
  • ログインウィンドウが開くので、リポジトリのURLと、ユーザID/パスワードを入力します。リポジトリのURLですが、
    • Alfrescoの場合は、少しややこしいです。リポジトリURLの一部であるリポジトリIDが、インストールされているAlfrescoインスタンスごとに違う値になっているのです。リポジトリURLのテンプレートとしてはhttp://<server address>:<port>/alfresco/cmisatom/<repository id>となります。 <repository id>は、http://<server address>:<port>/alfresco/cmisatomにアクセスすると取得できるXMLファイルにたとえばhttp://127.0.0.1:8080/alfresco/cmisatom/42f4c22f-16dd-4ba8-80b4-9a8a7250fb70/typesなどといったREST形式のURIが複数見つかりますので、そこからわかります。  
    • NemakiWareを繋ぐこともできますが、それはまたNemakiWareについて記事を書いたときに……
  • Load Repository ボタンをクリックし、正しく接続されればボタン下にテキストが表示されます。そのままLoginボタンを押してください。


簡易クライアント機能

  • フォルダ構造をドリルダウンして存在するノードを探索できます。
  • 各ノードに関するメタデータ、カレントユーザが実行可能なアクションなどの表示/実行
  • ノードの作成
  • リポジトリ全体の設定情報
  • CMIS SQL(SQLをベースとしたクエリ言語)
  • チェンジログ
etc.


ユニットテスト(TCK)の実行

 メニューバーにTCK(Test Compatibility Kit)という項目があります。これはCMISサーバがCMIS規格を正しく遵守しているかという観点で書かれたユニットテスト群を実行する機能で、Run TCKボタンを押すだけで実行できます。

ドキュメントのCRUDテストにはそれなりに時間がかかるため、全体でおおよそ20分程度かかることがありますが、必要なテスト項目だけ自分で選択することもできます。
 
CMIS準拠サーバの開発者にとってはもちろん、汎用CMISクライアントから特定のCMIS準拠サーバへの接続ができるかどうか検討するためサーバ側のCMIS準拠度を測る指標としても活用することができるでしょう。


Workbench、とくにTCKのデバッグ (開発者向け)

WorkbenchもJavaアプリケーションなので、デバッグ可能です。とくにTCK部分は単純なJUnitで書かれていて、デバッグは難しくありません。一方、TCKを普通に実行して得られるログ情報はエラー原因の特定に不充分だったり、そもそもTCK自体がExceptionを出してログも出さずそれ以降のテストもスキップということがあるので、TCKをデバッグしながらCMIS実装の不具合を調べるのは、開発者的にはとても有益です。

WorkbenchのEclipseによるデバッグ方法は以下の通りです。
  • まずSVNからApache Chemistry OpenCMISのソースコードを一式取得します。
    svn https://svn.apache.org/repos/asf/chemistry/opencmis/trunk/
  • 依存パッケージをDLしインストールします。
    mvn clean install -Dmaven.test.skip=true
  • Eclipseプロジェクトとして使えるようにします。
    mvn eclipse:eclipse
  • Eclipseにインポートします。
  • org.apache.chemistry.opencmis.workbench.Workbenchクラスを実行すればWorkbenchが実行できます。デバッグ実行も、通常のEclipseのやり方と同様です。
  • TCK関係の各Test Group(BasicTest GroupやCRUD Test Groupなど)に属するテストは、org.apache.chemistry.opencmis.tck.tests以下のパッケージに属します。TCKデバッグにはこのあたりを監視しておけばよいでしょう。

なお、まれにTCK自体にもバグ(というか不適切な仕様というか)があったりするので、もし見つけたらChemistryのJIRAに投稿しましょう!
私の場合、TCK絡みではすでに3件投稿して2件、次期バージョンでFIXされることになりました。ちょっとオープンソースっぽいですね。
NemakiWareもオープンソースで、バグ報告・エンハンスメント等、どなたからでも歓迎しております!

Saturday, June 29, 2013

Windows 8.1 PreviewをVirtualBoxのVMに入れてみたお話し

こんにちは。仕事で使っているノートPCの2nd HDDもSSDに換装したいと日々妄想している大谷です。VMぽんぽん作るので500GBくらいは欲しいですが、3万円もするんじゃちょっと現実的ではないですね、はい。

早速ですが、Windows8.1 Previewが公開されました。色々試してみたいことがあったのでひとまず手元のVirtualBox上のVMにインストールしてみました。1箇所だけインストール失敗ポイントがあったので、備忘代わりに手順をメモしておきます。ちなみに、Oracle VM VirtualBoxはこちらからダウンロードできます。

1. ISOイメージをダウンロードします。こちらからダウンロードできます。

2. VirtualBoxを起動し、「新規」ボタンをクリックして新規VMを作成します。各自の環境に合わせて設定を行ってください。



















 3. (64bit版のみ) VMの作成が終わったら、コマンドプロンプトでVirtualBoxインストールディレクトリに移動し、以下のコマンドを実行します。<VMイメージ名>は、上記スナップショットの例では"Windows 8.1 Preview"となります。イメージ名にスペースが入る場合は""で囲ってあげてください。

  VBoxManage setextradata <VMイメージ名> VBoxInternal/CPUM/CMPXCHG16B 1

このコマンドは、CMPXCHG16Bサポートを有効にするためのコマンドです。Windows 8.1 Previewのシステム要件に64bit版ではCMPXCHG16Bサポートが必要である旨の記述があります。ちなみに、このステップを省略してVMを起動すると、以下のエラーが出てインストールが開始されません。こうなったら潔くVMをシャットダウンしてください。マウスカーソル消えちゃったよ、という人は右ctrlキー押してみてくださいね。

  Your PC needs to restart.
  Please hold down the power button.
  Error Code: 0x000000C4
  Parameters:
  .....



4. 「起動」ボタンをクリックしてVMを起動します。初回起動時にはマウントするISOイメージを聞いてくるので最初にダウンロードしたISOイメージファイルを指定します。うまく読み込めると金魚(!)が出てきます。



5. あとは指示に従ってWindowsのインストールを行うだけです。途中でプロダクトキーを聞かれますので、ダウンロードページに記載されているプロダクトキーを入力してください。何回か再起動したり、アカウント作成したりで、めでたくWindows 8.1 Previewインストールの完了です。


噂通り、スタートボタン復活してますね。ただし、ボタンのみ。メニューは復活してません。まあ、コンテキストメニューから色々できるようになってるみたいですけど。

Tuesday, June 25, 2013

明日Hills Breakfastを司会します

明日6月25日、Hills Breakfastを司会します。
スライド20枚、1スライド20秒、というTEDよりダイナミックな形式の毎月行わるプレゼンテーションイベントです。
私は2010年に発表者として出てから、毎月スライドとPCを操作する役をやってますが、今回は初めての司会。是非観に来てください!

明日も非常に面白そうなプレゼンターが出ます:
  • 中島佳織さんはフェアトレード・ラベル・ジャパンの事務局長としての活動を発表して、
  • トライフ代表取締役手島大輔さんは日本の高齢者の毎日の課題について興味深い話をして、
  • ディジティ・ミニミ代表取締役竹中直純さんはウェブ会社の戦略を明らかにします。
  • 最後に、プロバスケチーム“東京エクセレンス”GM辻秀一さんが皆にスポーツのやる気を入れる予定です!
ニコラ・ラウル

I will perform as the host for Hills Breakfast tomorrow (June 25).
Hills Breakfast is a monthly presentations event, based on the PechaKucha format, 20 slides x 20 seconds, which is faster and more lively than TED's 18 minutes.
I started as a presenter in 2010 and since then I usually operate the PC/projection, but tomorrow will be my first time as MC. Looking forward to see you there!

Tomorrow promises to be very entertaining with:
  • Kaori Nakajima talking about her work at the head of Fairtrade Japan.
  • Paris-based Swedish artist Per Hüttner will bring us in the universe of the OuUnPo project.
  • Daisuke Teshima will enlighten us about the daily problems of the Japanese senior citizens.
  • Naosumi Takenaka will detail his strategies as the founder of a web agency.
  • Finally,  Shuichi Tsuji is sure to passionate the crowd with his speech as the manager of the pro basketball team Tokyo Excellence.
Nicolas Raoul

Monday, June 24, 2013

Activiti BPM Platformことはじめ(インストール方法とか)

こんにちは。最近自動車を買い替えたのですが、買い替え後10日で娘に車内で吐かれて意気消沈気味のおおたにです。

今回は低テンションのままActiviti BPM Platformの事始め的なお話をしようかと思います。


Activitiとは


Activitiワークフロー:チュートリアル(パート1)という記事にもあるとおり、Activiti BPM PlatformとはオープンソースのBPMエンジン(ワークフローエンジン)です。Alfresco社がスポンサーとなっていますが、プロジェクトとしては独立しています。特徴は以下のとおりです。
  • オープンソース(Apache License, Version 2.0)
  • 無償利用可能
  • BPMN2.0ネイティブ対応
  • 軽量(パッケージではなく、バックエンドで組込み的な形で利用されるもの)

例えば、AlfrescoはBPMエンジンとしてActivitiを利用しています。まさに組込みでコアのライブラリを利用しているだけですので、Alfrescoを利用していてActivitiを意識することはまずありません(ユーザは、です。開発者は意識します)。

とはいえ、まず簡単にActivitiを試してみようと思った場合には、スタンドアロンで実行可能な一式のツールが提供されているので、これらを利用してみるとActivitiの機能について理解を深めることができると思います。
  • Activiti Explorer : ActivitiのWebフロントエンド。Activitiの機能を一通り触ることができる。
  • Activiti Modeler : Webベースのプロセス定義管理ツール。プロセス定義の作成・編集・インポート・エクスポート・デプロイなどを行うことができる。現バージョンではActiviti Explorerに統合されている。
  • Eclipse Designer : プロセス定義を作成するためのEclipseのプラグイン(こちらは実際のプロジェクトでも利用可能な開発ツール)。

そこで、本稿ではActivitiのインストール・アクセス方法について説明しようと思います。重要なことなのでもう一度言いますが、Activiti ExplorerはActivitiのBPMエンジンを利用するための必須アプリケーションではなく、あくまでもBPMエンジンを試用してみるためにActivitiが提供している標準的なUIの1つ、ということになります(Activitiの機能を一通り触れるので便利といえば便利なんですけどね)。


Activitiのセットアップに必要なソフトウェアのダウンロードとインストール


Activitiのセットアップには以下のソフトウェアが必要になります。
  • JDK6以降
  • Web Application Server(Tomcat等)
  • Activiti(現在の最新版は5.13)
  • RDBMS(H2以外を利用する場合。MySQL, PostgreSQL, Oracle, DB2など)

JDK6以降

Java SE DownloadsからJDKをダウンロードし、インストールします。筆者はJDK7を利用しています。

Web Application Server

ここではTomcatを使います。Apache Tomcat - Apache Tomcat 7 DownloadsからTomcat7をダウンロードし、適当なディレクトリに展開します。Tomcatを展開したディレクトリを<tomcat_home>と表記します。

Activiti

ここではTomcatを使ここからダウンロードし、適当なディレクトリに展開しておきます。

RDBMS (optional)

デフォルトではH2 Databaseをインメモリモードで利用しますが、その他のデータベースを利用する場合は別途RDBMSをインストールし、Activitiの設定を変更する必要があります(Activiti database setupを参照のこと)。また、H2 Database以外を利用する場合は、対応するJDBCコネクタを入手してクラスパス上にコピーする必要もありますのでお忘れなく。


Activitiのセットアップ


これでActivitiのセットアップの準備ができました。残るはActivitiアプリケーションをTomcatにデプロイするだけです。Activitiモジュールを展開したディレクトリのactiviti-5.13/wars/activiti-explorer.warを<tomcat_home>/webappsにコピーし、Tomcatを起動するだけです。

Tomcatの起動は<tomcat_home>/bin/startup.bat (or startup.sh)をキックするだけです。正常にTomcatが起動したらセットアップは完了です。ちなみに、停止する場合は先ほどのディレクトリのshutdown.bat (or shutdown.sh)をキックします。


動作確認してみよう


セットアップが完了したら、ブラウザでアクセスして確認してみましょう。URLは http://localhost:8080/activiti-explorer/ になります。ユーザはデフォルトでkermit, gonzo, fozzieの3ユーザがデモ用として登録されています(パスワードはユーザ名と同じです)。



ユーザID、パスワードを入力し、以下の画面が表示されたら動作確認完了です。




今回はここまで、実際の使い方などについてはまたの機会にとさせていただきます。
なお、ActivitiのドキュメントはUser Guideに一通りの情報がまとまっています。例えば、Activiti Explorerの説明はこちらに載っていますので、興味がある方は是非Activitiをセットアップし、触ってみてください。

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