A Tool for Managing Software Architecture Knowledge

This paper describes a tool for managing architectural knowledge and rationale. The tool has been developed to support a framework for capturing and using architectural knowledge to improve the architecture process. This paper describes the main architectural components and features of the tool. The paper also provides examples of using the tool for supporting well-known architecture design and analysis methods.

[1]  Muhammad Ali Babar,et al.  Toward a Framework for Capturing and Using Architecture Design Knowledge , 2005 .

[2]  Robert L. Nord,et al.  A general model of software architecture design derived from five industrial approaches , 2007, J. Syst. Softw..

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

[4]  Morten T. Hansen,et al.  What's your strategy for managing knowledge? , 1999, Harvard business review.

[5]  B. F. Castro Buschmann, Frank; Meunier, Regine; Rohnert, Hans; Sommerlad, Peter; Stal, Michael. Pattern-oriented software architecture: a system of patterns, John Wiley & Sons Ltd, 1996 , 1997 .

[6]  Guillermo Arango,et al.  A process for consolidating and reusing design knowledge , 1993, Proceedings of 1993 15th International Conference on Software Engineering.

[7]  Janet L. Kolodner,et al.  Improving Human Decision Making through Case-Based Decision Aiding , 1991, AI Mag..

[8]  Felix Bachmann,et al.  Quality Attribute Design Primitives , 2000 .

[9]  Loren G. Terveen,et al.  Living Design Memory: Framework, Implementation, Lessons Learned , 1995, Hum. Comput. Interact..

[10]  Grady Booch On creating a handbook of software architecture , 2005, OOPSLA '05.

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

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

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

[14]  Robert L. Nord,et al.  Generalizing a Model of Software Architecture Design from Five Industrial Approaches , 2005, 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05).

[15]  John Crupi,et al.  Core J2EE Patterns: Best Practices and Design Strategies , 2001 .

[16]  David Garlan,et al.  Documenting software architectures: views and beyond , 2002, 25th International Conference on Software Engineering, 2003. Proceedings..

[17]  Thomas R. Gruber,et al.  Design Knowledge and Design Rationale: A Framework for Representation, Capture, and Use , 1991 .

[18]  Second Workshop on Sharing and Reusing Architectural Knowledge - Architecture, Rationale, and Design Intent, SHARK/ADI 2007, Minneapolis, MN, USA, May 20-26, 2007 , 2007, SHARK/ADI@ICSE.

[19]  Scott Henninger,et al.  Tool Support for Experience-based Software Development Methodologies , 2003, Adv. Comput..

[20]  Colin Potts,et al.  Recording the reasons for design decisions , 1988, Proceedings. [1989] 11th International Conference on Software Engineering.

[21]  Leonard J. Bass,et al.  The essential components of software architecture design and analysis , 2006, J. Syst. Softw..

[22]  Jintae Lee,et al.  What's in design rationale? , 1991 .

[23]  Rick Kazman,et al.  Evaluating Software Architectures: Methods and Case Studies , 2001 .

[24]  Philippe Kruchten,et al.  Sharing and Reusing Architectural Knowledge--Architecture, Rationale, and Design Intent , 2007, 29th International Conference on Software Engineering (ICSE'07 Companion).

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

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

[27]  Douglas R. Skuce,et al.  Knowledge management in software design: a tool and a trial , 1995, Softw. Eng. J..

[28]  Barbara A. Kitchenham,et al.  Modeling Software Measurement Data , 2001, IEEE Trans. Software Eng..

[29]  Feniosky Peña-Mora,et al.  Augmenting design patterns with design rationale , 1997, Artificial Intelligence for Engineering Design, Analysis and Manufacturing.

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

[31]  B. J. Ferro Castro,et al.  Pattern-Oriented Software Architecture: A System of Patterns , 2009 .

[32]  Muhammad Ali Babar,et al.  Capturing and using software architecture knowledge for architecture-based software development , 2005, Fifth International Conference on Quality Software (QSIC'05).

[33]  Philippe Kruchten,et al.  Building Up and Reasoning About Architectural Knowledge , 2006, QoSA.

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

[35]  Kevin C. Desouza,et al.  Managing knowledge in distributed projects , 2004, CACM.