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).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
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.
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.
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.
Pattie Maes, “Concepts and experiments in computational reflection”, in Object-Oriented Programming Systems, Languages and Applications (OOPSLA’87), Orlando, 1987, pp. 147–155.
Kiczales G., Rivi’res J. and Bobrow D.G. The Art of the Metaobject Protocol. MIT Press, ISBN 0-262-61074-4, 1991.
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.
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.
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.
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.
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.
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.
Kung D., Hsia P. and Gao J. (eds). Testing Object-Oriented Software. IEEE Computer Society, 1998.
Binder R. V. Testing Object-Oriented Systems. Addison-Wesley, 1999.
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.
Brant J., Foote B., Johnson R. E. and Roberts D., “Wrappers to the Rescue”, in ECOOP’98, Brussels, 1998, pp. 396–417.
Meyer B., Object-Oriented Software Construction, 2nd Edition, Prentice Hall Professional Technical Reference, 1997.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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