Automating Architecture Trade-Off Decision Making through a Complex Multi-attribute Decision Process

  • Majid Makki
  • Ebrahim Bagheri
  • Ali A. Ghorbani
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5292)


A typical software architecture design process requires the architects to make various trade-off architecture decisions. The architects need to consider different possibilities and combinations of tactics and patterns to satisfy the elicited quality scenarios of the intended software system, some of which may be conflicting or inconsistent in nature. The formation of the correct composition of these elements of architecture decisions for the satisfaction of the quality scenarios can be considered an important art of the architect; however, in cases where the architect is dealing with multiple stakeholders with inconsistent preferences, this can be an awkward task. In this paper, we formalize this process as a complex multi-attribute decision making procedure within the Attribute Driven Design methodology. In such a context, we are able to incrementally elicit the communal preferences of the stakeholders with regards to the available quality scenarios and hence assist the software architect in methodically making the architecture decisions with the highest expected utility for the stakeholders.We will also introduce our implementation of a decision support system, which embodies the methods proposed in this paper, along with a case study.


Decision Support System Software Architecture Optimal Decision Preference Elicitation Gaussian Probability Distribution 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bachmann, F., Bass, L., Klein, M.: Preliminary design of arche: A software architecture design assistant. Tech. rep., Software Engineering Institute Carnegie Mellon (2003)Google Scholar
  2. 2.
    Bass, L., Clements, P., Kazman, R.: Software architecture in practice. Addison-Wesley Longman Publishing Co., Boston (1998)Google Scholar
  3. 3.
    Bass, L.J., Klein, M., Bachmann, F.: Quality attribute design primitives and the attribute driven design method. In: van der Linden, F.J. (ed.) PFE 2002. LNCS, vol. 2290, pp. 169–186. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  4. 4.
    Brown, A.W., McDermid, J.A.: The Art and Science of Software Architecture. In: Oquendo, F. (ed.) ECSA 2007. LNCS, vol. 4758, pp. 237–256. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  5. 5.
    Celiku, O., Garlan, D., Schmerl, B.: Augmenting architectural modeling to cope with uncertainty. In: Proceedings of the International Workshop on Living with Uncertainties (IWLU 2007), co-located with the 22nd International Conference on Automated Software Engineering (ASE 2007), Atlanta, GA, USA, November 5 (2007),
  6. 6.
    Chajewska, U., Koller, D., Parr, R.: Making rational decisions using adaptive utility elicitation. In: Proceedings of the Seventeenth National Conference on Artificial Intelligence and Twelfth Conference on Innovative Applications of Artificial Intelligence, pp. 363–369. AAAI Press / The MIT Press (2000)Google Scholar
  7. 7.
    Fishburn, P.C.: Utility theory for decision-making. Wiley, New York (1970)zbMATHGoogle Scholar
  8. 8.
    Pearson, E.S., Tukey, J.W.: Approximate means and standard deviations based on distances between percentage points of frequency curves. Biometrika 52(3-4), 533–546 (1965)zbMATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Poladian, V., Shaw, M., Garlan, D.: Modeling uncertainty of predictive inputs in anticipatory dynamic configuration. In: Proceedings of the International Workshop on Living with Uncertainties (IWLU 2007), co-located with the 22nd International Conference on Automated Software Engineering (ASE 2007), Atlanta, GA, USA, November 5 (2007),
  10. 10.
    Shaw, M., Clements, P.C.: The golden age of software architecture. IEEE Software 23(2), 31–39 (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Majid Makki
    • 1
  • Ebrahim Bagheri
    • 1
  • Ali A. Ghorbani
    • 1
  1. 1.Faculty of Computer ScienceUniversity of New BrunswickFrederictonCanada

Personalised recommendations