Abstract
When organizations cooperate closely, for example after a company merger, there is typically a need to integrate their in-house developed software into one coherent system, preferably by reusing from all of the existing systems. The parts that can be reused may be arbitrarily small or large, ranging from code snippets to large self-containing components. Not only implementations can be reused however; sometimes it may be more appropriate to only reuse experiences in the form of architectural solutions and requirements. In order to investigate the circumstances under which different types of reuse are appropriate, we have performed a multiple case study, consisting of nine cases. Our conclusions are, summarized: reuse of components from one system requires reuse of architectural solutions from the same system; merge of architectural solutions cannot occur unless the solutions already are similar, or if some solutions from one are incorporated into the other. In addition, by hierarchically decomposing the systems we make the same observations. Finally, among the cases we find more architectural similarities than might had been expected, due to common domain standards and common solutions within a domain. Although these observations, when presented, should not be surprising, our experiences from the cases show that in practice organizations have failed to recognize when the necessary prerequisites for reuse have not been present.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Abowd, G.D., Allen, R., Garlan, D.: Using Style to Understand Descriptions of Software Architecture. In: Proceedings of The First ACM SIGSOFT Symposium on the Foundations of Software Engineering (1993)
Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Reading (2003) ISBN 0-321-15495-9
Brooks, F.P.: The Mythical Man-Month - Essays On Software Engineering. In: 20th Anniversary Edition (20th Anniversary edition). Addison-Wesley Longman, Amsterdam (1995) ISBN 0201835959
Bushmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-Oriented Software Architecture - A System of Patterns. John Wiley & Sons, Chichester (1996) ISBN 0-471-95869-7
Crnkovic, I., Larsson, M.: Building Reliable Component-Based Software Systems. Artech House (2002) ISBN 1-58053-327-2
Fayad, M.E., Hamu, D.S., Brugali, D.: Enterprise frameworks characteristics, criteria, and challenges. Communications of the ACM 43(10), 39–46 (2000)
Gamma, E., Helm, R., Johnson, R., Vlissidies, J.: Design Patterns - Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995) ISBN 0-201-63361-2
Garlan, D., Allen, R., Ockerbloom, J.: Architectural Mismatch: Why Reuse is so Hard. IEEE Software 12(6), 17–26 (1995)
Johnson, R.E.: Frameworks = (Components + Patterns). Communications of the ACM 40(10), 39–42 (1997)
Karlsson, E.-A.: Software Reuse: A Holistic Approach. Wiley Series in Software Based Systems. John Wiley & Sons Ltd., Chichester (1995) ISBN 0 471 95819 0
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Loingtier, J.-M., Irwin, J.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)
Krueger, C.W.: Software reuse. ACM Computing Surveys 24(2), 131–183 (1992)
Land, R., Crnkovic, I.: Existing Approaches to Software Integration – and a Challenge for the Future. In: Proceedings of Software Engineering Research and Practice in Sweden (SERPS). Linköping University (2004)
Land, R., Larsson, S., Crnkovic, I.: Interviews on Software Integration, report MRTC report ISSN 1404-3041 ISRN MDH-MRTC-177/2005-1-SE, Mälardalen Real-Time Research Centre, Mälardalen University (2005)
Land, R., Larsson, S., Crnkovic, I.: Processes Patterns for Software Systems In-house Integration and Merge - Experiences from Industry. In: Proceedings of 31st Euromicro Conference on Software Engineering and Advanced Applications (SEAA), Software Process and Product Improvement track, SPPI (2005)
Meyers, C., Oberndorf, P.: Managing Software Acquisition: Open Systems and COTS Products. Addison-Wesley, Reading (2001) ISBN 0201704544
Ruh, W.A., Maginnis, F.X., Brown, W.J.: Enterprise Application Integration, A Wiley Tech Brief. John Wiley & Sons, Chichester (2000) ISBN 0471376418
Schmidt, D., Stal, M., Rohnert, H., Buschmann, F.: Pattern-Oriented Software Architecture - Patterns for Concurrent and Networked Objects. Wiley Series in Software Design Patterns. John Wiley & Sons Ltd., Chichester (2000) ISBN 0-471-60695-2
Szyperski, C.: Component Software - Beyond Object-Oriented Programming, 2nd edn. Addison-Wesley, Reading (2002) ISBN 0-201-74572-0
Wallnau, K.C., Hissam, S.A., Seacord, R.C.: Building Systems from Commercial Components. Addison-Wesley, Reading (2001) ISBN 0-201-70064-6
Yin, R.K.: Case Study Research: Design and Methods, 3rd edn. Sage Publications, Thousand Oaks (2003) ISBN 0-7619-2553-8
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Land, R., Crnković, I., Larsson, S., Blankers, L. (2005). Architectural Reuse in Software Systems In-house Integration and Merge – Experiences from Industry. In: Reussner, R., Mayer, J., Stafford, J.A., Overhage, S., Becker, S., Schroeder, P.J. (eds) Quality of Software Architectures and Software Quality. QoSA SOQUA 2005 2005. Lecture Notes in Computer Science, vol 3712. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11558569_10
Download citation
DOI: https://doi.org/10.1007/11558569_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-29033-9
Online ISBN: 978-3-540-32056-2
eBook Packages: Computer ScienceComputer Science (R0)