1. A computer-implemented method for modeling, comprising the steps of: using a modeling language to prepare a first model of a subject, said first model comprising elements; adding a variability layer of variability elements into said first model to produce a second model, wherein said variability elements have respective configuration conditions, and wherein said subject has variants; respectively associating said variability elements with at least a portion of said elements, to define conditional elements; evaluating said configuration conditions of said variability elements; and in said second model classifying said conditional elements for inclusion in different ones of said variants responsively to respective evaluations of said configuration conditions of said variability elements associated therewith.