The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.05 - September/October (2008 vol.23)
pp: 66-77
J. Andrés Díaz-Pace , Carnegie Mellon University
ABSTRACT
A software architecture is a blueprint that captures the main design decisions for a system. When designing an architecture, the architect normally evaluates multiple solutions, making a balance among architectural patterns that affect several quality attributes (for example, performance, modifiability, and so on). In this exploration of the design space, the architectural knowledge directs the search toward a good-enough solution. Although decision-making still relies on the architect's expertise, a novel architectural design theory has been recently developed to move more systematically from quality attributes to architectural decisions. In this content, we describe a framework called DesignBots to search for design alternatives, in which the concepts of that theory are mapped to a hierarchical and mixed-initiative planning model. Essentially, quality-attribute scenarios are considered as goals achievable by combinations of patterns that are instantiated by the planning engine. This approach fosters the development of proactive assistants to support architectural design activities.
INDEX TERMS
architectural design framework, AI planning, tool support, quality attributes
CITATION
J. Andrés Díaz-Pace, "Exploring Alternative Software Architecture Designs: A Planning Perspective", IEEE Intelligent Systems, vol.23, no. 5, pp. 66-77, September/October 2008, doi:10.1109/MIS.2008.78
REFERENCES
1. L. Bass, P. Clements, and R. Kazman, Software Architecture in Practice, 2nd ed., Addison-Wesley, 2003.
2. F. Bachmann et al., "Designing Software Architectures to Achieve Quality Attribute Requirements," IEE Proc. Software, vol. 152, no. 4, 2005, pp. 153–165.
3. D. Nau et al., "SHOP2: An HTN Planning System," J. Artificial Intelligence Research, vol. 20, 2003, pp. 379–404.
4. F. Buschmann et al., Pattern-Oriented Software Architecture: A System of Patterns, John Wiley &Sons, 1996.
5. R. Kazman, M. Klein, and P. Clements, ATAM: Method for Architecture Evaluation, tech. report CMU/SEI-2000-TR-004, Software Eng. Inst., Carnegie Mellon Univ., 2002.
6. Q. Yang, Intelligent Planning: A Decomposition and Abstraction-Based Approach, Springer, 1997.
20 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool