Figure 2: Mobile Media SPL feature model.
6.2 Co-evolution Comparator
The second block consists in comparing two input
matrices, by automating the mathematical analysis of
our approach. It integrates the two files generated by
the first block and also the features reference files.
Thereby, it makes a comparison of the evolution his-
tories of the two population and generate a log file
which contains the traces of the comparison and the
resulted differences.
6.3 Perfect Co-evolution Analyzer
The third block deals with the perfect co-evolution
restoration, it integrates the log file generated by the
second blocks and displays the features that may be
restored to the platform. this block gives also the pos-
sibility to integrate the two matrices with the features
reference files and applies the perfect co-evolution
restoration algorithm which we previously elaborated
and generate a new matrix for the SPL platform.
Firstly we started by developing the first block,
currently we are performing a list of test cases to val-
idate it. Subsequently, we intend after that to develop
the second and the third functional blocks. We envis-
age after finalizing the three blocks, integrating them
into an application for complete co-evolution analy-
sis.
7 CONCLUSIONS
Our general research work addresses the problem
of change propagation in evolving software product
lines. Thereby, we deal with the analysis of co-
evolution of the platform and the products of the soft-
ware product line to understand how they impact each
other during their evolution. In this paper, we have
first proposed the use of biological technique cladis-
tics to illustrate the evolution history of the products
and the platform through evolutionary trees, each tree
represents the history of a product, then we estab-
lished a mathematical analysis to compare the trees
and to find out the changes of product that were not
propagated to the platform and finally we elaborated
an algorithm to help repropagating the missing fea-
tures to the platform. We illustrated the approach
through a case study on the mobile media software
product line. There are several perspectives to our
current work. Firstly, we will develop a tool to auto-
mate the co-evolution analysis, we separated the tool
to three main functional blocks representing the three
steps of the approach. The first block is currently
developed and under validation. Secondly, we aim
to improve the third step of our approach to act di-
rectly on the feature models of the platform and cor-
rect them.
REFERENCES
Ajila, S. A. and Kaba, A. B. (2008). Evolution support
mechanisms for software product line process. Jour-
nal of Systems and Software, 81(10):1784–1801.
Anderson, R. M. and M.May, R. (1982). Coevolution of
hosts and parasites. Parasitology, 85(02):411–426.
Anquetil, N., Kulesza, U., Mitschke, R., Moreira, A.,
Royer, J., Rummler, A., and Sousa, A. (2010).
A model-driven traceability framework for software
product lines. Software and Systems Modeling, 9:427–
451.
Benlarabi, A., A. Khtira, A., and Asri, B. E. (2014a). An
analysis of domain and application engineering co-
evolution for software product lines based on cladis-
tics: A case study. In ICSEA’14 Forthcoming (2014),
pages 495–501.
Benlarabi, A., Khtira, A., and Asri, B. E. (2014b). A co-
evolution model for software product lines: an ap-
proach based on evolutionary trees. In WCCS14. IEEE
Forthcoming (2014).
Brinkman, Fiona, S., and Leipe, D. D. (2004). Bioinformat-
ics: a Practical Guide to the Analysis of Genes and
Proteins, volume 43. John Wiley & Sons.
Clements, P., Northrop, L., and Boehm, B. W. (2002). Soft-
ware Product Lines : Practices and Patterns. Fondo
Xavier Clavigero, S.J. ITESO.
Ehrlich, P. R. and Raven, P. H. (1964). Butterflies and
plants: a study in coevolution evolution. JSTOR,
pages 586–608.
Fitch, W. and Margoliash, M. (1967). Construction of phy-
logenetic trees. Science, 155(760):279–284.
Goknil, A., Kurtev, I., van den Berg, K., and Veldhuis,
J. (2011). Semantics of trace relations in require-
ments models for consistency checking and inferenc-
ing. Software & Systems Modeling, 10:31–54.
Kastner, C., Thum, T., Saake, G., FeigenspanLeich, J.,
Wielgorz, T. F., and Apel, S. (2009). Featureide: A
tool framework for feature-oriented software develop-
ment. In IEEE 31st International Conference on Soft-
ware Engineering, pages 611–614. IEEE.
Pohl, K., Bckle, G., and van der Linden, F. J. (2005). Soft-
ware Product Line Engineering: Foundations, Princi-
ples and Techniques. Springer.
Romero, D., Urli, S., Quinton, C., Blay-Fornarino, M., Col-
let, P., Duchien, L., and Mosser, S. (2013). Splemma:
ENASE2015-10thInternationalConferenceonEvaluationofNovelSoftwareApproachestoSoftwareEngineering
268