This document summarizes Dario Nascimben's presentation on creating a flexible workflow using Flowable. It discusses the need for flexibility in knowledge-intensive tasks where not all cases can be predefined. It presents a taxonomy of flexibility, including flexibility by change, underspecification, deviation, and design. It then describes how Dario created custom tasks in Flowable by defining stages as JSON objects, allowing flexibility while still tracking progress. This approach decouples the real process from the software-embedded process and provides benefits like rapid development and support for CMMN standards.
3. Problem
- Working with knowledge intensive tasks
- Humans, not computers,make decisions
- Models cannot cover all the cases
- Models might not be so mature
- Use something that users understand
- Audit the case
- User not familiar on OMG standards
4. But still
- We want the system to be process aware
- We want to be able to record when the process deviates
- We want to support the users on suggesting what to do
- We want to track the progress of the case in real time
6. Plan
1. Build a systems that is highly flexible
2. Get the feedback from the users
3. Understand where flexibility don’t make sense
7. Type of Flexibility
(M.H. Schonenberg, R.S. Mans, N.C. Russell, N.A. Mulyar and W.M.P. van der Aalst)
Flexibility
Flexibility by
change
Flexibility by
underspecification
Flexibility by
deviation
Flexibility by
design
16. How we did it – Creating stages
Stage 1
Check 1
Check 2
Check 3
Check 4
Stage 2
Check 1
Check 2
Check 3
Check 4
Stage 3
Check 1
Check 2
Check 3
Check 4
Every stageis contained
in a JSON object
17. Benefits of Flowable Work
- Create business applicationseasy and fast
- Allow rapid development
- Low code
- Great debugging capabilities
- Best support for CMMN
- REST APIs