Sharing architecture knowledge through models: quality and cost

In the field of software architecture, there has been a paradigm shift from describing structural information, such as components and connectors, to documenting architectural knowledge (AK), such as design decisions and rationale. To this end, a series of industrial and academic domain models have been proposed for defining the concepts and their relationships in the field of AK. To a large extent the merit of this new paradigm is to share and reuse AK across organizations, especially in geographically distributed settings. However, the employment of different AK domain models by different parties makes effective AK sharing challenging, as it needs to be mapped from one domain model to another. In this paper, we investigate two different approaches for sharing AK, based on either direct or indirect mapping between different AK domain models. We compare the cost and quality of these two approaches, with respect to the processing of large amounts of AK instances. To predict the quality and costs of this processing in advance, a prediction model is proposed and validated with a concrete AK sharing case. Based on the comparison results, stakeholders involved with AK sharing can select an appropriate approach by trading off quality and cost in their own context.

[1]  Philippe Kruchten,et al.  Architectural knowledge and rationale: issues, trends, challenges , 2007, SOEN.

[2]  Richard N. Taylor,et al.  A Classification and Comparison Framework for Software Architecture Description Languages , 2000, IEEE Trans. Software Eng..

[3]  Paris Avgeriou,et al.  Sharing the Architectural Knowledge of Quantitative Analysis , 2008, QoSA.

[4]  Rafael Capilla,et al.  A web-based tool for managing architectural design decisions , 2006, SOEN.

[5]  Dan Brickley,et al.  Rdf vocabulary description language 1.0 : Rdf schema , 2004 .

[6]  Philippe Kruchten,et al.  An Ontology of Architectural Design Decisions in Software-Intensive Systems , 2004 .

[7]  Paul Clements,et al.  Software Architecture in Practice: Addison-Wesley , 1998 .

[8]  Jan Bosch,et al.  Software Architecture as a Set of Architectural Design Decisions , 2005, 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05).

[9]  Jan Bosch,et al.  Software Architecture: The Next Step , 2004, EWSA.

[10]  Yannis Kalfoglou,et al.  Ontology mapping: the state of the art , 2003, The Knowledge Engineering Review.

[11]  Thomas R. Gruber,et al.  A translation approach to portable ontology specifications , 1993, Knowl. Acquis..

[12]  Patricia Lago,et al.  Architectural Knowledge: Getting to the Core , 2007, QoSA.

[13]  Dieter K. Hammer,et al.  Tool Support for Architectural Decisions , 2007, 2007 Working IEEE/IFIP Conference on Software Architecture (WICSA'07).

[14]  Muhammad Ali Babar,et al.  A survey of architecture design rationale , 2006, J. Syst. Softw..

[15]  AvgeriouParis,et al.  Architectural knowledge and rationale , 2007 .

[16]  Ademar Aguiar,et al.  WikiWiki weaving heterogeneous software artifacts , 2005, Int. Sym. Wikis.

[17]  Alexander L. Wolf,et al.  Acm Sigsoft Software Engineering Notes Vol 17 No 4 Foundations for the Study of Software Architecture , 2022 .

[18]  Muhammad Ali Babar,et al.  A Framework for Supporting Architecture Knowledge and Rationale Management , 2006 .

[19]  IEEE-SA Standards Board , 2000 .

[20]  Felix Bachmann,et al.  Experience Using the Web-Based Tool Wiki for Architecture Documentation , 2005 .

[21]  Hai Zhuge,et al.  The knowledge grid , 2004 .

[22]  Emily Dimmer,et al.  The Gene Ontology Annotation (GOA) Database: sharing knowledge in Uniprot with Gene Ontology , 2004, Nucleic Acids Res..

[23]  Jos Nijhuis,et al.  Design Decisions: The Bridge between Rationale and Architecture , 2006 .

[24]  Ian Horrocks,et al.  OWL Web Ontology Language Reference-W3C Recommen-dation , 2004 .

[25]  Raymond McCall,et al.  Rationale Management in Software Engineering , 2006 .

[26]  Philippe Kruchten,et al.  Building up and Exploiting Architectural Knowledge , 2005, 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05).

[27]  Karla A. V. Borges,et al.  Ontologies and Knowledge Sharing in Urban GIS , 2000 .

[28]  Siegfried Handschuh,et al.  Semantic annotation for knowledge management: Requirements and a survey of the state of the art , 2006, J. Web Semant..

[29]  Jeff Tyree,et al.  Architecture decisions: demystifying architecture , 2005, IEEE Software.

[30]  Antony Tang,et al.  A rationale-based architecture model for design traceability and reasoning , 2007, J. Syst. Softw..

[31]  Peng Liang,et al.  A Case of Quality Prediction of Architecture Knowledge Sharing through Model Mapping , 2008 .

[32]  Steffen Staab,et al.  QOM - Quick Ontology Mapping , 2004, GI Jahrestagung.

[33]  L. Stein,et al.  OWL Web Ontology Language - Reference , 2004 .

[34]  Hyoil Han,et al.  A survey on ontology mapping , 2006, SGMD.

[35]  Panagiotis Louridas,et al.  Using wikis in software development , 2006, IEEE Software.

[36]  Jérôme Euzenat,et al.  Semantic Precision and Recall for Ontology Alignment Evaluation , 2007, IJCAI.

[37]  Marc Ehrig,et al.  Relaxed Precision and Recall for Ontology Matching , 2005, Integrating Ontologies.

[38]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[39]  Paris Avgeriou,et al.  First workshop on sharing and reusing architectural knowledge , 2006, SOEN.

[40]  Cyril Cleverdon,et al.  The Cranfield tests on index language devices , 1997 .

[41]  Jeff Tyree,et al.  Position on Ontology-Based Architecture , 2005, 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05).

[42]  Thomas R. Gruber,et al.  A Translation Approach to Portable Ontologies , 1993 .