ICSE '91 Proceedings of the 13th international conference on Software engineering
A machine program for theorem-proving
Communications of the ACM
Humans in the traceability loop: can't live with 'em, can't live without 'em
TEFSE '05 Proceedings of the 3rd international workshop on Traceability in emerging forms of software engineering
The paradox of the assisted user: guidance can be counterproductive
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Instant consistency checking for the UML
Proceedings of the 28th international conference on Software engineering
A comparison of strategies for tolerating inconsistencies during decision-making
Proceedings of the 16th International Software Product Line Conference - Volume 1
C2O configurator: a tool for guided decision-making
Automated Software Engineering
Hi-index | 0.00 |
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.