Les CMMN V1.0
Inhoud: 1. Doel SOTA 2. CMMN (en DMN) in het grote geheel 3. Basisbeginselen CMMN
Een proces is een in de tijd afgebakende opeenvolging van acties met duidelijke oorzaken en gevolgen (via of-poorten e.d.). Wat nu als oorzaak en gevolg, of zelfs de noodzaak van acties (en states) niet duidelijk of bekend ?? Wat nu als het proces zich moet afspelen in een onbekende toekomst? Wat nu als je de procesgang niet wilt afdwingen maar wel hulp wil bieden aan de professional? Uitbreiding van BPM/SOA, van BPMS en ESB en dus van BPMN
Business Logic Encapsulation and reuse
Van strategisch naar operationeel
Flexibiliteit ↔ ondersteuning
Bestaansrecht CMMN Soms moet het proces geen grip hebben op de opeenvolging van acties en mensen die die acties uitvoeren, maar moeten de mensen(triggers/events) bepalen of en welke actie er wordt uitgevoerd. Ondersteunende tool: CMIS
Blog Sandy Kemsley over Dennis Gagne BPMNCMMNDMN ProcessesCasesDecisions ActivitiesEventsRules TransitionalContextualApplied DataInformationKnowledge ProceduralDeclarativeFunctional Token Event Condition Action (ECA) First Order Logic (FOL) There are some grey areas about when to use BPMN versus CMMN, since both are (sort of) process-based. However, the main focus in BPMN is on activities within processes, whereas CMMN focuses on events that impact cases. He showed a chart comparing different facets of the three standards:
Eisen aan een ‘notatie’ Inzichtelijk (readily understandable) voor alle niveaus (business users, analyst,developers) (automatisch) executeerbaar: bridge gap between design and implementation Intechangeable across organizations (via XML representation)
CMMN building blocks
Example 1: Write Document
Example 2: Insurance claim
CMMN BPMN volgens Bruce Silver
Vuistregels voor bepalen notatie: Blog Sandy Kemsley over Dennis Gagne In BPMN, if you have a lot of gateways expressing business logic, then consider moving the gateway logic to DMN In BPMN, if you have a lot of events especially boundary events, then consider encapsulating that portion into a CMMN case In BPMN, if you have a lot of ad hoc subprocesses, then consider using CMMN to allow for greater specification of the ad hoc activities In CMMN, if you have a lot of task interdependencies, consider using BPMN to replace the temporal dependencies with flow diagrams
Example 3: Recruitment
Evolutie van een case? Een case zal bij zijn start eventueel zelfs 100% declaratief zijn, maar zal ook vaak na verloop van tijd ‘patterns’of ‘best practices’ laten zien. => dan kan een deel van de case worden omgezet in een proces (procedureel)
7: Einde / Vragen?