A component-based Petri net model for specifying and validating cooperative information systems

This paper presents fundamentals of a novel framework adequately tailored for specifying and validating complex information systems as fully distributed, autonomous yet cooperating components. The proposed framework, referred to as CO-NETS, is a multi-paradigm soundly integrating object-oriented (OO) structuring mechanisms, modularity concepts and some constructions from semantical data modeling into an appropriate variety of algebraic Petri nets. The model is semantically interpreted in a true concurrency way using an adequate instantiation of rewriting logic.CO-NETS main features may be highlighted as follows: firstly, CO-NETS allow to build autonomous components as a hierarchy of OO classes with explicit interfaces. Each component behaves with respect to an intra-component evolution pattern that fully exhibits intra-as well as inter-object concurrency. Secondly, while such components autonomously behave they may interact with each other using their explicit interfaces and respecting an inter-component interaction pattern. Thirdly, from a methodological point of view, CO-NETS components may be incrementally conceived from well known semi-informal OO diagrams. Besides that, thanks to their rewriting-logic based semantics, CO-NETS components are validated using concurrent rewriting techniques simultaneously accompanied by graphical animations. CO-NETS practicability is illustrated through a non-trivial case study, and all CO-NETS features are compared to similar existing OO formalisms on the basis of some exhaustive criteria.

[1]  Peter Wegner,et al.  Concepts and paradigms of object-oriented programming , 1990, OOPS.

[2]  Charles Lakos,et al.  Towards a reflective implementation of Object Petri Nets , 1996 .

[3]  Brian Henderson-Sellers,et al.  An Object-Oriented Analysis and Design Notation for Distributed Systems , 1996, J. Object Oriented Program..

[4]  Christophe Sibertin-Blanc,et al.  Cooperative Nets , 1994, Application and Theory of Petri Nets.

[5]  Giancarlo Mauri,et al.  Semantics Frameworks for a Class of Modular Algebraic Nets , 1993, AMAST.

[6]  Martin Gogolla,et al.  Objects and their Specification , 1991, COMPASS/ADT.

[7]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[8]  Gunter Saake,et al.  Evolving Logical Specification in Information Systems , 1998, Logics for Databases and Information Systems.

[9]  Kurt Jensen High-Level Petri Nets , 1982, European Workshop on Applications and Theory of Petri Nets.

[10]  Narciso Martí-Oliet,et al.  Maude: specification and programming in rewriting logic , 2002, Theor. Comput. Sci..

[11]  Jean-Pierre Jouannaud,et al.  Rewrite Systems , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[12]  William E. Lorensen,et al.  Object-Oriented Modeling and Design , 1991, TOOLS.

[13]  José Meseguer,et al.  Concurrent term rewriting as a model of computation , 1986, Graph Reduction.

[14]  Joseph A. Goguen,et al.  An Oxford survey of order sorted algebra , 1994, Mathematical Structures in Computer Science.

[15]  José Meseguer,et al.  Conditioned Rewriting Logic as a United Model of Concurrency , 1992, Theor. Comput. Sci..

[16]  Joseph A. Goguen,et al.  Towards an Algebraic Semantics for the Object Paradigm , 1992, COMPASS/ADT.

[17]  Gunter Saake,et al.  An Appropriate Semantics for Distributed Active Object-Oriented Databases on the Basis of C O-NETS Approach , 2022 .

[18]  José Meseguer,et al.  A logical theory of concurrent objects and its realization in the Maude language , 1993 .

[19]  Gunter Saake,et al.  TROLL: a language for object-oriented specification of information systems , 1996, TOIS.

[20]  Dalton Serey Guerrero,et al.  An object-oriented Petri net modeling tool and abstraction mechanisms for cooperative systems , 1998, SMC'98 Conference Proceedings. 1998 IEEE International Conference on Systems, Man, and Cybernetics (Cat. No.98CH36218).

[21]  Nasreddine Aoumeur Specifying Distributed and Dynamically Evolving Information Systems Using an Extended CO-Nets Approach , 1999, FMLDO - Selected Papers.

