Abstract
Architectural knowledge consists of architecture design as well as the design decisions, assumptions, context, and other factors that together determine why a particular solution is the way it is. Except for the architecture design part, most of the architectural knowledge usually remains hidden, tacit in the heads of the architects. We conjecture that an explicit representation of architectural knowledge is helpful for building and evolving quality systems. If we had a repository of architectural knowledge for a system, what would it ideally contain, how would we build it, and exploit it in practice? In this paper we describe a use-case model for an architectural knowledge base, together with its underlying ontology. We present a small case study in which we model available architectural knowledge in a commercial tool, the Aduna Cluster Map Viewer, which is aimed at ontology-based visualization. Putting together ontologies, use cases and tool support, we are able to reason about which types of architecting tasks can be supported, and how this can be done.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Bass, L., et al.: Software Architecture in Practice. Addison-Wesley, Reading (2003)
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)
Buckingham Shum, S.: Analyzing the usability of a Design Rational Notation. In: Moran, T.P., Carroll, J.M. (eds.) Design Rationale Concepts, Techniques, and Use, pp. 185–215. Lawrence Erlbaum Associates, Mahwah (1996)
Burge, J.E., Brown, D.C.: Reasoning with design rationale. In: Gero, J.S. (ed.) Artificial Intelligence in Design 2000, pp. 611–629. Kluwer Academic Publishers, Netherlands (2000)
Clements, P., Bachmann, F., Bass, L., et al.: Documenting Software Architectures: Views and Beyond. Addison-Wesley, Boston (2002)
Conklin, J., Begeman, M.L.: gIBIS: A tool for all reasons. Journal of the American Society for Information Science 40 (1989)
Fekete, J.-D.: The InfoVis Toolkit. In: IEEE Symposium on Information Visualization 2004 (INFOVIS 2004), pp. 167–174 (2004)
Fluit, C., Sabou, M., van Harmelen, F.: Ontology-based information visualisation. In: Geroimenko, V., Chen, C. (eds.) Visualising the Semantic Web. Springer, Heidelberg (2005)
Fowler, M.: Who Needs an Architect. IEEE Software 20(5), 11–13 (2003)
Granitzer, M., Kienreich, W., Sabol, V., et al.: Evaluating a System for Interactive Exploration of Large, Hierarchically Structured Document Repositories. In: IEEE Symposium on Information Visualization 2004 (INFOVIS 2004), pp. 127–133. IEEE CS, Los Alamitos (2004)
Hayes, J.H., Dekhtyar, A., Sundaram, S.K.: Improving After the Fact Tracing and Mapping: Supporting Software Quality Predictions. IEEE Software 22, 30–37 (2005)
IEEE standard 1471:2000–Recommended practice for architectural description of software intensive systems. IEEE, Los Alamitos (2000)
Klein, M.: DRCS: An Integrated System for Capture of Designs and Their Rationale. In: Gero, J.S. (ed.) Artificial Intelligence in Design 1992, pp. 393–412. Kluwer AP, Dordrecht (1993)
Kruchten, P.: The 4+1 View Model of Architecture. IEEE Software 12(6), 45–50 (1995)
Kruchten, P.: An Ontology of Architectural Design Decisions. In: 2nd Groningen Workshop on Software Variability Management, Rijksuniversiteit Groningen (2004)
Lago, P., van Vliet, H.: Explicit Assumptions Enrich Architectural Models. In: Proceeding of ICSE 2005, pp. 206–214. ACM Press, New York (2005)
Lee, J.: Design Rationale: Understanding the Issues. IEEE Expert 12, 78–85 (1997)
Lee, J.: SIBYL: a tool for managing group design rationale. In: ACM conference on Computer-supported cooperative work (CSCW 1990), pp. 79–92 (1990)
Myers, K.L., Zumel, N.B., Garcia, P.: Acquiring Design Rationale Automatically. Artificial Intelligence for Engineering Design, Analysis and Manufacturing 14 (2000)
Nonaka, I., Takeuchi, H.: The Knowledge-Creating Company: How Japanese Companies Create the Dynamics of Innovation. Oxford University Press, Oxford (1995)
Rus, I., Lindvall, M.: Knowledge Management in Software Engineering. IEEE Software 19, 26–38 (2002)
Tang, A., Babar, M.A., Gorton, I., et al.: A Survey of Architecture Design Rationale. In: WICSA 5. IEEE CS, Los Alamitos (2005)
Tang, A., Nicholson, A., Jin, Y., et al.: Using Bayesian Belief Networks for Change Impact Analysis in Architecture Design. In: WICSA 5. IEEE CS, Los Alamitos (2005)
Tufte, E.R.: Visual explanations: images and quantities, evidence and narrative. Graphics Press LLC, Cheshire (1997)
Tyree, J., Akerman, A.: Architecture Decisions: Demystifying Architecture. IEEE Software 22, 19–27 (2005)
van der Ven, J.S., et al.: Using Architectural decisions. In: Hofmeister, C., Crnkovic, I., Reussner, R., Becker, S. (eds.) Perspectives in Software Architecture Quality, Universitaet Karlsruhe, Fakultaet fuer Informatik (2006)
van Ham, F.: Using Multilevel Call Matrices in Large Software Projects. In: IEEE Symposium on Information Visualization 2003 (INFOVIS 2003), pp. 227–232. IEEE CS, Los Alamitos (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kruchten, P., Lago, P., van Vliet, H. (2006). Building Up and Reasoning About Architectural Knowledge. In: Hofmeister, C., Crnkovic, I., Reussner, R. (eds) Quality of Software Architectures. QoSA 2006. Lecture Notes in Computer Science, vol 4214. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11921998_8
Download citation
DOI: https://doi.org/10.1007/11921998_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-48819-4
Online ISBN: 978-3-540-48820-0
eBook Packages: Computer ScienceComputer Science (R0)