1. A computer-implemented method of guiding a user in designing a product defined by data, the method comprising: examining items of the data to detect whether each item conforms to rules or violates the rules; performing at least one action in response to a detection of a rule violation; displaying the data to the user in a manner emphasizing at least one particular data item that caused the rule violation; receiving any new data input from the user; and repeating the examining, action performing, and displaying steps using the new data.