Abstract
The adoption of Aspect-Oriented Product Line Architectures (AOPLA) brings many benefits to the software product line design. It contributes to improve modularity, stability and to reduce feature tangling and scattering. Improvements can also be obtained with a search-based and multi-objective approach, such as MOA4PLA, which generates PLAs with the best trade-off between different measures, such as cohesion, coupling and feature modularization. However, MOA4PLA operators may violate the aspect-oriented modeling (AOM) rules, impacting negatively on the architecture understanding. In order to solve this problem, this paper introduces a more adequate representation for AOPLAs and a set of search operators, called SO4ASPAR (Search Operators for Aspect-Oriented Architectures). Results from an empirical evaluation show that the proposed operators yield better solutions regarding the fitness values, besides preserving the AOM rules.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Bowman, M., Briand, L., Labiche, Y.: Solving the class responsibility assignment problem in object-oriented analysis with multi-objective genetic algorithms. IEEE Trans. Softw. Eng. 36, 817–837 (2010)
Bringmann, K., Friedrich, T., Klitzke, P.: Two-dimensional subset selection for hypervolume and epsilon-indicator. In: GECCO (2014)
Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, J., Little, R., Merson, P., Nord, R., Stafford, J.: Documenting Software Architectures: Views and Beyond, 2nd edn. Addison Wesley, Boston (2011)
Colanzi, T.E., Vergilio, S.R., Gimenes, I.M.S., Oizumi, W.N.: A search-based approach for software product line design. In: SPLC (2014)
Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6, 182–197 (2002)
Derrac, J., Garcìa, S., Molina, D., Herrera, F.: A practical tutorial on the use of nonparametric statistical tests as a methodology for comparing evolutionary and swarm intelligence algorithms. Swarm Evol. Comput. 1, 3–18 (2011)
Donegan, P.M., Masiero, P.C.: Design issues in a component-based software product line. In: SBCARS (2007)
Durillo, J.J., Nebro, A.J.: jmetal: a java framework for multi-objective optimization. Adv. Eng. Softw. 42, 760–771 (2011)
Guizzo, G., Colanzi, T.E., Vergilio, S.R.: A pattern-driven mutation operator for search-based product line architecture design. In: Le Goues, C., Yoo, S. (eds.) SSBSE 2014. LNCS, vol. 8636, pp. 77–91. Springer, Heidelberg (2014)
Jingjun, Z., Xueyong, C., Guangyuan, L.: Mapping features to architectural components in aspect-oriented software product lines. In: CSSE (2008)
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-oriented programming. In: ECOOP, pp. 220–242 (1997)
van der Linden, F., Schmid, K., Rommes, E.: Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering. Springer, Secaucus, NJ, USA (2007)
Nyben, A., Tyszberowicz, S., Weiler, T.: Are aspects useful for managing variability in software product lines? a case study. In: SPLC (2005)
Oizumi, W., Contieri Jr., A., Correia, G., Colanzi, T., Ferrari, S., Gimenes, I., Oliveira Jr., E., Garcia, A., Masiero, P.: On the proactive design of product-line architectures with aspects: an exploratory study. In: COMPSAC (2012)
Oldevik, J.: Can aspects model product lines? In: AOSD (2008)
Pawlak, R., Duchien, L., Florin, G., Legond-Aubry, F., Seinturier, L., Martelli, L.: A UML notation for aspect-oriented software design. In: AOM (2002)
Räihä, O.: A survey on search-based software design. Comput. Sci. Rev. 4(4), 203–249 (2010)
Räihä, O.: Genetic Algorithms in software architecture synthesis. Ph.D. thesis, University of Tampere, Tampere, Finland (2011)
Sant’Anna, C.N.: On the modularity of aspect-oriented design : a concern-driven measurement approach. Ph.D. thesis, Pontificial Catolic University of Rio de Janeiro, Rio de Janeiro, RJ (2008)
Saraiva, D., Pereira, L., Batista, T., Delicato, F.C., Pires, P.F., Kulesza, U., Araújo, R., Freitas, T., Miranda, S., Souto, A.L., Coelho, R.: Architecting a model-driven aspect-oriented product line for a digital tv middleware: a refactoring experience. In: Babar, M.A., Gorton, I. (eds.) ECSA 2010. LNCS, vol. 6285, pp. 166–181. Springer, Heidelberg (2010)
Simons, C., Parmee, I., Gwynllyw, R.: Interactive, evolutionary search in upstream object-oriented class design. IEEE Trans. Softw. Eng. 36(6), 798–816 (2010)
Tizzei, L., Rubira, C., Lee, J.: An aspect-based feature model for architecting component product lines. In: EUROMICRO (2012)
Zitzler, E., Thiele, L.: Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach. IEEE Trans. Evol. Comput. 3 (1999)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Mariani, T., Vergilio, S.R., Colanzi, T.E. (2015). Optimizing Aspect-Oriented Product Line Architectures with Search-Based Algorithms. In: Barros, M., Labiche, Y. (eds) Search-Based Software Engineering. SSBSE 2015. Lecture Notes in Computer Science(), vol 9275. Springer, Cham. https://doi.org/10.1007/978-3-319-22183-0_12
Download citation
DOI: https://doi.org/10.1007/978-3-319-22183-0_12
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-22182-3
Online ISBN: 978-3-319-22183-0
eBook Packages: Computer ScienceComputer Science (R0)