Declarative Process Models

14 important questions on Declarative Process Models

How do you model in Declare?

You model with symbolic arcs.

Declare captures the notion of rules, in what ways can the rules be statisfied?

- Satisfied: the constraint is satisfied
- Temporarily violated: the constraint is not fulfilled, but can still become fulfilled in the future
- Permanently violated: the constraint is violated and cannot become fulfilled anymore

What are finite state machines and which do exist? Draw.

A finite state machine are representations of regular expressions.
There are different ones
- Initial state: the first state
- Non-accepting state: state in which it can be temporarily or permanently violated
- Accepting state: state in which the constraint is fulfilled/satisfied.
- Transition: change of state.
  • Higher grades + faster learning
  • Never study anything twice
  • 100% sure, 100% understanding
Discover Study Smart

What three unary constraints exist? Explain and draw them.

- Existence (A, n): A has to occur at least n times
- Absence (A, n):  A can occur at most n-1 times
- Exactly (A, n): A has to occur exactly n times (Existence + Absence)

Note: in the roof of the house you see the init and last
- Init(A): activity A has to occur first
- End/Last(A): activity A has to occur as the last activity 

Init and End/Last are position-related
Existence, Absence, and Exactly are numerosity-based

What binary constraints exist? Explain and draw.

- Responded existence(A, B): when A occurs, B has to occur as well (the number of A's and B's is not important, also the order does not matter)
- Co-existence(A, B): when A occurs, B has to occur and vice versa (also here is the number of A's and B's not important)

Note: these are position-agnostic

What alternating ordered constraints exist? Explain and draw.

- Alternate response(A, B): every occurence of A has to be followed by a new occurence of B
- Alternate precedence(A, B): B can occur only after the next occurence of A
- Alternate succession(A, B): both Alternate response(A, B) and Alternate precedence(A, B) hold

What are easy things to memorize the different visualizations in Declare?

Response has a bullet at the beginning.
Precedence has a bullet at the end
Succession has a bullet both at the beginning and at the end

Existence is one line without an arrow
Simple is one line with an arrow top
Alternate has two lines with one arrow top
Chain has three lines with one arrow top
Choice has an (empty) bullet in the middle    
Negatives have two vertical stripes in the middle and always two dots

What negatives constraints exist in Declare? Draw and explain.

- Not co-existence(A, B): A and B cannot occur together
- Not succession(A, B): after A, B cannot happen anymore
- Not chain succession(A, B): B cannot occur right after A

What are Declare models well-suited for?

- Looping behavior: alternating ordered constraints
- Global behavior/Long distance dependencies: chain constraints and executing something n times
- Negative constraints: explicitly specifying what is not allowed

What is an event log?

A set of traces containing events (which are occurrences of activities)

How does declare constraint mining work?

- Check all activities for unary constraints (so the init, last/end, existence, absence, and exactly)
- Then check all pairs of activities for binary constraints
- You should eventually take the constraint(s) that are highest in the hierarchy that hold for all traces
- Then you have a final result, which can be multiple constraints

Note: in exam you will get no negatives

How does Declare Conformance Checking work?

You have a Declare model and a log, with this you check whether the model covers the behavior in the log. You do this by replaying the traces in the event log over the model.

What are the three Declare tools?

The Declare Designer, the Declare Miner, and the Declare Conformance Checking

What is hybrid process modeling?

Hybrid process models (a.k.a. mixed-paradigm) give the best of both worlds. You use a paradigm according to the natur of certain behavior you want to model.
The both worlds are:
- Procedural process models (like petri nets or BPMN): for predetermined sequences, the process is roughly fixed upfront
- Declarative Process Models (like Declare): for flexible processes, where many blanks concerning behavior still need to be filled in

The question on the page originate from the summary of the following study material:

  • A unique study and practice tool
  • Never study anything twice again
  • Get the grades you hope for
  • 100% sure, 100% understanding
Remember faster, study better. Scientifically proven.
Trustpilot Logo