A Straightforward Introduction to Formal Methods Using Coloured Petri Nets

Franciny Medeiros Barreto, Joslaine Cristina Jeske de Freitas, Michel S. Soares, Stéphane Julia


Coloured Petri Nets (CPN) arose from the need to model very large and complex systems, which are found in real industrial applications. The idea behind CPN is to unite the ability to represent synchronization and competition for resources of Petri nets with the expressive power of programming languages, data types and diverse abstraction levels. Through this union, systems which study was previously impractical have become amenable to study. The objective of this paper is to present a formal modeling of the Health Watcher System applying the concepts of CPN using CPN Tools. Using a graphical language such as CPN often proves to be a helpful didactic method for introducing formal methods. This paper presents a brief introduction to Coloured Petri Nets, and illustrates how the construction, simulation, and verification are supported through the use of CPN Tools.


  1. Aalst, W. M., Stahl, C., and Westergaard, M. (2013). Strategies for modeling complex processes using colored petri nets. Transactions on Petri Nets and Other Models of Concurrency, 7:6-55.
  2. Berard, B., Bidoit, M., Finkel, A., Laroussinie, F., Petit, A., Petrucci, L., and Schnoebelen, P. (2010). Systems and Software Verification: Model-Checking Techniques and Tools. Springer Publishing Company, Incorporated, 1st edition.
  3. Boehm, B. W. (1984). Verifying and validating software requirements and design specifications. IEEE Softw., 1(1):75-88.
  4. Booch, G., Rumbaugh, J., and Jacobson, I. (2005). Unified Modeling Language User Guide, The (2nd Edition) (Addison-Wesley Object Technology Series). AddisonWesley Professional.
  5. Cavalcante, E., Almeida, A., Batista, T., Cacho, N., Lopes, F., Delicato, F. C., Sena, T., and Pires, P. F. (2012). Exploiting software product lines to develop cloud computing applications. In Proceedings of the 16th International Software Product Line Conference - Volume 2, SPLC 7812, pages 179-187, New York, NY, USA. ACM.
  6. Dai, L. (2009). Security variability design and analysis in an aspect oriented software architecture. In Proceedings of the 2009 Third IEEE International Conference on Secure Software Integration and Reliability Improvement, SSIRI 7809, pages 275-280, Washington, DC, USA. IEEE Computer Society.
  7. d'Amorim, F. and Borba, P. (2010). Modularity analysis of use case implementations. In Proceedings of the 2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse, SBCARS 7810, pages 11-20, Washington, DC, USA. IEEE Computer Society.
  8. Dyer, R., Rajan, H., and Cai, Y. (2012). An exploratory study of the design impact of language features for aspect-oriented interfaces. In Proceedings of the 11th annual international conference on Aspect-oriented Software Development, AOSD 7812, pages 143-154, New York, NY, USA. ACM.
  9. Goknil, A., Kurtev, I., and van den Berg, K. (2010). Tool support for generation and validation of traces between requirements and architecture. In Proceedings of the 6th ECMFA Traceability Workshop, ECMFATW 7810, pages 39-46, New York, NY, USA. ACM.
  10. Hall, A. (1990). Seven myths of formal methods. IEEE Softw., 7(5):11-19.
  11. Jensen, K. and Kristensen, L. (2009). Coloured Petri Nets. Springer.
  12. Kolr, D. and Kvetonov, S. (2012). People transfer in city transport modeled via cpn. In Proceedings of the 13th international conference on Computer Aided Systems Theory - Volume Part I, EUROCAST'11, pages 192- 199, Berlin, Heidelberg. Springer-Verlag.
  13. Kristensen, L. M., Jrgensen, J. B., and Jensen, K. (2004). Application of coloured petri nets in system development. In In Lecture on Concurrency and Petri Nets, Jorg Desel, Wolfgang Reisig and Grezegorz Rozenberg (Eds.), Springer, LNCS 3089, pages 626-685. Springer-Verlag.
  14. Laxman, P. B. (2013). Validation of UML Models for Interactive Systems with CPN and SPIN. PhD thesis, Department of Computer Science and Engineering - National Institute of Technology Rourkela.
  15. Michael, J. B., Drusinsky, D., Otani, T. W., and Shing, M.- T. (2011). Verification and validation for trustworthy software systems. IEEE Softw., 28(6):86-92.
  16. Milner, R., Tofte, M., and Macqueen, D. (1997). The Definition of Standard ML. MIT Press, Cambridge, MA, USA.
  17. Murata, T. (1989). Petri Nets: Properties, Analysis and Applications. Proceedings of the IEEE, 77(4):541-580.
  18. Noguera, M., Hurtado, M. V., Rodríguez, M. L., Chung, L., and Garrido, J. L. (2010). Ontology-driven analysis of uml-based collaborative processes using owl-dl and cpn. Sci. Comput. Program., 75(8):726-760.
  19. OMG (2011). OMG Unified Modeling Language (OMG UML), Superstructure, Version 2.4.1. Object Management Group.
  20. Preece, J. J. (2010). I persuade, they persuade, it persuades! In Proceedings of the 5th international conference on Persuasive Technology, PERSUASIVE'10, pages 2- 3, Berlin, Heidelberg. Springer-Verlag.
  21. Queralt, A. and Teniente, E. (2012). Verification and validation of uml conceptual schemas with ocl constraints. ACM Trans. Softw. Eng. Methodol., 21(2):13:1-13:41.
  22. Ribeiro, s. R. and Fernandes, J. M. (2009). Validation of scenario-based business requirements with coloured petri nets. In Boness, K., Fernandes, J. M., Hall, J. G., Machado, R. J., and Oberhauser, R., editors, ICSEA, pages 250-255. IEEE Computer Society.
  23. Siy, H., Aryal, P., Winter, V., and Zand, M. (2007). Aspectual support for specifying requirements in software product lines. In Proceedings of the Early Aspects at ICSE: Workshops in Aspect-Oriented Requirements Engineering and Architecture Design, EARLYASPECTS 7807, pages 2-, Washington, DC, USA. IEEE Computer Society.
  24. Soares, S., Laureano, E., and Borba, P. (2002). Implementing distribution and persistence aspects with aspectj. SIGPLAN Not., 37(11):174-190.
  25. Sommerville, I. (2010). Software Engineering. AddisonWesley, Harlow, England, 9 edition.
  26. Thayer, R., Dorfman, M., and Hunter, R. (2002). Software Engineering Member Package (4 Volume Set). Practitioners. Wiley.
  27. Weidlich, M., Mendling, J., and Gal, A. (2013). Net-based analysis of event processing networks: the fast flower delivery case. In Proceedings of the 34th international conference on Application and Theory of Petri Nets and Concurrency, PETRI NETS'13, pages 270-290, Berlin, Heidelberg. Springer-Verlag.
  28. Wolfang Reisig (2013). Understanding Petri Nets: Modeling Techniques, Analysis Methods, Case Studies. Springer. 230 pages; ISBN 978-3-642-33277-7.

Paper Citation

in Harvard Style

Medeiros Barreto F., Cristina Jeske de Freitas J., S. Soares M. and Julia S. (2014). A Straightforward Introduction to Formal Methods Using Coloured Petri Nets . In Proceedings of the 16th International Conference on Enterprise Information Systems - Volume 2: ICEIS, ISBN 978-989-758-028-4, pages 145-152. DOI: 10.5220/0004861901450152

in Bibtex Style

author={Franciny Medeiros Barreto and Joslaine Cristina Jeske de Freitas and Michel S. Soares and Stéphane Julia},
title={A Straightforward Introduction to Formal Methods Using Coloured Petri Nets},
booktitle={Proceedings of the 16th International Conference on Enterprise Information Systems - Volume 2: ICEIS,},

in EndNote Style

JO - Proceedings of the 16th International Conference on Enterprise Information Systems - Volume 2: ICEIS,
TI - A Straightforward Introduction to Formal Methods Using Coloured Petri Nets
SN - 978-989-758-028-4
AU - Medeiros Barreto F.
AU - Cristina Jeske de Freitas J.
AU - S. Soares M.
AU - Julia S.
PY - 2014
SP - 145
EP - 152
DO - 10.5220/0004861901450152