Software product line feature diagram
Now, the question is how we can understand the common and variable functionality. A better understanding of the product line can be obtained by considering the different perspectives. Some of these perspectives are dynamic modeling, requirements modeling, and static modeling. The fundamental principle of the Software Product Line is to manage the variability. This management involves the separation of the product the line into the following three parts;.
By Prof. Fazal Rehman Shamil Last modified on April 18th, Message on Facebook page for discussions, 2. Feature declarations have types. When a feature is chosen for inclusion in a product, it must be given a value consistent with its type. The table below shows the feature types supported by Gears. Nodes that have children are of type enumeration, set, or record — the compound types. Leaf nodes are Booleans, integer, float, string, character, or atom — the simple types.
Continuing the car example, the feature "Moon roof" would be type Boolean, since it's either in or out. Features can be nested for example, the optional feature "Moon roof" could come in two varieties, electric or manual. The complete set of feature declarations forms a tree, outlining all of the decisions that are available to made to define a product. The following illustration shows a partial example of a feature model for a vehicle cruise control system. Feature assertions describe constraints and dependencies among the feature declarations.
These express the constraint that a feature or combination of features , if present, either requires or excludes the presence of another feature or combination of features.
For example, if we want to make sure that certain features are not available when we're selling our product in a certain region, we could express that constraint with an EXCLUDES assertion between the region feature and the features we want to restrict. The product features matrix has several purposes: Product owners can see the mix of features across the product set. This helps define the Product Roadmap. Business Analysts can see which products complement each other. Understanding this allows them to write accurate requirements and business rules.
Developers can see what features have been implemented into different products. Marketers can use the features matrix to setup the pricing pages.
Products can be structured by feature, importance, platform, among others. Customers can identify the feature they need most. Knowing this allows them to buy the product that matches their needs.
Improves the product development plan. Ensures a consistent message to customers. Help customers choose the correct product. You need a map. A matrix is a two or three dimensional map. How to create At some point, someone at Google drew a box on a whiteboard. Then they added some columns and rows.