Design rationale: the argument behind the artifact
CHI '89 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
ICSE '91 Proceedings of the 13th international conference on Software engineering
A machine program for theorem-proving
Communications of the ACM
Crazy Clocks: Counterintuitive Consequences of "Intelligent" Automation
IEEE Intelligent Systems
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
User guidance for creating precise and accessible property specifications
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Automated Diagnosis of Product-Line Configuration Errors in Feature Models
SPLC '08 Proceedings of the 2008 12th International Software Product Line Conference
SPLC '08 Proceedings of the 2008 12th International Software Product Line Conference
S.P.L.O.T.: software product lines online tools
Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications
Product Line Tools are Product Lines Too: Lessons Learned from Developing a Tool Suite
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
SAT-based analysis of feature models is easy
Proceedings of the 13th International Software Product Line Conference
Automated analysis of feature models 20 years later: A literature review
Information Systems
C2O: a tool for guided decision-making
Proceedings of the IEEE/ACM international conference on Automated software engineering
The DOPLER meta-tool for decision-oriented variability modeling: a multiple case study
Automated Software Engineering
Reverse engineering feature models
Proceedings of the 33rd International Conference on Software Engineering
Visualization techniques for application in interactive product configuration
Proceedings of the 15th International Software Product Line Conference, Volume 2
Scalable Prediction of Non-functional Properties in Software Product Lines
SPLC '11 Proceedings of the 2011 15th International Software Product Line Conference
Optimizing User Guidance during Decision-Making
SPLC '11 Proceedings of the 2011 15th International Software Product Line Conference
Managing SAT inconsistencies with HUMUS
Proceedings of the Sixth International Workshop on Variability Modeling of Software-Intensive Systems
Comparing or configuring products: are we getting the right ones?
Proceedings of the Eighth International Workshop on Variability Modelling of Software-Intensive Systems
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, it is often neither obvious which decisions have the most significant impact nor which decisions might ultimately conflict. Unfortunately, the current state-of-the-art provides little support for dealing with such situations. 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 as more is known about a 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 inconsistencies. While giving users those freedoms, it still supports and guides them by (i) rearranging the order of questions according to their potential to minimize user input, (ii) providing guidance to avoid follow-on conflicts, and (iii) supporting users in fixing conflicts at a later time.