Jump to content

Feature model

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Sb1916 (talk | contribs) at 22:38, 28 March 2009 (Created page with '{{construction}} A '''''software product line (SPL)''''' is a family of related programs. When the units of program construction are features -- increments in pr…'). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

A software product line (SPL) is a family of related programs. When the units of program construction are features -- increments in program functionality or development -- every program in an SPL is identified with a unique combination of features, and vice versa.

A standard technique for defining programs as combinations of features is a feature model. A feature model is an and-or tree, where terminal nodes represent primitive features and non-terminals are compound features. Selecting a feature automatically selects its parent feature. Among the common parent-child relationships are: mandatory (selecting the parent automatically selects the child), optional (selecting the parent does not automatically select the child), or (1 or more children must be selected), choose1 (precisely one child must be selected). Feature models may also have cross-tree constraints (additional predicates that imply the presence or absence of other features).

(More to be supplied shortly)