I am modeling the process of handling applications. In real life the process is like this:
- Data Entry person takes email (submittal) from mailbox and see if this valid application form or spam / junk email
- If that is valid form, she will create application object in a system and start entering data from form
- As she works through form (it is large) she may save "application" and return to it later
- When all data is entered she will submit application
- After application is submitted few more actions needs to be performed - some files need to be collected and attached to application
- At the end it is send to QA for checking, etc.
The thing is that at any time Data Entry person may click on "Withdraw" in existing system and application will be withdrawn (cancelled).
How this should be modeled using BPMN2?
This is know as modeling an ACID transaction in BPMN2, which is short for: