The essence of any product line architecture (PLA) modeling approach lies in its ability to express variability. Traditional approaches do so by explicitly specifying variation points, usually optional or alternative elements of some form, within a monolithic architectural specification of the entire PLA; each governed by its own guard to determine its inclusion within individual products.
While the use of variation points adequately captures variability, it also leads to a sizable mismatch between conceptual variability (i.e., the features through which an architect logically views and interprets differences in product architectures) and actual variability (i.e., the modeling constructs through which these logical differences must be expressed). This mismatch results in highly redundant, scattered, and tangled specifications consisting of repetitive, brittle, and non-intuitive guards.
The contribution of this dissertation is a new PLA modeling approach that unites conceptual and actual variability. Our approach uses change-sets to group related architectural differences and relationships to govern which change-set compositions form valid products. Additionally, we contribute an environment that retains an architect’s ability to visualize and manipulate these constructs within a single, overview representation. The result consolidates related variation points, lifts modeling of variability out of modeling architectural structure, and explicitly and separately manages their compatibilities.
We evaluate change-sets and relationships by comparing five PLA's when represented using variation points and our approach. The results indicate that our approach exhibits a reduction in redundancy, scattering and tangling of concepts, but may be less compact than highly domain-specific representations that can take advantage of implicit information within the domain. We also discuss key differences between the overview representation made available when using change-sets and relationships vs. that available when using variation points. Finally, we identify limitations that our mutable change-sets have in performing functionalities normally reserved for immutable change-sets in version control systems.
Together, change-sets and relationships form the basis on which features, feature models, and product line architectures are represented, manipulated, and tied together. With change-sets and relationships, the need for independent architectural variation points, with their implicit and redundant guards, is removed entirely and mismatch between conceptual and actual variability is reduced.
|Advisor:||Taylor, Richard N.|
|Commitee:||Hoek, Andre v.d., Redmiles, David|
|School:||University of California, Irvine|
|Department:||Information and Computer Science - Ph.D.|
|School Location:||United States -- California|
|Source:||DAI-B 72/05, Dissertation Abstracts International|
|Keywords:||Change sets, Product line architectures, Relationships, Software architecture, Variation points|
Copyright in each Dissertation and Thesis is retained by the author. All Rights Reserved
dissertation or thesis. The supplemental files are provided "AS IS" without warranty. ProQuest is not responsible for the
content, format or impact on the supplemental file(s) on our system. in some cases, the file type may be unknown or
may be a .exe file. We recommend caution as you open such files.
supplemental files is subject to the ProQuest Terms and Conditions of use.