Patent ID: 8584080

Claim:
A system for modeling computer software product line variants, the system comprising: a model builder configured to construct a model of a plurality of variants of a computer software application, wherein said model includes: at least one common-to-variants element that is common to a plurality of said variants; a plurality of variant-specific elements, wherein said plurality of variant-specific elements include at least one place-holder class having a first variant-related stereotype and a plurality of dependency associations associating said place-holder class with a plurality of variant classes having a second variant-related stereotype that is different than said first variant-related stereotype, wherein programming logic for each of said plurality of variant-specific elements is provided with each of said plurality of said variants of a variation point, and interface code configured to conform any of said variant-specific elements to any of said common-to-variants elements; and an application generator configured to generate a plurality of computer software applications for a corresponding plurality of combinations of said common-to-variants elements and said variant-specific elements, wherein said plurality of computer software applications are generated from a single model; wherein said model builder and said application generator are implemented in at least one of computer hardware and computer software embodied in a tangible non-transitory computer-readable storage medium.