Strategies for Modeling Complex Processes Using Colored Petri Nets

  • Wil M. P. van der Aalst
  • Christian Stahl
  • Michael Westergaard
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7480)


Colored Petri Nets (CPNs) extend the classical Petri net formalism with data, time, and hierarchy. These extensions make it possible to model complex processes as CPNs without being forced to abstract from relevant aspects. Moreover, CPNs are supported by CPN Tools—a powerful toolset that supports the design and analysis of such processes. The expressiveness of the CPN language enables different modeling approaches. Typically, the same process can be modeled in numerous ways. As a result, inexperienced modelers may create CPNs that are unnecessarily convoluted and bulky. Using a running example and a set of design patterns, we show how to solve typical design problems in terms of CPNs. By following these guidelines, it is possible to create succinct, but also comprehensible, models. In addition, we present some new features supported by CPN Tools 3.0 (e.g., priorities and real time stamps) and show how the software can be used for performance analysis (i.e., comparing design alternatives using simulation).


Colored Petri nets Design patterns CPN Tools 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    van der Aalst, W.M.P.: Interval Timed Coloured Petri Nets and their Analysis. In: Ajmone Marsan, M. (ed.) ICATPN 1993. LNCS, vol. 691, pp. 453–472. Springer, Heidelberg (1993)CrossRefGoogle Scholar
  2. 2.
    van der Aalst, W.M.P.: Process Mining: Discovery, Conformance and Enhancement of Business Processes. Springer, Berlin (2011)zbMATHGoogle Scholar
  3. 3.
    van der Aalst, W.M.P., de Crom, P.J.N., Goverde, R.R.H.M.J., van Hee, K.M., Hofman, W.J., Reijers, H.A., van der Toorn, R.A.: ExSpect 6.4 An Executable Specification Tool for Hierarchical Colored Petri Nets. In: Nielsen, M., Simpson, D. (eds.) ICATPN 2000. LNCS, vol. 1825, pp. 455–464. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  4. 4.
    van der Aalst, W.M.P., ter Hofstede, A.H.M., Kiepuszewski, B., Barros, A.P.: Workflow Patterns. Distributed and Parallel Databases 14(1), 5–51 (2003)CrossRefGoogle Scholar
  5. 5.
    van der Aalst, W.M.P., Mooij, A.J., Stahl, C., Wolf, K.: Service Interaction: Patterns, Formalization, and Analysis. In: Bernardo, M., Padovani, L., Zavattaro, G. (eds.) SFM 2009. LNCS, vol. 5569, pp. 42–88. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  6. 6.
    van der Aalst, W.M.P., Stahl, C.: Modeling Business Processes: A Petri Net Oriented Approach. MIT Press, Cambridge (2011)zbMATHGoogle Scholar
  7. 7.
    Alexander, C.: A Pattern Language: Towns, Building and Construction. Oxford University Press (1977)Google Scholar
  8. 8.
    Baeten, J.C.M., Basten, T., Reniers, M.A.: Process Algebra: Equational Theories of Communicating Processes. In: Cambridge Tracts in Theoretical Computer Science, 1st edn. Cambridge University Press (December 2009)Google Scholar
  9. 9.
    Balbo, G.: Introduction to Generalized Stochastic Petri Nets. In: Bernardo, M., Hillston, J. (eds.) SFM 2007. LNCS, vol. 4486, pp. 83–131. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  10. 10.
    Dumas, M., van der Aalst, W.M.P., ter Hofstede, A.H.M.: Process-Aware Information Systems: Bridging People and Software through Process Technology. Wiley & Sons (2005)Google Scholar
  11. 11.
    Fokkink, W.: Introduction to Process Algebra. Springer, Berlin (2010)Google Scholar
  12. 12.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Professional Computing Series. Addison Wesley, Reading (1995)Google Scholar
  13. 13.
    Genrich, H.J., Lautenbach, K.: System modelling with high level Petri nets. Theoretical Computer Science 13, 109–136 (1981)MathSciNetzbMATHCrossRefGoogle Scholar
  14. 14.
    Girault, G., Valk, R. (eds.): Petri Nets for Systems Engineering: A Guide to Modeling, Verification, and Applications. Springer, Berlin (2003)Google Scholar
  15. 15.
    van Hee, K.M.: Information System Engineering: a Formal Approach. Cambridge University Press (1994)Google Scholar
  16. 16.
    Hohpe, G., Woolf, B.: Enterprise Integration Patterns. Addison-Wesley Professional, Reading (2003)Google Scholar
  17. 17.
    Jensen, K.: Coloured Petri Nets. In: Brauer, W., Reisig, W., Rozenberg, G. (eds.) APN 1986. LNCS, vol. 254, pp. 248–299. Springer, Heidelberg (1987)Google Scholar
  18. 18.
    Jensen, K.: Coloured Petri Nets. Basic Concepts, Analysis Methods and Practical Use. EATCS monographs on Theoretical Computer Science. Springer, Berlin (1996)zbMATHCrossRefGoogle Scholar
  19. 19.
    Jensen, K., Kristensen, L.M.: Coloured Petri Nets – Modelling and Validation of Concurrent Systems. Springer, Berlin (2009)CrossRefGoogle Scholar
  20. 20.
    Jensen, K., Kristensen, L.M., Wells, L.: Coloured Petri Nets and CPN Tools for Modelling and Validation of Concurrent Systems. International Journal on Software Tools for Technology Transfer 9(3-4), 213–254 (2007)CrossRefGoogle Scholar
  21. 21.
    Kummer, O., Wienberg, F., Duvigneau, M., Schumacher, J., Köhler, M., Moldt, D., Rölke, H., Valk, R.: An Extensible Editor and Simulation Engine for Petri Nets: Renew. In: Cortadella, J., Reisig, W. (eds.) ICATPN 2004. LNCS, vol. 3099, pp. 484–493. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  22. 22.
    Ajmone Marsan, M., Balbo, G., Conte, G., Donatelli, S., Franceschinis, G.: Modelling with Generalized Stochastic Petri Nets. Wiley series in parallel computing. Wiley, New York (1995)zbMATHGoogle Scholar
  23. 23.
    Merlin, P., Faber, D.J.: Recoverability of Communication Protocols. IEEE Transactions on Communication 24(9), 1036–1043 (1976)zbMATHCrossRefGoogle Scholar
  24. 24.
    Milner, R., Tofte, M., Harper, R., MacQueen, D.: The Definition of Standard ML. The MIT Press (May 1997)Google Scholar
  25. 25.
    Mulyar, N., van der Aalst, W.M.P.: Patterns in Colored Petri Nets. BETA Working Paper Series, WP 139. Eindhoven University of Technology, Eindhoven (2005)Google Scholar
  26. 26.
    Mulyar, N., van der Aalst, W.M.P.: Towards a Pattern Language for Colored Petri Nets. In: Jensen, K. (ed.) Proceedings of the Sixth Workshop on the Practical Use of Coloured Petri Nets and CPN Tools (CPN 2005), Aarhus, Denmark. DAIMI, vol. 576, pp. 39–48. University of Aarhus (October 2005)Google Scholar
  27. 27.
    Rozinat, A., Mans, R.S., Song, M., van der Aalst, W.M.P.: Discovering Simulation Models. Information Systems 34(3), 305–327 (2009)CrossRefGoogle Scholar
  28. 28.
    Rozinat, A., Wynn, M., van der Aalst, W.M.P., ter Hofstede, A.H.M., Fidge, C.: Workflow Simulation for Operational Decision Support. Data and Knowledge Engineering 68(9), 834–850 (2009)CrossRefGoogle Scholar
  29. 29.
    Trčka, N., van der Aalst, W.M.P., Sidorova, N.: Data-Flow Anti-patterns: Discovering Data-Flow Errors in Workflows. In: van Eck, P., Gordijn, J., Wieringa, R. (eds.) CAiSE 2009. LNCS, vol. 5565, pp. 425–439. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  30. 30.
    Valk, R.: Object Petri Nets. In: Desel, J., Reisig, W., Rozenberg, G. (eds.) Lectures on Concurrency and Petri Nets. LNCS, vol. 3098, pp. 819–848. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  31. 31.
    Weber, B., Reichert, M., Rinderle-Ma, S.: Change Patterns and Change Support Features: Enhancing Flexibility in Process-Aware Information Systems. Data and Knowledge Engineering 66(3), 438–466 (2008)CrossRefGoogle Scholar
  32. 32.
    Workflow Patterns Home Page,

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Wil M. P. van der Aalst
    • 1
  • Christian Stahl
    • 1
  • Michael Westergaard
    • 1
  1. 1.Department of Mathematics and Computer ScienceTechnische Universiteit EindhovenThe Netherlands

Personalised recommendations