Features and Feature Model
A feature model captures all features of a product family and their valid combinations, serving as the central variability model in Product Line Engineering and variant management.
A feature is a user-visible characteristic of a product that delivers value to a customer or stakeholder. A feature model is a structured representation of all features in a product family, their relationships, and the rules governing which combinations are valid — making it the central variability artifact in Product Line Engineering (PLE) Product Line Engineering (PLE) (ˈprä-dəkt ˈlīn ˌen-jə-ˈnir-iŋ) n. Product Line Engineering (PLE) develops related product families through systematic reuse of shared assets and variability management, governed by ISO/IEC 26550. and a key tool in variant management.
Feature models originated in software product line engineering in the early 1990s (Kang et al., FODA method, 1990) and have since been adopted in hardware and mixed-system product families to represent any form of product variation that must be managed systematically.
What a feature model contains
A feature model is typically represented as a tree or directed acyclic graph with several types of relationships between features:
- Mandatory features — Present in every product in the family. They define the core of the product line.
- Optional features — May or may not be present in a given product. Each optional feature represents a variation point Variation Point (ˌver-ē-ˈā-shən ˈpȯint) n. A variation point is a specific location in a product or system architecture where a decision between alternatives must be made to create a specific variant. .
- Alternative groups (XOR) — Exactly one feature from the group must be selected (e.g., “Petrol engine OR Diesel engine OR Electric motor”).
- Or-groups (OR) — One or more features from the group must be selected (e.g., “at least one of: USB, Bluetooth, WiFi”).
- Cross-tree constraints — Rules that apply across branches of the tree, typically expressed as implications or exclusions using Boolean algebra Boolean Algebra (ˈbü-lē-ən ˈal-ji-brə) n. Boolean algebra provides the logical operators (AND, OR, NOT) used to define valid product configurations and constraints in variant management and CPQ. (e.g., “If Sunroof is selected, then Reinforced Roof must also be selected”).
The complete set of valid configurations that satisfy all feature model rules defines the variant space Variant Space (ˈver-ē-ənt ˈspās) n. A variant space is the complete set of all valid product variants that can be derived from a product family, defined by its variation points and the constraints between them. of the product family.
Features versus variation points
In PLE, features and variation points Variation Point (ˌver-ē-ˈā-shən ˈpȯint) n. A variation point is a specific location in a product or system architecture where a decision between alternatives must be made to create a specific variant. are closely related but distinct:
- A feature is a customer-visible property of the product — defined in the problem space Problem Space (ˈprä-bləm ˈspās) n. In variant management, the problem space captures customer requirements — what must be solved, independently of the solution. Expressed in needs language, not engineering terms. .
- A variation point is a location in the product’s engineering model where alternatives exist — defined in the solution space Solution Space (sə-ˈlü-shən ˈspās) n. The solution space is the engineering view of product variety — the design decisions, components, and configurations that implement the options defined in the problem space. .
One feature may require multiple variation points to implement (e.g., “heated seats” as a feature requires variation in the seat assembly, wiring harness, and control module). Conversely, one variation point may serve multiple features. Feature models capture the customer-facing view; variation point models capture the engineering view.
Role in variant management
Feature models are most directly associated with PLE Product Line Engineering (PLE) (ˈprä-dəkt ˈlīn ˌen-jə-ˈnir-iŋ) n. Product Line Engineering (PLE) develops related product families through systematic reuse of shared assets and variability management, governed by ISO/IEC 26550. and software product line engineering, but the underlying concept applies broadly in variant management:
- A feature model defines the scope of the product family — which options exist and how they relate.
- It serves as the basis for a product configurator: the rules in the feature model determine which selections are valid.
- It provides a bridge between requirements and engineering: features represent customer needs; the model maps those needs to engineering decisions.
In practice, many variant management implementations use feature-model-like structures under different names — option lists with dependency rules, KMAT configurations in SAP, or option groups in CPQ systems — without formally calling them feature models.
Examples
- Automotive options — A car platform feature model includes mandatory features (chassis, body, engine) and optional features (sunroof, towing package, premium audio). Cross-tree constraints prevent invalid combinations (towing package requires reinforced rear axle). Automated configurators use the model to guide valid configurations.
- Industrial control systems — A programmable logic controller family uses a feature model to define which I/O modules, communication interfaces, and safety certifications are available and which combinations require specific hardware or firmware variants.
Frequently asked questions
Do I need formal feature modeling tools to use feature models?
No. The concepts of mandatory features, optional features, alternative groups, and constraints can be implemented in a spreadsheet, a CPQ rule engine, or a PLM configuration table without formal feature modeling software. Dedicated tools (FeatureIDE, pure::variants, Gears) add formal analysis capabilities — such as detecting unreachable configurations or verifying that a specific product satisfies all constraints — which become important as the number of features and constraints grows.
What is the difference between a feature model and a 150% BOM?
A feature model operates in the problem space — it describes customer-visible options and their relationships. A 150% BOM 150% BOM (ˌwən-ˌfif-tē pər-ˈsent ˌbil əv mə-ˈtir-ē-əlz) n. A 150% BOM lists all possible components across all product variants, serving as the master structure for subtractive configuration in variant management. operates in the solution space — it lists all engineering components that appear in any variant of the product family. Both represent the full scope of the product family, but from different perspectives. In a complete variant management system, the feature model drives the configurator; the 150% BOM drives production and procurement.