Abstract
Industrial software development is often an evolutionary process. Software products are developed for one specific customer and later on refined for other customers with different requirements in terms of a product family. Refinements happen at the implementation level (algorithms and data structures) and on the architectural level (the overall system structure). Recovery of architectural information is necessary to build up a complete and unambiguous description of the architecture of a system. In this paper, we describe an approach for the recovery of architectural structure that focuses on component and connector identification. We describe different strategies to define components and connectors of the system. The examples given in the paper were developed out of an industrial case study, a real-time Train Control System. The recovered architectural description allows reasoning about the quality of the system architecture: The description of the architectural structure revealed hardware-dependent components that in case of a hardware change would have to be changed completely. Therefore, our investigations showed that such a recovery of architectural structure is important to reduce future efforts in the development and maintenance of product lines.
The architecture recovery process discussed in this paper is research work within the ESPRIT project ARES (Architectural Reasoning for Embedded Systems). ARES is supported by the European Commission under ESPRIT framework IV contract no. 20477.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
D. Garlan and D.E. Perry, “Introduction to the special issue on software architecture,” IEEE Trans. on Software Eng., Vol. 21, No. 4, pp. 269–274, April 1995.
M. Shaw and D. Garlan, Software architecture: perspectives on an emerging discipline, Prentice-Hall, 1996.
T. Wiggerts, H. Bosma, and E. Fielt, “Scenarios for the Identification of Objects in Legacy Systems,” Fourth Working Conference on Reverse Engineering. Amsterdam, The Netherlands, October 1997.
W. Eixelsberger, L. Warholm, R. Klösch, and H. Gall, “Software architecture recovery of embedded software,” 19th International Conference on Software Engineering, Boston, USA, pp. 558–9, May 1997.
D.R. Harris, H.B. Reubenstein, and A.S. Yeh. “Recognizers for extracting architectural features from source code.” Second Working Conference on Reverse Engineering, Toronto, Canada, pp. 252–261, July 1995.
F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, M. Stal, Pattern-Oriented Software Architecture-A System of Patterns, Wiley and Sons Ltd., 1996.
D. Dikel, D. Kane, S. Ornburne, W. Loftus, and J. Wilson, “Applying Software Product-Line Architecture,” IEEE Computer, Vol. 30, No. 8, August 1997.
K. Ng, J. Kramer, and J. Magee, “A CASE Tool for Software Architecture Design,” Journal of Automated Software Engineering, Vol. 3, No. 3/4, Kluwer Academic Publishers, pp. 261–284, 1996.
J. Magee, N. Dulay, and J. Kramer, “Regis: A Constructive Development Environment for Distributed Programs,” IEE/IOP/BCS Distributed Systems Engineering, Vol. 1, No. 5, pp. 304–312, September 1994.
M. Radestock, S. Eisenbach, “Formalizing system structure,” 8th International Workshop on Software Specification and Design (IWSSD8), 1996.
G. Abowd, R. Allen, and D. Garlan, “Formalizing Style to Understand Descriptions of Software Architecture,” ACM Transactions on Software Engineering and Methodology (TOSEM), Vol. 4, No. 4, pp. 319–364, October 1995.
M. Shaw and D. Garlan, “Formulations and Formalisms in Software Architecture,” in Computer Science Today: Recent Trends and Developments. Lecture Notes in Computer Science, Vol. 1000, pp. 307–323, 1995.
P. Kogut and P. Clements, “The Software Architecture Renaissance,” Crosstalk-The Journal of Defense Software Engineering, Vol. 7, No. 11, November 1994.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Eixelsberger, W., Kalan, M., Ogris, M., Beckman, H., Bellay, B., Gall, H. (1998). Recovery of Architectural Structure: A Case Study. In: van der Linden, F. (eds) Development and Evolution of Software Architectures for Product Families. ARES 1998. Lecture Notes in Computer Science, vol 1429. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-68383-6_14
Download citation
DOI: https://doi.org/10.1007/3-540-68383-6_14
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-64916-8
Online ISBN: 978-3-540-68383-4
eBook Packages: Springer Book Archive