Advertisement

Optimizing Aspect-Oriented Product Line Architectures with Search-Based Algorithms

  • Thainá Mariani
  • Silvia Regina Vergilio
  • Thelma Elita Colanzi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9275)

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.

Keywords

Aspects SPL Search-based design 

References

  1. 1.
    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)CrossRefGoogle Scholar
  2. 2.
    Bringmann, K., Friedrich, T., Klitzke, P.: Two-dimensional subset selection for hypervolume and epsilon-indicator. In: GECCO (2014)Google Scholar
  3. 3.
    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)Google Scholar
  4. 4.
    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)Google Scholar
  5. 5.
    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)CrossRefzbMATHGoogle Scholar
  6. 6.
    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)CrossRefGoogle Scholar
  7. 7.
    Donegan, P.M., Masiero, P.C.: Design issues in a component-based software product line. In: SBCARS (2007)Google Scholar
  8. 8.
    Durillo, J.J., Nebro, A.J.: jmetal: a java framework for multi-objective optimization. Adv. Eng. Softw. 42, 760–771 (2011)CrossRefGoogle Scholar
  9. 9.
    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) Google Scholar
  10. 10.
    Jingjun, Z., Xueyong, C., Guangyuan, L.: Mapping features to architectural components in aspect-oriented software product lines. In: CSSE (2008)Google Scholar
  11. 11.
    Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-oriented programming. In: ECOOP, pp. 220–242 (1997)Google Scholar
  12. 12.
    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)CrossRefGoogle Scholar
  13. 13.
    Nyben, A., Tyszberowicz, S., Weiler, T.: Are aspects useful for managing variability in software product lines? a case study. In: SPLC (2005)Google Scholar
  14. 14.
    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)Google Scholar
  15. 15.
    Oldevik, J.: Can aspects model product lines? In: AOSD (2008)Google Scholar
  16. 16.
    Pawlak, R., Duchien, L., Florin, G., Legond-Aubry, F., Seinturier, L., Martelli, L.: A UML notation for aspect-oriented software design. In: AOM (2002)Google Scholar
  17. 17.
    Räihä, O.: A survey on search-based software design. Comput. Sci. Rev. 4(4), 203–249 (2010)CrossRefzbMATHGoogle Scholar
  18. 18.
    Räihä, O.: Genetic Algorithms in software architecture synthesis. Ph.D. thesis, University of Tampere, Tampere, Finland (2011)Google Scholar
  19. 19.
    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)Google Scholar
  20. 20.
    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) CrossRefGoogle Scholar
  21. 21.
    Simons, C., Parmee, I., Gwynllyw, R.: Interactive, evolutionary search in upstream object-oriented class design. IEEE Trans. Softw. Eng. 36(6), 798–816 (2010)CrossRefGoogle Scholar
  22. 22.
    Tizzei, L., Rubira, C., Lee, J.: An aspect-based feature model for architecting component product lines. In: EUROMICRO (2012)Google Scholar
  23. 23.
    Zitzler, E., Thiele, L.: Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach. IEEE Trans. Evol. Comput. 3 (1999)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Thainá Mariani
    • 1
  • Silvia Regina Vergilio
    • 1
  • Thelma Elita Colanzi
    • 2
  1. 1.Federal University of ParanaCuritibaBrazil
  2. 2.State University of MaringaMaringáBrazil

Personalised recommendations