Add Workflow engine
John Wilcox 8 years ago • updated by David Stievenard 3 years ago • 21
One should be able to build custom workflows in GLPI for tasks, changes, requests and so on. Currently you have to follow the built in workflow, which might not always match the real-life process and requirements.
Customer support service by UserEcho
I disagree with you. The GLPi team cares a lot about plugin.
In fact tomolino & vincent already introduced the plugin to our team.
We're very interested add a workflow capability in GLPi, but it's a big work to be done.
Yes, John you are right, but this plugin is mandatory for IT use to my company. We have a running process already: Change Management and we are about to golive with 4 more processes: Mobile Phone Management and User Management (New, Change and Delete).
Current status is that the plugin is compliant with GLPI 0.83 and ProcessMaker 2.5.2, but work is in progress to migrate it to GLPI 0.90 and Processmaker 2.8 and 3.0 (is already compliant with 2.8 and 188.8.131.52).
I hope in the future that it will be integrated into the core. I may work on that as soon as we have finished to upgrade our own GLPI to 0.90
can you give any availability date for your plugin for 0.90 version ? :)
by the way you do great job;
I'm currently working on the migration, but cannot give you any schedule,
keep an eye on the thread :)
Any news regarding version 0.90 and Tomolimo's plugin?
Currently working on some urgent internal tasks, but it's on the way to be out at max for April I believe.
Sorry for being so late.
have you had time to finish your migration ?
Any news about compatibility with glpi 0.90.x ?
I'm preparing the release 2.6 that will be compatible with ProcessMaker server 184.108.40.206 (but only for GLPi 0.83), and the 3.0 release that will be compatible with GLPi 9.1
These releases should be out before end of year (probably in 1 or 2 months)
To give some news: currently preparing new versions that will be compatible with GLPI 9.2 (a version is already existing, but had some bugs) and one for GLPI 9.3
This new ProcessMaker plugin will be compatible with ProcessMaker server 3.3.0
To keep you up to date: ProcessMaker plugin is available and currently maintained for GLPI 9.2, 9.3, 9.4
We have started a comprehensive study for a more global and standardized (in-core, or with official module) workflow system that is based on the current GLPI rules engine but complies with the BPMN 2.0 standard.
We plan to use the following libraries:
- bpmn-js for visualization and administration (creation / editing) processes
- workflower for the BPMN integration flow engine with the GLPI rules framework
It will be possible to graphically define, via flow diagrams, workflow processes directly with GLPI.
bpmn-js seems very good and very nice, and it can read / edit bpmn diagrams exported from ProcessMaker :)...
Workflower: it seems to be nearly dead? Last release is from 31 Jan 2018...
https://github.com/phpmentors-jp/workflower/releases And obviously limited to exclusive gateways :(
As a reference I'll post minimal specifications.
I'm still wondering why trying to include this in the heart of GLPI (if this is the case)
Honnestly, The ProcessMaker plugin makes it easy to integrate a workflow engine in GLPI tickets (since 4 years now...)
We design a bpmn worflow and on top of that we make forms and we are able to automatically create tasks in tickets, and they are routed to who we define in the workflow...
On top of that, I agree with Tomolimo to be a bit sketical with the life of Workflower
Please find below the specifications for a workflow engine integration in GLPI.
As a reminder:
These specifications are the result of 5 years of work in this field (we have started integration of ProcessMaker in GLPI in October 2014).
Currently in our GLPI there are more than 2113 cases (= running processes). Increasing daily with a step of 10 new cases per day...
With 5 different processes:
Plus: Employee on-boarding (not in currently in use).
Specification for a BPMN 2 Process Editor and Workflow Engine for GLPI
Must be using the same technologies than GLPI:
Process Editor features
BPMN 2 diagram (=process map) editor
Localization must be also available when PDF exports are generated for Tickets, Changes and Problems, using the “Print to pdf” export plugin.
Task assignment rules
Possibility to assign a task to a user or to a group of users: static (at task edition) or dynamic (during process execution via a PHP script).
This part describes workflow engine capabilities and interactions with GLPI objects.
Notifications must be by default the GLPI task notifications.
It must also be possible to define notification template that will be used by notifications dedicated per process task and per events:
Also possibility to send spontaneous notifications from a case hook (PHP scripts). These are based on dedicated templates.
Legal point of view about task content modifications
Mandatory point: when done (i.e. case task has been executed by a user), the content of the GLPI object task MUST not be modified. For examples:
Seems difficult to top up Tomolino's post (most epic post on this platform ever !)
I did a quick study of what the market has to offer 1-2 years ago for BPM and here's some information, I'll hope you'll find it usefull
- no or few code to create a new workflow
- no or few code to connect to a 3rd party system
- users should be able to design a workflow without an IT or project manager, IT should come in the loop just to do pure IT tasks, like connect to a db
- should include a visual form editor
- interface should adapt to mobile version (not a mobile app)
- be able to synchronize with AD/LDAP and do authentication and authorization
- able to use OU,groups,users in AD/LDAP
- able to read "manager" attribute in AD and use that data in
- have included connectors to all kind of system to automate a maximum of tasks : this is where the community can step in
- not require to add a full time java developer in the IT team to operate it
- no cost per user / month (or prepare yourself to face what microsoft offers)
- interface to follow on going process linked with user permissions
To answer/add to your post.
Based on my experience on workflows (I've been working in this field for 10 years, even before the ProcessMaker adventure :smiley: ):
1. no or few code: this is like a Graal: impossible to reach: every BPMN applications will promise they reach the Graal, but in fact you'll see that each time, after the process definition, and adding some conditions, you'll need to do some scripts to perform specific actions. At the end it is always a compromise between Functional people and IT people.
2. Same remark than 1.
3. Same remark than 1.
4. ok, in my specs
5. ok, not in my specs, but I totally agree,
6. LDAP synchro: yes and no, for me it should be a GLPI users/groups synchronization. As GLPI is synchronized with LDAP, then workflow engine must be synchronized with GLPI
7. same remark than 6.
8. ok, not in my specs, but I agree
9. ok, not in my specs, but I agree
10. ok, an open source application must be chosen
11. I agree not a full time developer, but see remark 1. You'll ever need a developer
12. ok, not directly expressed in my specs, but can be deducted from them
13. ok, not in my specs, but I agree
I'll add some points in my specs to reflect what you proposed.
You may find a PDF version of the posted specifications here: BPMN 2 Process Editor and workflow Engine for GLPI.pdf
thanks for considering my remarks !
For the 'coding topic', it's indeed that's an impossible target...but let's say some systems are closer to the target then others and for simple processes the development effort should be minimum ideally :-)