Abstract
Architectural knowledge is an important artifact for many software development and quality control activities. Examples for quality control activities based on architectural information are architecture reviews, dependency analyses, and conformance analyses. Architecture is also an important artifact for understanding, reuse, evolution, and maintenance. Unfortunately, in many projects architectural knowledge often remains implicit and is not available for a particular system stakeholder or outdated when it is actually needed. To address this problem, we propose to manage semi-formal software architecture knowledge in a central repository, where it is accessible to all stakeholders and where it can be automatically and continuously updated and analyzed by different tools. In this paper we discuss important elements and use cases of such an approach, and present an example for an architecture knowledge and information repository in the context of an enterprise service-oriented architecture (SOA).
Keywords
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
- 2.
We should note that we were not able to move all features we had implemented in the original toolset to the reengineered version. For example, currently feature and design decision management are not part of the repository-based solution.
References
van der Ven, J.S., Jansen, A., Avgeriou, P., Hammer, D.K.: Using architectural decisions. In: Hofmeister, C., Crnkovic, I., Reussner, R., Becker, S. (eds.) Perspectives in Software Architecture Quality, pp. 1–10. Universitaet Karlsruhe, Fakultaet fuer Informatik, Germany (2006)
ISO, IEC, IEEE: 42010:2011 systems and software engineering, architecture description. International Standard (2011)
Tang, A., Liang, P., van Vliet, H.: Software architecture documentation: the road ahead. In: Working IEEE/IFIP Conference on Software Architecture, pp. 252–255 (2011)
Maranzano, J.F., Rozsypal, S.A., Zimmerman, G.H., Warnken, G.W., Wirth, P.E., Weiss, D.M.: Architecture reviews: practice and experience. IEEE Softw. 22(2), 34–43 (2005)
Glass, R.L.: Frequently forgotten fundamental facts about software engineering. IEEE Softw. 18(3), 111–112 (2001)
Perry, D.E., Wolf, A.L.: Foundations for the study of software architecture. ACM SIGSOFT Softw. Eng. Notes 17(4), 40–52 (1992)
Bosch, J.: Software architecture: the next step. In: Oquendo, F., Warboys, B.C., Morrison, R. (eds.) EWSA 2004. LNCS, vol. 3047, pp. 194–199. Springer, Heidelberg (2004)
Farenhorst, R., de Boer, R.C.: Knowledge management in software architecture: state of the art. In: Ali Babar, M., Dingsøyr, T., Lago, P., van Vliet, H. (eds.) Software Architecture Knowledge Management, pp. 21–38. Springer, Heidelberg (2009)
Weinreich, R., Buchgeher, G.: Towards supporting the software architecture life cycle. J. Syst. Softw. 85(3), 546–561 (2012)
Merkle, B.: Stop the software architecture erosion. In: Proceedings of the ACM International Conference Companion on Object Oriented Programming Systems Languages and Applications Companion, SPLASH 2010, pp. 295–297. ACM, New York (2010)
Kriechbaum, T., Buchgeher, G., Weinreich, R.: Service development and architecture management for an enterprise SOA. In: Avgeriou, P., Zdun, U. (eds.) ECSA 2014. LNCS, vol. 8627, pp. 186–201. Springer, Heidelberg (2014)
Weinreich, R., Miesbauer, C., Buchgeher, G., Kriechbaum, T.: Extracting and facilitating architecture in service-oriented software systems. In: 2012 Joint Working IEEE/IFIP Conference on Software Architecture & European Conference on Software Architecture. IEEE (2012)
Weinreich, R., Buchgeher, G.: Automatic reference architecture conformance checking for SOA-based software systems. In: 11th Working IEEE/IFIP Conference on Software Architecture. IEEE Computer Society Press (2014)
Sangal, N., Jordan, E., Sinha, V., Jackson, D.: Using dependency models to manage complex software architecture. SIGPLAN Not. 40(10), 167–176 (2005)
Sangwan, R.S., Vercellone-Smith, P., Laplante, P.A.: Structural epochs in the complexity of software over time. IEEE Softw. 25(4), 66–73 (2008)
Weinreich, R., Buchgeher, G.: Integrating requirements and design decisions in architecture representation. In: Babar, M.A., Gorton, I. (eds.) ECSA 2010. LNCS, vol. 6285, pp. 86–101. Springer, Heidelberg (2010)
Buchgeher, G., Weinreich, R.: Automatic tracing of decisions to architecture and implementation. In: 2011 9th Working IEEE/IFIP Conference on Software Architecture, pp. 46–55 (2011)
Groher, I., Weinreich, R.: Supporting variability management in architecture design and implementation. In: 2013 46th Hawaii International Conference on System Sciences (HICSS), pp. 4995–5004, January 2013
Clerc, V., de Vries, E., Lago, P.: Using wikis to support architectural knowledge management in global software development. In: Proceedings of the 2010 ICSE Workshop on Sharing and Reusing Architectural Knowledge, SHARK 2010, pp. 37–43. ACM, New York (2010)
de Boer, R.C., van Vliet, H.: Experiences with semantic wikis for architectural knowledge management. In: 2011 Ninth Working IEEE/IFIP Conference on Software Architecture, pp. 32–41. IEEE (2011)
de Graaf, K.A., Tang, A., Liang, P., van Vliet, H.: Ontology-based software architecture documentation. In: 2012 Joint Working IEEE/IFIP Conference on Software Architecture and European Conference on Software Architecture, WICSA-ECSA 2012, pp. 121–130. IEEE Computer Society, Washington, DC (2012)
Capilla, R., Nava, F., Prez, S., Dueas, J.C.: A web-based tool for managing architectural design decisions. ACM SIGSOFT Softw. Eng. Notes 31(5), 20–27 (2006)
Chen, L., Babar, M.A., Liang, H.: Model-centered customizable architectural design decisions management. In: Proceedings of the 2010 21st Australian Software Engineering Conference, ASWEC 2010, pp. 23–32. IEEE Computer Society, Washington, DC (2010)
Jansen, A., Avgeriou, P., van der Ven, J.S.: Enriching software architecture documentation. J. Syst. Softw. 82(8), 1232–1248 (2009)
Babar, M.A., Wang, X., Gorton, I.: Pakme: a tool for capturing and using architecture design knowledge. In: IEEE INMIC 2005 9th International Multitopic Conference on Empirical Software Engineering. National ICT Australia Ltd., IEEE (2005)
Babar, M.A., Gorton, I.: A tool for managing software architecture knowledge. In: Proceedings of the Second Workshop on SHAring and Reusing architectural Knowledge Architecture, Rationale, and Design Intent, SHARK-ADI 2007, p. 11. IEEE Computer Society, Washington, DC (2007)
Eloranta, V.P.P., Hylli, O., Vepsalainen, T., Koskimies, K.: Topdocs: using software architecture knowledge base for generating topical documents. In: 2012 Joint Working IEEE/IFIP Conference on Software Architecture and European Conference on Software Architecture, pp. 191–195. IEEE (2012)
Eloranta, V.P., Koskimies, K.: Lightweight architecture knowledge management for agile software development. In: Babar, M.A.A., Brown, A.W., Mistrik, I. (eds.) Agile Software Architecture: Aligning Agile Processes and Software Architectures. Morgen Kaufmann (2013)
Ghezzi, G., Gall, H.C.: Sofas: a lightweight architecture for software analysis as a service. In: 9th Working IEEE/IFIP Conference on Software Architecture, pp. 93–102 (2011)
Acknowledgements
The research reported in this paper has been partly supported by the Austrian Ministry for Transport, Innovation and Technology, the Federal Ministry of Science, Research and Economy, and the Province of Upper Austria in the frame of the COMET center SCCH.
The authors would like to thank Hermann Lischka from Racon Software GmbH for supporting the project, and Gernot Binder, and Heinz Huber (also Racon Software GmbH) for their cooperation.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Buchgeher, G., Weinreich, R., Kriechbaum, T. (2016). Making the Case for Centralized Software Architecture Management. In: Winkler, D., Biffl, S., Bergsmann, J. (eds) Software Quality. The Future of Systems- and Software Development. SWQD 2016. Lecture Notes in Business Information Processing, vol 238. Springer, Cham. https://doi.org/10.1007/978-3-319-27033-3_8
Download citation
DOI: https://doi.org/10.1007/978-3-319-27033-3_8
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-27032-6
Online ISBN: 978-3-319-27033-3
eBook Packages: Computer ScienceComputer Science (R0)