Dissertation/Thesis Abstract

Modeling and Evolving Software Product Line Architectures using Change-Sets and Relationships
by Hendrickson, Scott Alton, Ph.D., University of California, Irvine, 2011, 157; 3444298
Abstract (Summary)

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.

Indexing (document details)
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
Subjects: Computer science
Keywords: Change sets, Product line architectures, Relationships, Software architecture, Variation points
Publication Number: 3444298
ISBN: 9781124517650
Copyright © 2019 ProQuest LLC. All rights reserved. Terms and Conditions Privacy Policy Cookie Policy