SLIDE 29 Fallbeispiel PICTURES
Constraints und Resultat
Constraint für PassengerList
context WFPoint::enter(parent : Workflow) : OclVoid pre:
- - Lokale Definition der PassengerList als PL
let PL:WorkflowPart = parent.element(’PassengerList’) in
- - Wenn der aktuelle Punkt der Stopppunkt der PassengerList ist,
self = PL.stopPoints->first() implies
- - soll die Dauer auf 13000ms begrenzt werden
let plStart:WFPoint = PL.startPoints->first() in let plStop:WFPoint = PL.stopPoints->first() in parent.getDurationBetween(plStart, plStop) <= 13000
Resultat
21:56:22 INFO : Initialization 21:56:23 INFO : Starting stream evaluation... 21:56:24 INFO : Violation of constraint PassengerListDuration [...] 9 points traversed, 15 model constraints, 0 invalid constraints. 117 constraint checks performed, 1 constraint violations (0.85%) 3302 milliseconds elapsed.
Andreas Textor (FH Wiesbaden) Monitoring mittels modellbasierter Constraints
29 / 31