Variability and Complexity in Software Design

Today's software systems must accommodate a wide range of usage and deployment scenarios. The increasing size and heterogeneity of software-intensive systems, dynamic and critical operating conditi...