Teaching Coloured Petri Nets - a Gentle Introduction to Formal Methods in a Distributed Systems Course - Christensen, Søren; Mortensen, Kjeld Høyer (DAIMI Report Series, 1997)
This paper is about the two compulsory project assignments set to the students in an undergraduate course on distributed systems. In the first assignment the students design and validate a non-trivial layered protocol by means of Coloured Petri Nets, and in the second they implement the designed protocol in an object-oriented language. From the two assignments the students experience that Coloured Petri Nets, as a formal method, are useful for designing and analysing distributed systems. In the course students are introduced to basic concepts and techniques for distributed systems, and it is explained that such systems are often too complex to manage without using formal methods. In this paper we also report on our experience with teaching the course and describe the didactic methods applied. Based on the obtained experience we conclude that the combination of distributed systems and Coloured Petri Nets is fruitful --- the two areas complement each other. Although our experiences origin in Coloured Petri Nets, we believe that many of our observations hold for other formal methods as well. Topics. Education issues related to nets; Coloured Petri Nets; distributed systems; experience with using nets,case studies; applications of nets to protocols.