Analyzing aspects in production : plans for software product lines

Noordhuizen, Paul (2006) Analyzing aspects in production : plans for software product lines.

[img]
Preview
PDF
2MB
Abstract:Software product line engineering aims to reduce the costs of manufacturing software products by exploiting the commonalities of a product family and managing the variabilities. Production plans define the process for producing software products from the available assets. However, it appears that product line engineering has not yet focused on crosscutting concerns in production plans. We think that for coping with these crosscutting concerns aspects can be applied, as aspects are already used throughout the software development cycle to modularize crosscutting concerns and to provide composition mechanisms with other concerns. Firstly, we analyze the problems with crosscutting concerns for production plans on two levels: the component level, that is crosscutting in the asset library from which products are built through the production plan, and the production plan level, that is scattering of variable features in the production plan itself. We identify these problems in a case study of a concrete product line and propose solutions for both levels. On the component level, our approach is to modularize crosscutting concerns in separate, reusable aspect components and to provide configuration of the aspects to select the right variation of each aspect for the specific product that is to be produced. These configured aspects are then composed with the other selected assets through a separate pointcut specification to avoid context-specific references in the aspect implementation. This process is defined for the production plans. On the production plan level, our approach is to modularize the variable features in the production plans by using XML-based feature models in the product line and the functional query language XQuery to select features by their type (common or variable) and/or name in stead of by their place in the feature hierarchy. Our solutions on both levels are illustrated and demonstrated with the case as a running example. Secondly, we explore the impact of aspect-orientation on the product line process. Product line engineering is moving more and more from production of software products by hand to automated generation of applications from the product line through some sort of specification. This goal obviously has implications for the structure and contents of production plans. However, the steps in a generative product line process ¿ and thus in generative production plans ¿ are unclear. We have analyzed the product line process for the popular generative technologies XMLBased Feature Modeling and Pure::Variants and investigated the impact of aspectorientation on the generative production plans.
Item Type:Essay (Master)
Clients:
Trese
Faculty:EEMCS: Electrical Engineering, Mathematics and Computer Science
Subject:54 computer science
Programme:Computer Science MSc (60300)
Link to this item:http://purl.utwente.nl/essays/57285
Export this item as:BibTeX
EndNote
HTML Citation
Reference Manager

 

Repository Staff Only: item control page