[22]  Kurt Jensen,et al.  Coloured Petri nets (2nd ed.): basic concepts, analysis methods and practical use: volume 1 , 1996 .

[23]  Gunter Saake,et al.  Towards a New Semantics for Mondel Specifications Based on the CO-Net Approach , 1999, Modellierung.

[24]  Daniel Moldt,et al.  Multi-Agent-Systems Based on Coloured Petri Nets , 1997, ICATPN.

[25]  José Meseguer,et al.  Reflection and strategies in rewriting logic , 1996, WRLA.

[26]  Narciso Martí-Oliet,et al.  Rewriting Logic as a Logical and Semantic Framework , 1996 .

[27]  Desmond D'Souza Java: Design and Modeling Opportunities , 1996, J. Object Oriented Program..

[28]  Amílcar Sernadas,et al.  Logics for Specifying Concurrent Information Systems , 1998, Logics for Databases and Information Systems.

[29]  José Meseguer,et al.  Solving the Inheritance Anomaly in Concurrent Object-Oriented Programming , 1993, ECOOP.

[30]  Andreas Oberweis,et al.  Information system behavior specification by high level Petri nets , 1996, TOIS.

[31]  MeseguerJosé Conditional rewriting logic as a unified model of concurrency , 1992 .

[32]  E. Battiston,et al.  Class orientation and inheritance in modular algebraic nets , 1993, Proceedings of IEEE Systems Man and Cybernetics Conference - SMC.

[33]  Gunter Saake,et al.  Towards an Object Petri Nets Model for Specifying and Validating Distributed Information Systems , 1999, CAiSE.

[34]  Gunter Saake,et al.  Logics for databases and information systems , 1998 .

[35]  Wil M. P. van der Aalst,et al.  Life-Cycle Inheritance: A Petri-Net-Based Approach , 1997, ICATPN.

[36]  Charles Lakos,et al.  The Consistent Use of Names and Polymorphism in the Definition of Object Petri Nets , 1996, Application and Theory of Petri Nets.

[37]  James L. Peterson,et al.  Petri Nets , 1977, CSUR.

[38]  Peter A. C. Verkoulen,et al.  Integrated information systems design - an approach based on object-oriented concepts and Petri nets , 1993 .

[39]  J. Meseguer Research Directions in Rewriting Logic , 1999 .

[40]  Giancarlo Mauri,et al.  OBJSA Nets: a Class of High- level Nets Having Objects as Domains , 1987, European Workshop on Applications and Theory of Petri Nets.

[41]  Nicolas Guelfi,et al.  Comparison of Object-Oriented Formal Methods , 1997 .

[42]  Klaus R. Dittrich,et al.  Events in an Active Object-Oriented Database System , 1993, Rules in Database Systems.

[43]  Wolfgang Reisig,et al.  Petri Nets and Algebraic Specifications , 1991, Theor. Comput. Sci..

[44]  Michael Schrefl,et al.  Extending object-oriented systems with roles , 1996, TOIS.

[45]  Nicolas Guelfi,et al.  CO-OPN/2: a concurrent object-oriented formalism , 1997 .

[46]  Roger King,et al.  Semantic Data Models , 1985, Principles of Database Design.

[47]  Gunter Saake,et al.  Prototyping Object Specifications Using the CO-Nets Approach , 1999, AWPN.

[48]  Gunter Saake,et al.  Specifying and Validating Train Control Systems Using an Appropriate Component-Based Petri Nets Model , 2000 .

[49]  Hans-Jörg Schek,et al.  Object Orientation with Parallelism and Persistence , 1996 .

[50]  Gunter Saake,et al.  Aggregation in a Behaviour Oriented Object Model , 1992, ECOOP.

[51]  Charles Lakos,et al.  From Coloured Petri Nets to Object Petri Nets , 1995, Application and Theory of Petri Nets.

[52]  Wolffried Stucky,et al.  INCOME/STAR: Methodology and Tools for the Development of Distributed Information Systems , 1994, Inf. Syst..

[53]  Mike P. Papazoglou,et al.  Cooperative Information Systems: Trends and Directions , 1997 .