A case study in quantitative evaluation of real-time software architectures
Generic architectures for specific domains can provide significant gains in productivity and quality for real-time systems development. In order to choose among different architectural features, a variety of qualitative criteria have been proposed in the literature. However, real-time systems require a more exact characterization based on quantitative evaluation of some architectural features related to timing properties, such as scalability. In this paper we explore a possible way of using Rate Monotonic Analysis to get a measure of scalability between alternative architectures. The technique is illustrated with a case study in a well-known real-time domain, data acquisition systems. The results show clear differences in scalability for different architectures, giving a clear indication of which one is better from this point of view. We believe that the approach can be used on other properties and domain architectures, thus opening new possibilities for quantitative evaluation of software architectures.
Unable to display preview. Download preview PDF.
- 1.Reference Manual for the Ada Programming Language (1983). ANSI/MIL-STD-1815A-1983;ISO/8652:1987.Google Scholar
- 2.A. Alonso, B. álvarez, J.A. Pastor, J.A. de la Puente, A. Iborra (1997). “Software Architecture for a Robot Teleoperation System.” Proc. IFAC Symposium on Algorithms and Architectures for Real-Time Control. Elsevier Science, 1997.Google Scholar
- 5.R.J.A. Buhr, (1990). Practical Visual Techniques in System Design. Prentice Hall.Google Scholar
- 7.J.L Fernández (1993). “A Taxonomy of Coordination Mechanisms Used in Real-Time Software Based on Domain Analysis.” Technical Report CMU/SEI-93-TR-34, Software Engineering Institute, Pittsburgh, PA.Google Scholar
- 8.J.L. Fernández, A. Pérez, B. álvarez and F. García (1995). “Performance Engineering of Real-Time Laboratory Automation Software Architectures.” Technical Report DIT/UPM 1995/01.Google Scholar
- 10.D. Garlan and M. Shaw (1996). Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall.Google Scholar
- 11.M.González-Harbour, M.H. Klein and J.P. Lehoczky (1991). “Fixed Priority Scheduling of Periodic Tasks with Varying Execution Priority.” Proceedings of the IEEE Real-Time Systems Symposium. Los Alamitos, C.A. pp.116–128.Google Scholar
- 13.M.H. Klein, T. Ralya, B. Pollak, R. Obenza and M. Gonzalez-Harbour. (1993). A Practitioner's Handbook for Real-Time Analysis: Guide to Rate Monotonic Analysis for Real-Time Systems. Kluwer Academic Publishers.Google Scholar
- 15.K. Nielsen and K. Shumate (1988). Designing Large Real-Time Systems with Ada. McGraw-Hill.Google Scholar
- 16.R. Obenza (1993). “Rate Monotonic Analysis for Real-Time Systems.” IEEE Computer. Vol. 26, No 3: 73–74.Google Scholar
- 19.L. Sha and J.B. Goodenough (1990). “Real Time Scheduling Theory and Ada.” IEEE Computer. Vol. 23, No 4: 53–62.Google Scholar
- 20.B. Witt, T. Baker, and E. Merrit (1994). Software Architecture and Design. Principles, Models and Methods. Van Nostrand Reinhold.Google Scholar