Testing Ada 95 programs for conformance to rapide architectures

  • Neel Madhav
Verification and Validation
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1088)


The architecture of a system expresses the structural aspects of the system — the modules, the control structure, communication design, sharing of data and composition of modules. The architecture of a complex software system is a significant issue in the proper design, analysis and possibility of reuse of the software system.

This paper describes how the architecture of an Ada program may be extracted at run time and tested for conformance against a reference architecture in a language called RAPIDE. The conformance testing of Ada program architectures facilitates design, analysis and reuse of Ada programs since architecture based design, analysis and reuse techniques can now be applied to the program.

The paper first gives rules for testing conformance of Ada programs to RAPIDE architectures. The paper then defines a language called RAPIDE-ADA that instruments Ada programs to produce events at run time. The events are tested for conformance against a RAPIDE reference architecture by application of the rules for testing conformance.


Software architecture Ada 95 program instrumentation run time monitoring 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AG94]
    R. Allen and D. Garlan. Formalizing architectural connection. In Proceedings of ICSE, May 1994.Google Scholar
  2. [Bry92]
    Doug Bryan. Rapide-0.2 language and tool-set overview. Technical Note CSL-TN-92-387, Computer Systems Lab, Stanford University, February 1992.Google Scholar
  3. [CBKA95]
    P. Clements, L. Bass, R. Kazman, and G. Abowd. Predicting software quality by architecture-level evaluation. In Proceedings of the 6th International Conference on Software Quality, October 1995.Google Scholar
  4. [ES90]
    Margaret A. Ellis and Bjarne Stroustrup. The Annotated C++ Reference Manual. Addison-Wesley, 1990.Google Scholar
  5. [GAO95]
    D. Garlan, R. Allen, and J. Ockerbloom. Architectural mismatch: Why reuse is so hard. IEEE Software, November 1995.Google Scholar
  6. [GP95]
    D. Garlan and D. E. Perry. Introduction to special issue on software architecture. IEEE Transactions on Software Engineering, April 1995.Google Scholar
  7. [Gro91]
    The Object Management Group. The Common Object Request Broker: Architecture and Specification. The Object Management Group, revision 1.1 edition, December 1991.Google Scholar
  8. [GS93]
    D. Garlan and M. Shaw. An Introduction to Software Architecture, volume I. World Scientific Publishing Company, 1993.Google Scholar
  9. [HL85]
    D. P. Helmbold and D. C. Luckham. TSL: Task sequencing language. In Ada in Use: Proceedings of the Ada International Conference, pages 255–274. Cambridge University Press, May 1985.Google Scholar
  10. [Hoa85]
    C. A. R. Hoare. Communicating Sequential Processes. Prentice-Hall, 1985.Google Scholar
  11. [LKA+95]
    David C. Luckham, John J. Kenney, Larry M. Augustin, James Vera, Doug Bryan, and Walter Mann. Specification and analysis of system architecture using Rapide. IEEE Transactions on Software Engineering, 21(4):336–355, April 1995.Google Scholar
  12. [LVB+93]
    David C. Luckham, James Vera, Doug Bryan, Larry Augustin, and Frank Belz. Partial orderings of event sets and their application to prototyping concurrent, timed systems. Journal of Systems and Software, 21(3):253–265, June 1993.Google Scholar
  13. [LVM95]
    David C. Luckham, James Vera, and Sigurd Meldal. Three concepts of system architecture. To be published, 1995.Google Scholar
  14. [SG94]
    Mary Shaw and David Garlan. Characteristics of higher-level languages for software architecture. Technical Report CMU-CS-94-210, CMU, December 1994.Google Scholar
  15. [Tea95]
    Rapide Design Team. The Rapide-1 Specification Language Reference Manual. Program Analysis and Verification Group, Computer Systems Lab., Stanford University, version 1 edition, October 1995.Google Scholar
  16. [VSM94]
    James Vera, Alex Santoro, and Moataz Mohamed. Raptor — The Rapide Animator. Stanford University, Computer Systems Lab ERL 456, Stanford, CA 94305-4055, 1994.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Neel Madhav
    • 1
  1. 1.Stanford UniversityStanfordUSA

Personalised recommendations