Tizzei, Leonardo P. and Dias, Marcelo and Rubira, Cecília M. F. and Garcia, Alessandro and Lee, Jaejoon (2011) Components meet aspects:assessing design stability of a software product line. Information and Software Technology, 53 (2). pp. 121-136. ISSN 0950-5849Full text not available from this repository.
Context It is important for Product Line Architectures (PLA) to remain stable accommodating evolutionary changes of stakeholder’s requirements. Otherwise, architectural modifications may have to be propagated to products of a product line, thereby increasing maintenance costs. A key challenge is that several features are likely to exert a crosscutting impact on the PLA decomposition, thereby making it more difficult to preserve its stability in the presence of changes. Some researchers claim that the use of aspects can ameliorate instabilities caused by changes in crosscutting features. Hence, it is important to understand which aspect-oriented (AO) and non-aspect-oriented techniques better cope with PLA stability through evolution. Objective This paper evaluates the positive and negative change impact of component and aspect based design on PLAs. The objective of the evaluation is to assess how aspects and components promote PLA stability in the presence of various types of evolutionary change. To support a broader analysis, we also evaluate the PLA stability of a hybrid approach (i.e. combined use of aspects and components) against the isolated use of component-based, OO, and AO approaches. Method An quantitative and qualitative analysis of PLA stability which involved four different implementations of a PLA: (i) an OO implementation, (ii) an AO implementation, (iii) a component-based implementation, and (iv) a hybrid implementation where both components and aspects are employed. Each implementation has eight releases and they are functionally equivalent. We used conventional metrics suites for change impact and modularity to measure the architecture stability evaluation of the 4 implementations. Results The combination of aspects and components promotes superior PLA resilience than the other PLAs in most of the circumstances. Conclusion It is concluded that the combination of aspects and components supports the design of high cohesive and loosely coupled PLAs. It also contributes to improve modularity by untangling feature implementation.
|Journal or Publication Title:||Information and Software Technology|
|Uncontrolled Keywords:||Product Line Architecture ; Component-based Development ; Aspect-Oriented Software Development ; Design stability|
|Subjects:||Q Science > QA Mathematics > QA76 Computer software|
|Departments:||Faculty of Science and Technology > School of Computing & Communications|
|Deposited On:||15 Aug 2012 11:20|
|Last Modified:||21 Sep 2016 01:18|
Actions (login required)