Skip to main content

Formal Specification and Prototyping of CORBA Systems

  • Conference paper
  • First Online:
Book cover ECOOP’ 99 — Object-Oriented Programming (ECOOP 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1628))

Included in the following conference series:

Abstract

We propose to extend the CORBA interface definition of distributed objects by a behavioral specification based on high level Petri nets. This technique allows specifying in an abstract, concise and precise way the behavior of CORBA servers, including internal concurrency and synchronization. As the behavioral specification is fully executable, this approach also enables to early prototyping and testing of a distributed object system as soon as the behaviors of individual objects have been defined. The paper discusses several implementation issues of the multithreaded, distributed interpreter built for that purpose. The high level of formality of the chosen formalism allows for mathematical analysis of behavioral specifications.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Agha, Gul, and De Cindio, Fiorella. “Workshop on Object-Oriented Programming and Models of Concurrency.” 16 th International Conference on Applications and Theory of Petri-Nets, ATPN’95, Torino, Italy, June 26–30, 1995. Gul Agha, and Fiorella De Cindio, organizers. (1995)

    Google Scholar 

  2. Agha, Gul, De Cindio, Fiorella, and Yonezawa, Akinori. “2nd International Workshop on Object-Oriented Programming and Models of Concurrency.” 17 th International Conference on Applications and Theory of Petri Nets, ATPN’96, Osaka, Japan, June 24, 1996. Gul Agha, Fiorella De Cindio, and Akinori Yonezawa, editors. (1996)

    Google Scholar 

  3. Bastide, Rémi, “Objets Coopératifs: Un Formalisme Pour La Modélisation Des Systèmes Concurrents.” Ph.D. thesis, Université Toulouse III (1992).

    Google Scholar 

  4. Bastide, Rémi, and Palanque, Philippe. “Cooperative Objects: a Concurrent, Petri-Net Based Object-Oriented Language.” Systems Engineering in the Service of Humans, IEEE-SMC’93, Le Touquet, France, October 15–20, 1993. IEEE Press (1993)

    Google Scholar 

  5. Bastide, Rémi, and Palanque, Philippe. “A Petri-Net Based Environment for the Design of Event-Driven Interfaces.” 16 th International Conference on Applications and Theory of Petri Nets, ATPN’95, Torino, Italy, June 1995. Giorgio De Michelis, and Michel Diaz, Volume editors. Lecture Notes in Computer Science, no. 935. Springer (1995) 66–83.

    Google Scholar 

  6. Bastide, Rémi, and Palanque, Philippe. “Modeling a Groupware Editing Tool With Cooperative Objects.” Concurrent Object-Oriented Programming and Petri Nets. Gul A. Agha, and Fiorella De Cindio, editors. Wien: Springer-Verlag (1998)

    Google Scholar 

  7. Bastide, Rémi, Palanque, Philippe, Sy, Ousmane, Le, Duc-Hoa, and Navarre, David. “Petri-Net Based Behavioural Specification of CORBA Systems.” 20th International Conference on Applications and Theory of Petri Nets, ATPN’99, Williamsburg, VA, USA, June 21–25, 1999. (1999)

    Google Scholar 

  8. Bryan, Doug. “Exactness and Clarity in a Component-Based Specification Language.” Object-Oriented Behavioral Specifications. Haim Kilov, and William Harvey, editors. New-York: Kluwer Academic Publishers (1996) 1–15.

    Google Scholar 

  9. Bryant, Antony, and Evans, Andy. “A Formal Basis for Specifying Object Behaviour.” Object-Oriented Behavioral Specifications. Haim Kilov, and William Harvey, editors. New-York: Kluwer Academic Publishers (1996) 17–30.

    Chapter  Google Scholar 

  10. Genrich, H. J., and Lautenbach, K. “System Modelling With High-Level Petri Nets.” Theoretical Computer Science. Vol. 13. North-Holland (1981) 109–36.

    Article  MATH  MathSciNet  Google Scholar 

  11. Goguen, J. A., Thatcher, J. W., and Wagner, E. G. “Current Trends in Programming Methodology.” An Initial Algebra Approach to the Specification, Correctness and Implementation of Abstract Data Types.Prentice-Hall (1978) 80–149.

    Google Scholar 

  12. Guttag, John V., James J. Horning, S. J. Garland, A. Jones, and J. M. Wing. Larch: Languages and Tools for Formal Specification Springer-Verlag, New-York (1993).

    MATH  Google Scholar 

  13. Harel, David, and Gery, Eran. “Executable Object Modeling With Statecharts.” IEEE Computer 30,no. 7 (1997) 31–42.

    Google Scholar 

  14. Jensen, Kurt. Coloured Petri Nets. Basic Concepts, Analysis Methods and Practical Use. 2nd edition ed., Vol. 2 Springer-Verlag (1996).

    Google Scholar 

  15. Kilov, Haïm, and William Harvey, editors. Object-Oriented Behavioral Specifications Kluwer Academic Publishers (1996).

    Google Scholar 

  16. Lakos, Charles. “A General Systematic Approach to Arc Extensions for Coloured Petri Nets.” 15th International Conference on Applications and Theory of Petri Nets, ATPN’94, June 1995. Lecture Notes in Computer Science, no. 815. Springer (1995) 338–57.

    Google Scholar 

  17. Lakos, Charles, and Keen, C. D. “LOOPN++: a New Language for Object-Oriented PetriNets.” European Simulation Multiconference, Barcelona, Spain, June 1994. (1994)

    Google Scholar 

  18. Leavens, Gary T., and Yoonsik Cheon. Extending CORBA IDL to Specify Behavior With LARCH, TR #93-20. Iowa State University, Department of Computer Science, 1995.

    Google Scholar 

  19. Merle, Philippe, Gransart, Christophe, Geib, Jean-Marc, and Laukien, Marc. “The CorbaScript Language.” ORBOS OMG Meeting on Scripting Languages, Helsinki, Finland, July 27–31 1998. (1998)

    Google Scholar 

  20. Meyer, Bertrand. “Systematic Concurrent Object-Oriented Programming.” Communications of the ACM 36, no. 9 (1993) 56–80.

    Google Scholar 

  21. Netscape Communications Inc. CORBA Component Scripting OMG TC Revised Joint Submission. Orbos/98-07-02, Framingham, MA (1998).

    Google Scholar 

  22. Object Management Group. The Common Object Request Broker: Architecture and Specification. CORBA IIOP 2.2 /98-02-01, Framingham, MA (1998).

    Google Scholar 

  23. Object Management Group. Common Object Services Specification /98-07-05, Framingham, MA (1998).

    Google Scholar 

  24. Peterson, James Lyle. Petri Net Theory and the Modeling of Systems Prentice-Hall (1981).

    Google Scholar 

  25. Prinz, Andreas. “Describing Behaviour in Interfaces.” Formal Methods for Open Object-Based Distributed Systems. Elie Najm, and Jean Bernard Stefani, editors. Chapman & Hall (1997) 36–43.

    Google Scholar 

  26. Puntigam, F. “Types for Active Objects Based on Trace Semantics.” Formal Methods for Open Object-Based Distributed Systems. Elie Najm, and Jean Bernard Stefani, editors. Chapman & Hall (1997) 4–19.

    Google Scholar 

  27. Ramamoorthy, C. V., and Ho, G. S. “Performance Evaluation of Asynchronous Concurrent Systems.” IEEE Transactions of Software Enginnering 6, no. 5 (1980) 440–449.

    Article  MathSciNet  Google Scholar 

  28. Rational Software Corporation. UML Notation Guide. 1.1 ed. 1997.

    Google Scholar 

  29. Rational Software Corporation. UML Semantics. 1.1 ed. 1997.

    Google Scholar 

  30. Sankar, Sriram. “Introducing Formal Methods to Software Engineers Through OMG’s CORBA Environment and Interface Definition Language.” Algebraic Methodology and Software Technology, 5th International Conference, AMAST’ 96, Munich, Germany, July 1–5, 1996. Martin Wirsing, and Maurice Nivat, Editors. ed. Lecture Notes In Computer Science, no. 1101. Springer (1996) 52–61.

    Chapter  Google Scholar 

  31. Sibertin-Blanc, Christophe. “Cooperative Nets.” 15th International Conference on Applications and Theory of Petri Nets, ATPN’94, June 1995. Lecture Notes in Computer Science, no. 815. Springer (1995) 471–90.

    Google Scholar 

  32. Siegel, Jon. “OMG Overview: CORBA and the OMA in Enterprise Computing.” Communications of the ACM 41, no. 10 (1998) 37–43.

    Article  Google Scholar 

  33. Sivaprasad, Gowri Sankar. Larch/CORBA: Specifying the Behavior of CORBA-IDL Interfaces, TR #95-27a. Iowa State University, Department of Computer Science, 1995.

    Google Scholar 

  34. Valk, Rüdiger. “Petri Nets As Token Objects: an Introduction to Elementary Object Nets.” 19th International Conference on Applications and Theory of Petri Nets, ATPN’98, Lissabon, Portugal, June 1998. Springer (1998)

    Google Scholar 

  35. van der Aalst, W. M. P., and Basten, T. “Life-Cycle Inheritance, a Petri-Net Based Approach.” 18th International Conference on Applications and Theory of Petri Nets, ATPN’97, Toulouse, France, June 1997. Pierre Azéma, and Gianfranco Balbo, editors. Lecture Notes in Computer Science, no. 1248. Springer (1997) 62–81.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bastide, R., Sy, O., Palanque, P. (1999). Formal Specification and Prototyping of CORBA Systems. In: Guerraoui, R. (eds) ECOOP’ 99 — Object-Oriented Programming. ECOOP 1999. Lecture Notes in Computer Science, vol 1628. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48743-3_22

Download citation

  • DOI: https://doi.org/10.1007/3-540-48743-3_22

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66156-6

  • Online ISBN: 978-3-540-48743-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics