Skip to main content

Recovery of Architectural Structure: A Case Study

  • Conference paper
  • First Online:
Development and Evolution of Software Architectures for Product Families (ARES 1998)

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

Included in the following conference series:

  • 406 Accesses

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

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.

Similar content being viewed by others

References

  1. 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.

    Google Scholar 

  2. M. Shaw and D. Garlan, Software architecture: perspectives on an emerging discipline, Prentice-Hall, 1996.

    Google Scholar 

  3. 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.

    Google Scholar 

  4. 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.

    Google Scholar 

  5. 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.

    Google Scholar 

  6. F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, M. Stal, Pattern-Oriented Software Architecture-A System of Patterns, Wiley and Sons Ltd., 1996.

    Google Scholar 

  7. D. Dikel, D. Kane, S. Ornburne, W. Loftus, and J. Wilson, “Applying Software Product-Line Architecture,” IEEE Computer, Vol. 30, No. 8, August 1997.

    Google Scholar 

  8. 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.

    Google Scholar 

  9. 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.

    Article  Google Scholar 

  10. M. Radestock, S. Eisenbach, “Formalizing system structure,” 8th International Workshop on Software Specification and Design (IWSSD8), 1996.

    Google Scholar 

  11. 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.

    Article  Google Scholar 

  12. 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.

    Google Scholar 

  13. P. Kogut and P. Clements, “The Software Architecture Renaissance,” Crosstalk-The Journal of Defense Software Engineering, Vol. 7, No. 11, November 1994.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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

Publish with us

Policies and ethics