We have 6374 guests and 11 members online

Agile Sponsors

HP


CollabNet


TechWell

Home > Blogs > Featured Blogs > Brad Appleton's ACME Blog > Commonality and Variability Management

Commonality and Variability Management

E-mail
Written by Brad Appleton   
Sunday, 23 March 2008 17:21

Continuing the previous discussion on software product-lines ...

Central to the notion of product-lines and product-families are tracking and managing three different kinds of software assets:
  • common/core assets that are shared by all the products in the product-line
  • shared assets that are common to some products but not others, and ...
  • product-specific assets (or custom-components) that are specific to a single product in the product-line.
Architecture for such product-lines is all about managing commonality and variability, and easing their evolution to achieve a diverse family of products to achieve economies of scale from reusing common assets. Change/Configuration Management for SPLs is a very challenging problem. And variability management techniques often come down to a matter of binding-times. There are also more advanced strategies (some involving mathematical models).

A few resources on the subject of Commonality and Variability are as follows:
In July 2006 I presented at the Dr Dobbs' Architecture & Design World conference about SCM Patterns for Agile Architectures, which included a section on managing variations. I summarized that portion of the presentation as follows:
    Use Late-Binding instead of Branching:
    • Build/Package Options
    • Feature Configuration/Selection
    • Business Rules

    Think about which of the following needs to "vary" and what needs to stay the same:
    • Interface vs. Implementation vs. Integration
    • Container vs. Content vs. Context

    Commonality & Variability analysis helps identify the core dimensions of variation for your project

    Use a combination of strategies based on the different types of needed variation and the "dimension" in which each one operates


Commonality and Variability Management

Posted: 2008-03-24 00:21:00

Read Full Article
Author:Brad Appleton

Trackback(0)

Comments (0)Add Comment


Write comment

security code
Write the displayed characters


busy
 
Cialis

Agile Marketplace - Announcements and Special Offers

Upcoming Webcasts
Sponsored by Urbancode - On Demand
Mastering Complex Application Deployment
Sponsored by CollabNet - Wednesday, August 24, 2011
Closing the Agile Loop: Continuous Integration, Continuous Information

ScrumWorks Pro – The World’s Best Agile Project Management Tool
Simply put, CollabNet’s ScrumWorks Pro is the best Agile project management solution on the market, bar none. More than 150,000 Agile professionals rely on the power and simplicity of ScrumWorks every day.  But don’t take our word for it – try it yourself for free. CollabNet is now providing the first 10 users of ScrumWorks Pro at no charge!
Download ScrumWorks Pro today!

The Business Case for ALM Transformation
Are legacy systems holding your company back?  Breakthrough these technical constraints with an open and scalable environment that meets your unique business need to transform. There is no reason to be locked into an obsolete platform. The output of a number of recent transitions from legacy systems, this is practical white paper shares lessons learned and illustrates how guidance and enablement can pave the way for change.
Download this Whitepaper