eclipseで業務プロセス図を書こう

はじめに

業務プロセス管理ツールにActivitiというオープンソースのソフトがある。これを使ってワークフローをまわせるようにしたい。まずは業務プロセス図をeclipseで作れるように環境を作る。

環境構築

インストール

eclipseのプラグインにactivitiをインストールする。「ヘルプ」「新規ソフトウェア」からActivitiのリポジトリを追加し、「次へ」をクリックする。

maven-compiler-pluginの3.8.1を使っている場合は以下のようにorg.fusesourceと一部競合するので外してインストールを進める。(maven-compiler-pluginは3.8.0なら大丈夫)

セキュリティ警告が出るが、無視してインストールを続行する。

eclipseの再起動をすればプラグインのインストールは完了。

業務プロセス図の作成

まずはActivitiのプロジェクトを作成する。「ファイル」「新規」「プロジェクト」からactivitiで検索し「Activiti Project」を選択、「次へ」をクリックする。

プロジェクト名を適当につけ、「完了」をクリックする。

次は業務プロセス図を作成する。今度は「Activiti Diagram」を選択して、「次へ」をクリックする。

適当なファイル名をつけて「完了」をクリックする。

すると以下のようなツールが開くので、右端の「パレット」からコンポーネントを選択し描画したりプロパティに値を入力し保存する。

保存した業務プロセス図をテキスト(XML)として開けば、以下のようにワークフローのタスク情報や構成要素の座標や接続情報が作成されていることが確認できる。

<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
  <collaboration id="Collaboration">
    <participant id="pool1" name="申請" processRef="process_pool1"></participant>
  </collaboration>
  <process id="myProcess" name="My process" isExecutable="true">
    <startEvent id="startevent1" name="Start"></startEvent>
    <endEvent id="endevent1" name="End"></endEvent>
    <userTask id="usertask1" name="申請処理"></userTask>
    <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="usertask1"></sequenceFlow>
    <sequenceFlow id="flow2" sourceRef="usertask1" targetRef="endevent1"></sequenceFlow>
  </process>
  <process id="process_pool1" name="process_pool1" isExecutable="true">
    <laneSet id="laneSet_process_pool1">
      <lane id="lane1" name="利用者">
        <flowNodeRef>startevent1</flowNodeRef>
        <flowNodeRef>endevent1</flowNodeRef>
      </lane>
      <lane id="lane2" name="担当者">
        <flowNodeRef>usertask1</flowNodeRef>
      </lane>
    </laneSet>
    <startEvent id="startevent1" name="Start"></startEvent>
    <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="usertask1"></sequenceFlow>
    <endEvent id="endevent1" name="End"></endEvent>
    <userTask id="usertask1" name="申請処理"></userTask>
    <sequenceFlow id="flow2" sourceRef="usertask1" targetRef="endevent1"></sequenceFlow>
  </process>
  <bpmndi:BPMNDiagram id="BPMNDiagram_Collaboration">
    <bpmndi:BPMNPlane bpmnElement="Collaboration" id="BPMNPlane_Collaboration">
      <bpmndi:BPMNShape bpmnElement="pool1" id="BPMNShape_pool1">
        <omgdc:Bounds height="371.0" width="500.0" x="30.0" y="30.0"></omgdc:Bounds>
      </bpmndi:BPMNShape>
(略)

今後は、ここで作成した業務プロセス図をActivitiにロードしプロセスを進捗させたり、Joint.jsを使ってWebブラウザで表示できるようにしていきたい。

タイトルとURLをコピーしました