Capturing, sharing, and reusing architectural knowledge, models for software architecture knowledge, facilitating context information, building a software architecture knowledge-base.


Motivation 

Software Architecture Knowledge Management (SAKM) deals with capturing, sharing, and reusing of architectural knowledge. Many approaches and tools for SAKM have been developed within the last years. Examples are conceptual models and ontologies, use cases for SAKM-related activities, and different kinds of tools like (semantic) wikis, extensions of UML, IDE extensions, and extensions of programming languages. Despite over 10 years of reasearch in this area, SAKM has not yet found wide-spread adoption in practice. In this project we aim to gain a deeper understanding of the state of SAKM both in academia and practice and to develop support for SAKM based on our findings. We also explore concepts like group decision making, the role of context for capturing and using architectural knowledge, and the creation of an architectural knowledge base, providing reusable and proven architectural knowledge for different domains.

Goals
Development of SAKM models, development of approaches for capturing of architectural knowledge, exploration of approaches for Group Decision Making (GDM) in software architecture, creation of a Software Architecture Knowledge Base (SKB), facilitation of context-information for identifying relevant architectural knowledge

Results
Integration of requirements and decisions into a software architecture meta-model (LISA Model) and toolkit (LISA Toolkit), automatic capturing of traces from requirements, design decisions and features to architectural design elements and code Systematic Literature Reviews (SLRs) on approaches for software architecture knowledge management, an international expert survey (based on open interviews) on design practices, design decisions and design documentation in practice, an prototype implementation for capturing and maintaining architectural knowledge using context information, prototypes for group decision making

Research Spotlights
A Study on Software Architecture Decisions in Practice 
A Systematic Review on Software Architecture Knowledge Management Approaches

Duration
06/2014 – up to now

Partner Software Competence Center Hagenberg (SCCH)

Contact Rainer Weinreich

Software Architecture Knowledge Management

Publications

B. Mayer, R. Weinreich: An Approach to Extract the Architecture of Microservice-Based Software Systems, 12th IEEE International Symposium on Service-Oriented System Engineering (SOSE 2018), Bamberg, March 26-29, 2018, IEEE Computer Society Press, 2018. doi: 10.1109/SOSE.2018.00012
Conference Article
R. Weinreich, I. Groher: The Architect's Role in Practice: From Decision-maker to Knowledge Manager?, IEEE Software, Issue No. 06, Vol. 33, November/December, 2016. doi:10.1109/MS.2016.143.
Journal Article
R. Weinreich, I. Groher: The Architect's Role in Practice: From Decision-maker to Knowledge Manager?, IEEE Software, Issue No. 06, Vol. 33, November/December, 2016. doi:10.1109/MS.2016.143.
Journal Article
R. Weinreich, I. Groher: Software architecture knowledge management approaches and their support for knowledge management activities: A systematic literature review, Information and Software Technology, Volume 80, pp. 265-286, Elsevier, December 2016. doi:10.1016/j.infsof.2016.09.007.
Journal Article
I. Groher, R. Weinreich: Collecting Requirements and Ideas for Architectural Group Decision-Making Based on Four Approaches, 9th European Conference on Software Architecture (ECSA 2015), Dubrovnik/Cavtat, Croatia, September 7-11, 2015, doi:10.1007/978-3-319-23727-5_15.
Conference Article
R. Weinreich, I. Groher, C. Miesbauer: An Expert Survey on Kinds, Influence Factors and Documentation of Design Decisions in Practice, Future Generation Computer Systems, Volume 47, pp. 145-160, available online December 9, 2014, published June 2015, doi:10.1016/j.future.2014.12.002.
Journal Article
I. Groher, R. Weinreich: A Study on Architectural Decision-Making in Context, 12th Working IEEE/IFIP Conference on Software Architecture (WICSA 2015), pp. 11-20, Montreal, Canada, May 4-8, 2015, doi: 10.1109/WICSA.2015.27
Conference Article
I. Groher, R. Weinreich: Variability Support in Architecture Knowledge Management Approaches: A Systematic Literature Review, 48th Annual Hawaii International Conference on System Sciences (HICSS 2015), pp. 5393-5402, Kauai, Hawaii, January 5-8, 2015, doi:10.1109/HICSS.2015.634
Conference Article
R. Weinreich, I. Groher: A Fresh Look at Codification Approaches for SAKM: A Systematic Literature Review, 8th European Conference on Software Architecture (ECSA 2014), LNCS 8627, Springer International Publishing Switzerland, pp. 1-16, Vienna, Austria, August 25-29, 2014, doi:10.1007/978-3-319-09970-5_1.
Conference Article
C. Miesbauer, R. Weinreich: Classification of Design Decisions: An Expert Survey in Practice, European Conference on Software Architecture (ECSA 2013), Montpellier, France, Springer LNCS, 2013, p. 130-145, doi:10.1007/978-3-642-39031-9_12.
Conference Article
C. Miesbauer, R. Weinreich: Capturing and Maintaining Architectural Knowledge using Context Information, 2012 Joint Working Conference on Software Architecture & 6th European Conference on Software Architecture (WICSA-ECSA 2012), Helsinki, Finland, August 20-24, 2012, doi:10.1109/WICSA-ECSA.212.30.
Conference Article
R. Weinreich, G. Buchgeher: Integrating Requirements and Design Decisions in Architecture Representation, 4th European Conference on Software Architecture (ECSA 2010), August 23-26, 2010, Copenhagen, Denmark, Springer LNCS, 2010, doi:10.1007/978-3-642-15114-9_9.
Conference Article