Skip to main content

Testing MetaObject Protocols Generated by Open Compilers for Safety-Critical Systems

  • Conference paper
  • First Online:
Metalevel Architectures and Separation of Crosscutting Concerns (Reflection 2001)

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

Included in the following conference series:

Abstract

Although broadly used in many application domains, the use of reflection in safety-critical systems remains questionable due to the little work reporting on validation aspects. This paper defines an approach for testing MetaObject Protocols (MOPs) generated using open compiler facilities. These protocols are defined in terms of a set of analysis and generation rules, which are used to specialize the MOP implementation according to the features supplied by object definitions. The proposed test strategy classifies these analyses and generation rules. Testing objectives and conformance checks are defined for each type of rule. Along the paper, the approach will be illustrated through a real MOP implemented using OpenC++ and extracted from the FRIENDS architecture, an architecture devoted to the implementation of faulttolerant systems. The test experiments performed show the interest of the strategy since they have revealed some errors in the considered protocol implementation.

This work was supported in part by France-Telecom (contract ST.CNET/DTL/ASR/97049/DT) and the European Community (project IS-1999-11585: DSOS - Dependable Systems of Systems).

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. Fabre J.-C. and Pérennou T., “A Metaobject Architecture for Fault-Tolerant Distributed Systems: the FRIENDS Approach”, in IEEE Transactions on Computers. Special issue on Dependability of Computing Systems, vol. 47, pp. 78–95, 1998.

    Article  Google Scholar 

  2. Agha G., Frolund S., Panwar G. and Sturman D., “A Linguistic Framework for Dynamic Composition of Dependability Protocols”, in Dependable Computing for Critical Applications 3 (DCCA-3), Vol. 8, in the Series on Dependable Computing and Fault-Tolerant Systems, Springer-Verlag, 1993, pp. 345–363.

    Google Scholar 

  3. Garbinato B., Guerraoui R. and Mazouni K., “Implementation of the GARF Replicated Objects Platform”, in Distributed Systems Engineering Journal, vol. 2, pp. 14–27, 1995.

    Article  Google Scholar 

  4. Pattie Maes, “Concepts and experiments in computational reflection”, in Object-Oriented Programming Systems, Languages and Applications (OOPSLA’87), Orlando, 1987, pp. 147–155.

    Google Scholar 

  5. Kiczales G., Rivi’res J. and Bobrow D.G. The Art of the Metaobject Protocol. MIT Press, ISBN 0-262-61074-4, 1991.

    Google Scholar 

  6. Chiba S., “Macro Processing in Object-Oriented Languages”, in Technology of Object-Oriented Languages and Systems (TOOLS Pacific’ 98), Australia, IEEE Press, 1998, pp. 113–126.

    Google Scholar 

  7. Tatsubori M., Chiba S., Killijian M.-O and Itano K., “OpenJava: A Class-based Macro System for Java”, in Reflection and Software Engineering, W. Cazzola, R.J. Stroud, and F. Tisato, Eds., Lecture Notes in Computer Science 1826, Springer-Verlag, July, 2000, pp.119–135.

    Chapter  Google Scholar 

  8. Killijian M.-O. and Fabre J.C., “Implementing a Reflective Fault-Tolerant CORBA System”, in IEEE Symposium on Reliable Distributed Systems (SRDS’2000), Germany, 2000, pp. 154–163.

    Google Scholar 

  9. Marsden E., Ruiz J.C. and Fabre J.-C., “Towards Validating Reflective Architectures: Formalization of a MetaObject Protocol”, in IFIP/ACM International Conference on Distributed Systems Platforms and Open Distributed Processing, Workshop on Reflective Middleware (RM 2000), New York, 2000, pp. 33–35.

    Google Scholar 

  10. Welch I. and Stroud R., “Adaptation of Connectors in Software Architectures”, in Object-Oriented Programming Systems, Languages and Applications (OOPSLA’98), Workshop on Component-Oriented Programming (WCOP’98), Brussels, 1998, pp. 145–146.

    Google Scholar 

  11. Bochmann G.V. and Petrenko A., “Protocol testing: review of methods and relevance for software testing”, in International Symposium on Software Testing and Analysis (ISSTA’ 94), Seattle, 1994, pp. 109–124.

    Google Scholar 

  12. Kung D., Hsia P. and Gao J. (eds). Testing Object-Oriented Software. IEEE Computer Society, 1998.

    Google Scholar 

  13. Binder R. V. Testing Object-Oriented Systems. Addison-Wesley, 1999.

    Google Scholar 

  14. Ruiz J. C., Thévenod-Fosse P. and Fabre J. C., “A Strategy for Testing MetaObject Protocols in Reflective Architectures”, in 2nd IEEE Conference on Dependable Systems and Networks (DSN 2001), Göteborg (Sweden), July 2001.

    Google Scholar 

  15. Brant J., Foote B., Johnson R. E. and Roberts D., “Wrappers to the Rescue”, in ECOOP’98, Brussels, 1998, pp. 396–417.

    Google Scholar 

  16. Meyer B., Object-Oriented Software Construction, 2nd Edition, Prentice Hall Professional Technical Reference, 1997.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ruiz, J.C., Fabre, JC., Thévenod-Fosse, P. (2001). Testing MetaObject Protocols Generated by Open Compilers for Safety-Critical Systems. In: Yonezawa, A., Matsuoka, S. (eds) Metalevel Architectures and Separation of Crosscutting Concerns. Reflection 2001. Lecture Notes in Computer Science, vol 2192. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45429-2_11

Download citation

  • DOI: https://doi.org/10.1007/3-540-45429-2_11

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-42618-9

  • Online ISBN: 978-3-540-45429-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics