June 17, 2003
McDonnell Douglas Auditorium, University of California, Irvine

2003 Forum Home

For More Information

ISR Home

ISR Sponsors

Event Sponsor:


 

Poster and Demonstration

A Tool Set for Change Management and Feature Propagation within a Product Family Architecture

Students: Ping Chen, Matt Critchlow, Akash Garg, Christopher Van der Westhuizen

Advisor: André van der Hoek

Abstract: Currently, many modern software organizations develop closely related software products as single, unrelated efforts. As a result, many high-level design decisions are lost between products and reuse remains ineffective or limited to the code level. One solution is to create a generic design architecture, which is able to capture an entire family of closely related products, called a product line architecture (PLA). The PLA explicitly describes the common features shared by all the products as well as the points of variation among the individual products. Variation points are either optional (it is not required) or variant (it may take different forms in different products).

PLAs change over time as new products are added, old products are retired, and existing products are changed. Currently, there are no tools to manage the resulting evolution of a PLA. Furthermore, manually evolving a PLA is a painstaking and error-prone process. To address this problem, we have developed four tools for the management of PLAs. The first tool, Ménage, is a design environment for specifying product line architectures and their evolution. The second tool, ArchSelector, automatically selects a single product by resolving each variation point based on some user-specified, desired set of product features. The third tool, ArchDiff, helps in understanding the difference between two products by calculating an architectural “diff”. Finally, ArchMerge propagates such a diff to another product in the PLA. This supports the propagation of features from one product into another product, and can be done either statically (at design-time) or dynamically (at run-time).

Bios: Ping H. Chen is an entering Ph.D. student in the School of Information and Computer Science at UC Irvine. Ping graduated from UC Irvine Summa Cum Laude, specializing in Software Systems. He plans to continue his research in software engineering and software architectures. His past research includes managing the evolution of software product line architectures. In the future, he plans to investigate the link between requirements and software design/architectures, and provide tool support for automatically generating parts of the software architecture from the requirements. He has published his work in the International Conference on Software Maintanence.

 


Home | About ISR | News | Research | Tech Trans | Tech Reports | Events | People | External Advisory Committee | Sponsors | Sponsorship | Email List | Directions | Contact Info | Other Links | Site Map
UC Institute for Software Research
ICS 2, Building 304
University of California, Irvine
Irvine, CA 92697-3425
Send comments to isr@uci.edu