2013-02-13 - BPMN Interchange Validation

30
BPMN Interchange Validation Falko Menge camunda ser vices GmbH 13 Februar y 2013

description

Presentation for the 2nd meeting of the BPMN Model Interchange Workings Group at the OMG. It describes camundas experience with different tools that can be used to validate BPMN process models and diagrams. Falko Menge 13 February 2013

Transcript of 2013-02-13 - BPMN Interchange Validation

Page 1: 2013-02-13 - BPMN Interchange Validation

BPMN Interchange Validation

Falko Menge

camunda services GmbH

13 February 2013

Page 2: 2013-02-13 - BPMN Interchange Validation

1. Creating Reference Models

2. Validation Process

3. Diagram Validation

4. Semantic Model Validation

1. XML

2. BPMN Meta Model

5. Common Interchang Problems

Agenda

Page 3: 2013-02-13 - BPMN Interchange Validation

Which modeling tool to use?

Requirements:

−PNG export

- Symbols close to the BPMN Spec

- No colors

- No shadows

- No 3D icons

−XML export

- Schema-valid

- Conform to BPMN 2.0 Spec

−API for automation of hundreds of test cases

Creating Reference Models

Page 4: 2013-02-13 - BPMN Interchange Validation

Validation Process: Import Only

Page 5: 2013-02-13 - BPMN Interchange Validation

Validation Process: Export Only

Page 6: 2013-02-13 - BPMN Interchange Validation

Validation Process: Roundtrip

Page 7: 2013-02-13 - BPMN Interchange Validation

Diagram Validation

Page 8: 2013-02-13 - BPMN Interchange Validation
Page 9: 2013-02-13 - BPMN Interchange Validation
Page 10: 2013-02-13 - BPMN Interchange Validation
Page 11: 2013-02-13 - BPMN Interchange Validation
Page 12: 2013-02-13 - BPMN Interchange Validation
Page 13: 2013-02-13 - BPMN Interchange Validation
Page 14: 2013-02-13 - BPMN Interchange Validation
Page 15: 2013-02-13 - BPMN Interchange Validation
Page 16: 2013-02-13 - BPMN Interchange Validation

Pixel-based Diff: Transparent Overlay

Page 17: 2013-02-13 - BPMN Interchange Validation

Pixel-based Diff: Example Reference

Page 18: 2013-02-13 - BPMN Interchange Validation

Pixel-based Diff: Example Result with Missing Elements

Page 19: 2013-02-13 - BPMN Interchange Validation

$ perceptualdiff reference.tif vendor.tiff -output diff.ppm

FAIL: Images are visibly different

696 pixels are different

Pixel-based Diff: Perceptual Image Diff

Page 20: 2013-02-13 - BPMN Interchange Validation

ImageMagic: $ compare reference.png screenshot.png diff.png

Pixel-based Diff: ImageMagic

Page 21: 2013-02-13 - BPMN Interchange Validation

Pixel-based Diff: ImageMagic

Page 22: 2013-02-13 - BPMN Interchange Validation

Pixel-based Diff: ImageMagic

Page 23: 2013-02-13 - BPMN Interchange Validation

Pros:

−Spots even slightest differences (could detect encoding problems)

−Open Source tools available: ImageMagic, PerceptualDiff

Cons:

−Too pedantic (we dont want to make all tools look exactly the same)

- Could be solved by re-import to reference modeling tool

−Bounding box detection and cropping needed

- Open Source implementation of algorithm available: camunda fox

Pixel-based Diff: Discussion

Page 25: 2013-02-13 - BPMN Interchange Validation

Can also be used as an overlay to highlight differences in a model

DI-based Diff

Page 26: 2013-02-13 - BPMN Interchange Validation

1. XML Schema validation

2. Check if elements still are present & have same IDs and attributes

3. XML Diff using tools like XMLUnit for Java

−One defines rules of what is considered equal in XML through so-called Difference Listeners

XML Validation

Page 27: 2013-02-13 - BPMN Interchange Validation

1. Load process with EMF meta model provided by the BPMN Spec

- Open Source implementation available: camunda fox quickstart

2. Meta Model Diff

- Open Source implementation available: Eclipse EMF Compare

- Any difference reported is likely to be an interchange problem

Semantic Model Validation

Page 28: 2013-02-13 - BPMN Interchange Validation

Meta model comparison even allows for a graphical diff

Semantic Model Validation

Page 29: 2013-02-13 - BPMN Interchange Validation

Element IDs not preserved

Ordering of DI elements

Node center instead of upper left corner

Unicode Support

Wrong semantic element referenced in DI

Pool references Process

Data Store & Data Object instead of References

Common Interchange Problems

Page 30: 2013-02-13 - BPMN Interchange Validation

Thank you! camunda services GmbH Zossener Str. 55-58 10961 Berlin

Telefon: +49 30 664 0409-00 Telefax: +49 30 664 0409-29

Email: [email protected]

www.bpm-guide.de Blog:

@camunda.com

Consultant, trainer and software developer

Falko Menge

falko.menge

BPMN Interchange Validation

13 February 2013