Abstract
Architecture recovery aims at providing a high level abstraction of a system using the architectural elements to represent functionalities and interactions. This architecture makes easier the program comprehension and then provides many advantages during all the phases of software life cycle. Nevertheless, most architecture recovery approaches fail to combine the human expertise on the system with a high automation level. In order to solve this issue, we propose to use the intentional architecture of a system, which represent the system as imagined by its designers, to improve the adequation between the resulting software architecture and the architect’s expectations without requiring more human expertise. Thus, we present in this paper a semi-automatic process to recover intentional architecture from the available documentation and the expert recommendations. This process is an extension of ROMANTIC, an approach aiming at recovering a component-based architecture of an existing object-oriented system.
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
Garlan, D.: Software architecture: a roadmap. In: ICSE 2000, pp. 91–101. ACM, New York (2000)
Garlan, D., Perry, D.: Introduction to the special issue on software architecture. IEEE Transactions on Software Engineering 21(4), 269–274 (1995)
Koschke, R.: Atomic Architectural Component Recovery for Program Understanding and Evolution. PhD thesis, University of Stuttgart (2000)
Chardigny, S., Seriai, A., Oussalah, M., Tamzalit, D.: Extraction of component-based architecture from object-oriented systems. In: WICSA, pp. 285–288. IEEE ComputerSociety, Los Alamitos (2008)
Harman, M.: The current state and future of search based software engineering. IEEE Future of Software Engineering, 342–357 (2007)
Chardigny, S., Seriai, A., Oussalah, M., Tamzalit, D.: Search-based extraction of component-based architecture from object-oriented systems. In: Morrison, R., Balasubramaniam, D., Falkner, K. (eds.) ECSA 2008. LNCS, vol. 5292, pp. 322–325. Springer, Heidelberg (2008)
Chardigny, S., Seriai, A., Tamzalit, D., Oussalah, M.: Quality-driven extraction of a component-based architecture from an object-oriented system. In: CSMR, IEEE, pp. 269–273 (2008)
ISO: ISO 9126-1 Software Engineering - Product Quality - Part 1: Quality Model. International Organization for Standardization (2001)
Laarhoven, P.J.M., Aarts, E.H.L. (eds.): Simulated annealing: theory and applications. Kluwer Academic Publishers, Norwell (1987)
Riva, C., Selonen, P., Systa, T., Xu, J.: Uml-based reverse engineering and model analysis approaches for software architecture maintenance. In: ICSM 2004, pp. 50–59. IEEE Computer Society, Washington (2004)
de Boer, R.C., van Vliet, H.: Architectural knowledge discovery with latent semantic analysis: Constructing a reading guide for software product audits. J. Syst. Softw. 81(9), 1456–1469 (2008)
Harris, D.R., Reubenstein, H.B., Yeh, A.S.: Reverse engineering to the architectural level. In: Proc. of ICSE, pp. 186–195. ACM, New York (1995)
Medvidovic, N., Jakobac, V.: Using software evolution to focus architectural recovery. Automated Software Engg. 13(2), 225–256 (2006)
Kazman, R., Klein, M., Barbacci, M., Longstaff, T., Lipson, H., Carriere, J.: The architecture tradeoff analysis method. In: Engineering of Complex Computer Systems ICECCS 1998, pp. 68–78 (1998)
Mancoridis, S., Mitchell, B.S., Chen, Y.F., Gansner, E.R.: Bunch: A clustering tool for the recovery and maintenance of software system structures. In: ICSM, p. 50 (1999)
van der Spek, P., Klusener, S., van de Laar, P.: Towards recovering architectural concepts using latent semantic indexing. In: CSMR 2008, pp. 253–257. IEEE Computer Society, Los Alamitos (2008)
Beyer, D.: Clustering software artifacts based on frequent common changes. In: IWPC, IEEE, pp. 259–268 (2005)
Johnson, S.: Hierarchical clustering schemes. Psychometrika 32, 241–245 (1967)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Chardigny, S., Seriai, A. (2010). Software Architecture Recovery Process Based on Object-Oriented Source Code and Documentation. In: Babar, M.A., Gorton, I. (eds) Software Architecture. ECSA 2010. Lecture Notes in Computer Science, vol 6285. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15114-9_35
Download citation
DOI: https://doi.org/10.1007/978-3-642-15114-9_35
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-15113-2
Online ISBN: 978-3-642-15114-9
eBook Packages: Computer ScienceComputer Science (R0)