@techreport{TR-IC-09-25, number = {IC-09-25}, author = {Leonardo P. Tizzei and Marcelo Dias and Cecília M.F. Rubira and Alessandro Garcia and Jaejoon Lee}, title = {Components meet Aspects: Assessing Design Stability of a Software Product Line}, month = {July}, year = {2009}, institution = {Institute of Computing, University of Campinas}, note = {In English, 12 pages. \par\selectlanguage{english}\textbf{Abstract} A Product Line Architecture (PLA) should 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. Hence, it is important to understand which techniques better cope with PLA stability through evolution. This paper presents a comparative study to evaluate the positive and negative change impact on PLA designs based on components and aspects. The objective of the evaluation is to assess when aspects and components promote PLA stability in the presence of various types of change. To support a broader analysis, we compare the stability of the joint application of components and aspects to a PLA design against the isolated use of aspect-oriented, object-oriented, and component-based design techniques. The results show that the combination of aspects and components tends to promote superior PLA resilience than the other PLAs in most of the circumstances. } }