Automated decision support systems help users make informed and intelligent choices over a set of alternatives, taking into account user preferences and trade-offs among multiple system attributes. In the software engineering domain decision support systems are used to help in evaluating alternative design, technical and managerial choices in terms of quantitative preferences and trade-offs. Preferences over alternatives are evaluated either by directly soliciting from the stakeholders a measure of the perceived utility/value of each attribute, or by quantifying such utility/value based on past experience and expertise. In most practical settings, however, preferences over attributes cannot all be quantified. On the other hand, considering preferences only qualitatively (specifying them as simple relative orderings between alternatives) is also not practical. To overcome these limitations, the proposed research focuses on developing a new paradigm for decision support systems, where preferences are specified both in qualitative and quantitative terms.
The main thrust of this work will be to: (a) develop robust formalisms for representing and reasoning with quantitative and qualitative preferences in an unified fashion, (b) investigate application-domain specific extensions to the formalisms, and (c) identify implementation strategies for practical application of the decision support system as a preference analyzer. The anticipated results will help realize application-specific robust decision support systems in multiple domains, including product-line engineering, safety-critical system development, and goal-oriented requirements engineering, by enabling improved automated reasoning about preferences. This work will contribute to research-based training of a postdoctoral scholar and a graduate student in techniques that cut across software engineering, formal methods and artificial intelligence. Research results will be disseminated through publications in journals and conferences.