The development and maintenance of product configuration systems is faced with increasing challenges caused by the growing complexity of the underlying knowledge bases. Effective knowledge acquisition is needed since the product and the corresponding configuration system have to be developed in parallel. In this paper, we show how to employ a standard design language (Unified Modeling Language, UML) for modeling configuration knowledge bases. The two constituent parts of the configuration model are the component model and a set of corresponding functional architectures defining which requirements can be imposed on the product. The conceptual configuration model is automatically translated into an executable logic representation. Using this representation we show how to employ model-based diagnosis techniques for debugging faulty configuration knowledge bases, detecting infeasible requirements, and for reconfiguring old configurations.