Decision models are widely used in software engineering to describe and restrict decision-making (e.g., deriving a product from a product-line). Since decisions are typically interdependent, conflicts during decision-making are inevitably reached when invalid combinations of decisions are made. Unfortunately, the current state-of-the-art provides little support for dealing with such conflicts. On the one hand, some conflicts can be avoided by providing more freedom in which order decisions are made (i.e., most important decisions first). On the other hand, conflicts are unavoidable at times and living with conflicts may be preferable over forcing the user to fix them right away - particularly, because fixing conflicts becomes easier the more is known about an user's intentions. This paper introduces the C2O (Configurator 2.0) tool for guided decision-making. The tool allows the user to answer questions in an arbitrary order - with and without the presence of conflicts. While giving users those freedoms, it still supports and guides them by 1) rearranging the order of questions according to their potential to minimize user input, 2) providing guidance to avoid follow-on conflicts, and 3) supporting users in fixing conflicts at a later time.
[1]
Paul Grünbacher,et al.
DOPLER: An Adaptable Tool Suite for Product Line Engineering
,
2007,
SPLC.
[2]
Robert Balzer,et al.
Tolerating Inconsistency
,
1991,
[1989] Proceedings of the 5th International Software Process Workshop.
[3]
Alexander Egyed,et al.
Conflict Resolution Strategies During Product Configuration
,
2010,
VaMoS.
[4]
Donald W. Loveland,et al.
A machine program for theorem-proving
,
2011,
CACM.
[5]
Jane Huffman Hayes,et al.
Humans in the traceability loop: can't live with 'em, can't live without 'em
,
2005,
TEFSE '05.
[6]
Alexander Egyed,et al.
Instant consistency checking for the UML
,
2006,
ICSE.
[7]
Herre van Oostendorp,et al.
The paradox of the assisted user: guidance can be counterproductive
,
2006,
CHI.