Model-based diagnosis refers to reasoning from first principles that declaratively describe a system's structural and behavioral properties. In recent years, model-based diagnosis has proven successful in such areas as software design and fault localization in hardware. However, although the basic principles of model-based diagnosis are well known, creating appropriate domain-specific models is still a challenge. Nevertheless, empirical results for industrial-sized problems related to the debugging of hardware designs show the appropriateness of model-based diagnosis for medium-size real-world problems in a commercial setting.