MobileMedia Study

pure-component vs aspect-component

Home>ECSA2011
Study planning Study operation Data analysis References Related links


1. Introduction

This comparative study assesses the support for product line architecture evolution of two design and implementation techniques: aspect-component (COSMOS*-VP) and pure-component (COSMOS*) models.

2. Study Planning

The objective of this comparative study is to assess quantitatively and qualitatively to what extent aspect-connectors support PLA evolution. In this study, we compare two design and implementation techniques: (i) a pure component-based model; and (ii) the use aspect-connectors, a hybrid approach using components and aspects.

Based on this objective, we state the hypothesis we need to evaluate:
H0: there is no difference in PLA evolution with respect to the design and implementation technique.
H1: the aspect-component approach supports PLA evolution better than the pure-component technique.

In order to evaluate these hypotheses, we have collected five measures: (i) scattering of variation points, (ii) scattering of features, (iii) tangling of features, (iv) change impact on components, and (v) efferent coupling between components. Metrics of scattering and tangling (measures i-iii) measure the separation of concerns and were based on Riebisch and Brcina [3] metrics. Change impact metric measures the number of components affected (i.e. changed, added, or removed)[4]. Coupling metric measures the number of components each component knows [1]. According to Brcina et al.[2], separation of concerns, change impact on components, and coupling between components are measurable attributes of evolution.

The original OO and AO implementations of the MobileMedia, the target SPL, were the input for our study. Figure 1 shows that pure-component MobileMedia implementation was refactored from the MobileMedia OO implementation, and that aspect-component MobileMedia implementation was refactored from MobileMedia AO implementation. We refer to the hybrid approach that uses components, aspects, and aspect-connectors (COSMOS*-VP) as aspect-component for short, and we refer to component-based approach that does not use aspects as pure-component. We have adopted COSMOS* model to implement the pure-component MobileMedia and COSMOS*-VP model to implement aspect-component MobileMedia.

Steps
Fig.1 - Steps of MobileMedia study

After refactoring the original implementations, the following steps were executed:

3. Study Operation

3.1. Execution

MobileMedia OO and AO versions were refactored and then evolved. The OO and aspect-oriented MobileMedia versions, which were refactored, are available here. The versions involved in this study are available here.

4. Data analysis

The design of this study has been chosen based on its characteristics:
Thus, Wilcoxon signed rank test[5] is suitable for the study. More details about the Wilcoxon procedure can be found here.

4.1. Data collection

Data collection for each metric
Metrics File File description
Separation of concerns, which encompasses Scattering of variation points, Feature scattering, and Feature tangling .pdf pages 1-8 describe separation of concerns metrics for aspect-component releases (R1-R8) and pages 11-17 describe separation of concerns metrics for pure-component releases (R2-R8). R1 of pure-component is equal to R1 of aspect-component, because in R1 there is no variability.
Change impact on modules .pdf
Eferent coupling between modules - pure-components .pdf Pages 1-8 describe the coupling between modules in R1-R8, respectively.
Eferent coupling between modules - aspect-components .pdf On the top of each page it is described to which release the data is related to (e.g. vp_v1 is related to COSMOS*-VP, release 1)

Details on calculations using Wilcoxon procedure (pdf)

5. References

[1] Chidamber, S. & Kemerer, C. A Metrics Suite for Object Oriented Design IEEE Transactions on Software Engineering, IEEE Computer Society, 1994, 20, 476-493
[2] Brcina, R.; Bode, S. & Riebisch, M. Optimisation Process for Maintaining Evolvability during Software Evolution ECBS '09: Proceedings of the 2009 16th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems, IEEE Computer Society, 2009, 196-205
[3] Brcina, R. & Riebisch, M. Architecting for evolvability by means of traceability and features Automated Software Engineering - Workshops, 2008. ASE Workshops 2008. 23rd IEEE/ACM International Conference on, 2008, 72 -81
[4] Yau, S. & Collofello, J. Design Stability Measures for Software Maintenance Software Engineering, IEEE Transactions on, 1985, SE-11, 849 - 856
[5] Siegel, S. & Castellan, N. J. Non Parametric Statistics for the Behavioral Sciences McGraw-Hill International, 1988

6. Related links


Last update: 5th of July, 2011