Skip to main content

Using Planning Techniques to Assist Quality-Driven Architectural Design Exploration

  • Conference paper
Software Architectures, Components, and Applications (QoSA 2007)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4880))

Included in the following conference series:

Abstract

A software architecture design captures the main decisions regarding the quality-attribute requirements for a system. When constructing these designs, the architect normally evaluates and combines solutions with different quality-attribute tradeoffs. This exploration of the design space can be seen as a searching problem, in which the architect’s expertise is what directs the search towards a “good-enough” solution. Nonetheless, given complexity of this search, assisting the architect with adequate tool support becomes indispensable. In this context, we have investigated the utility of a planning-based tool approach called DesignBots to explore design alternatives. Specifically, the approach considers quality-attribute issues as goals achievable by combinations of architectural mechanisms, which are generated by a mixed-initiative and hierarchical planning engine. Our experiences with DesignBots show that the planning approach effectively helps architects to explore design alternatives productively.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Amandi, A., Campo, M., Zunino, A.: JavaLog: A Framework-based Integration of Java and Prolog for Agent-oriented Programming. In: Ledley, R.S. (ed.) Computer Languages, Systems and Structures, Elsevier Science, Amsterdam (2004)

    Google Scholar 

  2. Arshad, N., Heimbigner, D., Wolf, A.: Deployment and Dynamic Reconfiguration Planning for Distributed Software Systems. In: Proceedings ICTAI 2003, pp. 39–46 (2003)

    Google Scholar 

  3. Bachmann, F., Bass, L., Klein, M.: Preliminary Design of ArchE: A Software Architecture Design Assistance. Technical Report CMU/SEI-2003-TR-021 (2003)

    Google Scholar 

  4. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Reading (2003)

    Google Scholar 

  5. Bass, L., Ivers, J., Klein, M., Merson, P., Wallnau, K.: Encapsulating Quality Attribute Knowledge. In: Proceedings WICSA 2005, pp. 193–194 (2005), ISBN 0-7695-2548-2

    Google Scholar 

  6. Bondarev, E., Chaudron, M., de With, P.: Quality-Oriented Design Space Exploration for Component-Based Architectures. Computer Science Reports. TUE Department of Mathematics and Computer Science. Eindhoven University of Technology, Eindhoven, The Netherlands (February 2006)

    Google Scholar 

  7. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-Oriented Software Architecture. In: A System of Patterns, Wiley & Sons, Chichester (1996)

    Google Scholar 

  8. Campo, M., Díaz-Pace, A., Zito, M.: Developing Object-oriented Enterprise Quality Frameworks using Proto-frameworks. In: Software: Practice and Experience, vol. 32(8), pp. 837–843. Wiley, Chichester (2002)

    Google Scholar 

  9. Clarke, J., Dolado, J., Harman, M., Hierons, R., Jones, R., Lumkinm, M., Mitchell, B., Mancoridis, S., Rees, K., Roper, M., Shepperd, M.: Reformulating Software Engineering as a Search Problem. In: Software, I.E.E. (ed.) Software IEE Proceedings, vol. 150(3), pp. 161–175 (2003), ISSN: 1462-5970

    Google Scholar 

  10. Coyne, R.: Design Reasoning Without Explanations. AI Magazine 11(4), 72–80 (1990)

    Google Scholar 

  11. Chung, L., Nixon, B., Yu, E.: Using Non-Functional Requirements to Systematically Select Among Alternatives in Architectural Design. In: Proceedings 1st International Workshop on Architectures for Software Systems, Seattle, pp. 31–43 (April 24-28, 1995)

    Google Scholar 

  12. de Bruin, H., van Vliet, H.: Quality-Driven Software Architecture Composition. Journal of Systems and Software 66(3), 269–284 (2003)

    Article  Google Scholar 

  13. Diaz-Pace, A.: A Planning-based Approach for the Exploration of Quality-driven Design Alternatives in Software Architectures. PhD. Thesis. UNICEN University, Faculty of Sciences, Tandil, Argentina (2004)

    Google Scholar 

  14. Garlan, D., Monroe, R., Wile, D.: ACME: Architectural Description of Component-based Systems. In: Foundations of Component-based Systems, Cambridge Press (2000)

    Google Scholar 

  15. Garlan, D., Cheng, S., Schmerl, B.: Increasing System Dependability through Architecture-based Self-repair. In: de Lemos, Gacek, Romanovsky (eds.) Architecting Dependable Systems, Springer, Heidelberg (2003)

    Google Scholar 

  16. Grunske, L.: Identifying “Good” Architectural Design Alternatives with Multi-Objective Optimization Strategies. In: International Conference on Software Engineering (ICSE), Workshop on Emerging Results, Shanghai, ACM 1-59593-085-X/06/0005, pp. 849–852 (May 20-28, 2006)

    Google Scholar 

  17. Kazman, R., Klein, M., Clements, P.: ATAM: Method for Architecture Evaluation. Technical Report CMU/SEI-2000-TR-004 (August 2002)

    Google Scholar 

  18. Long, D., Fox, M.: Progress in AI Planning Research and Applications. Upgrade/Novatica 159. III (5), 10–25 (2002)

    Google Scholar 

  19. Nau, D., Au, T.-C., Ilghami, O., Kuter, U., Murdock, J.W., Wu, D., Yaman, F.: SHOP2: An HTN planning system. Journal of AI Research 20, 379–404 (2003)

    MATH  Google Scholar 

  20. Rich, C., Waters, R.: The Programmer´s Apprentice. Addison-Wesley, Reading (1990)

    Google Scholar 

  21. Smith, G., Gero, J.: What does an agent mean by being "situated"? Design Studies 26, 535–561 (2005)

    Article  Google Scholar 

  22. Wilkins, D., desJardins, M.: A Call for Knowledge-based Planning. In: AI Magazine, vol. 22(1), Springer, Heidelberg (2001)

    Google Scholar 

  23. Yang, Q.: Intelligent Planning: A Decomposition and Abstraction based Approach. Springer, New York (1997)

    Book  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Díaz-Pace, J.A., Campo, M.R. (2007). Using Planning Techniques to Assist Quality-Driven Architectural Design Exploration. In: Overhage, S., Szyperski, C.A., Reussner, R., Stafford, J.A. (eds) Software Architectures, Components, and Applications. QoSA 2007. Lecture Notes in Computer Science, vol 4880. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-77619-2_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-77619-2_3

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-77617-8

  • Online ISBN: 978-3-540-77619-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics