Calculate several understandability metrics of BPMN models. BPMN stands for business process modelling notation and is a language for expressing business processes into business process diagrams. Examples of these understandability metrics are: average connector degree, maximum connector degree, sequentiality, cyclicity, diameter, depth, token split, control flow complexity, connector mismatch, connector heterogeneity, separability, structuredness and cross connectivity. See R documentation and paper on metric implementation included in this package for more information concerning the metrics.

This package is written to calculate several understandability metrics of a BPMN model using R and to test whether a relationship is possible in a BPMN model

See R documentation and paper on metric implementation for more information concerning this package.

Metrics which can be calculated:

- Size (function size_bpmn())
- Number of empty sequence flows (function empty_sequence_flows(doc))
- Number of duplicate tasks (function duplicate_tasks())
- Number of pools (function pools())
- Number of data objects (function data_objects())
- Number of swimlanes (function swimlanes())
- Number of message flows (function message_flows())
- Density (function density_bpmn())
- Coefficient of network connectivity (function coefficient_network_connectivity())
- Average connector degree (function avg_connector_degree())
- Maximum connector degree (function max_connector_degree())
- Sequentiality (function sequentiality())
- Cyclicity (function cyclicity())
- Diameter (function diameter())
- Depth (function depth())
- Token split (function token_split())
- Control flow complexity (function control_flow_complexity())
- Connector mismatch (function connector_mismatch())
- Connector heterogeneity (function connector_heterogeneity())
- Separability (function separability())
- Structuredness (function structuredness())
- Cross Connectivity (function cross_connectivity())
- Extended cyclomatic metric of McCabe(function cyclomatic_metric())

The following new features and bug fixes are applied:

- one metric is added: the cyclomatic metric of McCabe (see paper for more information)
- the way path logs are calculated is improved in order that the function will not get stuck in an infinite loop
- time limits are added to the creation and generation of path logs
- the function parameters are made more user-friendly
- functions are added to check whether relations are present in the model such as a directly follows relationship