An accurate model of the user's preferences is a crucial element of most decision support systems. It is often assumed that users have a well-defined and stable set of preferences that can be elicited through a set of questions. However, recent research has shown that people very often construct their preferences on the fly depending on the available decision options. Thus, their answers to a series of questions before seeing decision options are likely to be inconsistent and often lead to erroneous models. To accurately capture preference expressions as people make them, it is necessary for the preference model to be agile: it should allow decision making with an incomplete preference model, and it should let users add, retract or revise individual preferences easily. We show how constraint satisfaction and in particular soft constraints provide the right formalism to do this, and give examples of its implementation in a travel planning tool. Copyright © 2005, American Association for Artificial Intelligence (www.aaai.org). All rights reserved.