Yet another blog…

Inspired by my colleagues Simon and Jörg *) – who are already blogging for while – I’m also planning to inform the world what bothers me at work…
Apart from teaching students the basics of computer science I’m currently interested in BPMN 2.0, the Business Process Model and Notation in its recent version, a widespread OMG Standard for modelling and (potentially) executing business processes.

In particular I’m interested in measuring and improving the quality of BPMN 2.0 Process Models. An essential aspect when dealing with process models and their serialization is that they have to adhere the rules stated in the according Standard specification – which is not as trivial as it seems to be in the case of BPMN 2.0:

The rules and constraints defining how a “correct” – standard compliant – BPMN process has to look like are widespread all over the 538 pages of the Spec. There are class diagrams, figures, tables, excerpts from normative XSD files and hundreds of pages running text – and all these artefacts may contain information about the correct structure, mandatory attributes, allowed types of events in specific conditions, etc. pp.

This complexity itself is rather problematic but the problem is exaggerated by the fact that the spec does not provide a list of all relevant constraints and all the worse is full of errors and ambiguities.

A first step to overcome those issues was to extract and document all defined constraints from the spec and list them – the result was published in the Technical ReportBPMN 2.0 Process Model Serialization Constraints. As the list comprises more than 600 different rules obviously a manual check of all rules is not expedient. So some students and I are currently working on automating the checks of all revealed rules – some first rule implementations will hopefully be publicly available soon.

However, motivated by a discussion with some industry contacts – I am currently evaluating the integration of those automated BPMN constraint checks into the static code analysis suite SonarQube. As I ran and run into various difficulties when doing so I shall provide a small tutorial series of working and extending SonarQube. Both, generally and specifically for my use case.

*) not to forget Stefan who isn’t blogging but twittering here about his PhD project



Filed under Various

4 responses to “Yet another blog…

  1. Pingback: SonarQube – What is it? How to get started? Why do I use it? | Matthias Geiger's Blog

  2. I remember you complaining when I started my blog 😉 Anyways, welcome to the blogoshpere! I’ll add you to my blogroll.

  3. Very cool! I just found your blog and am looking forward to more posts. The one on ethics in academia was very interesting.

    • Hi Felix! And thanks for the compliment and the link! I hope to find some time to add some more posts… but hopefully not more about researches plagiarizing papers 😉

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s