Optimizing Software Product Line Architectures with OPLA-Tool

  • Édipo Luis Féderle
  • Thiago do Nascimento FerreiraEmail author
  • Thelma Elita Colanzi
  • Silvia Regina Vergilio
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9275)


MOA4PLA is an approach proposed for Product Line Architecture (PLA) design optimization, based on multi-objective algorithms and different metrics that consider specific PLA characteristics. To allow the practical use of MOA4PLA, this paper describes OPLA-Tool, a supporting tool that implements the complete MOA4PLA process. OPLA-Tool has a graphical interface used to choose algorithms, parameters, search operators used in the optimization, and to visualize the alternative PLAs (solutions), with their fitness values associated and corresponding class diagrams. The paper also describes an experiment conducted to evaluate the usefulness of OPLA-Tool. Results show that OPLA-Tool achieves its purpose and that improved solutions are obtained.


SPL Multi-objective algorithms Architecture 


  1. 1.
    Cinneide, M.: Towards automated design improvement through combinatorial optimisation. In: Proceedings of Workshop on Directions in Software Engineering Environments (2004)Google Scholar
  2. 2.
    Colanzi, T.E., Vergilio, S.R.: A feature-driven crossover operator for product line architecture design optimization. In: Proceedings of COMPSAC 2014 (2014)Google Scholar
  3. 3.
    Colanzi, T.E., Vergilio, S.R., Gimenes, I.M.S., Oizumi, W.N.: A search-based approach for software product line design. In: Proceedings of SPLC 2014 (2014)Google Scholar
  4. 4.
    Donegan, P.M., Masiero, P.C.: Design issues in a component-based software product line. In: Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS), pp. 3–16 (2007)Google Scholar
  5. 5.
    Durillo, J.J., Nebro, A.J., Alba, E.: The jMetal framework for multi-objective optimization: design and architecture. In: Proceedings of 2010 IEEE Congress on Evolutionary Computation (CEC), Barcelona, Spain, pp. 4138–4325, Julho 2010Google Scholar
  6. 6.
    Fowler, M.: Patterns of Enterprise Application Architecture. Addison-Wesley Longman, Amsterdam (2002)Google Scholar
  7. 7.
    Hadaytullah, S.V., Räihä, O., Koskimies, K.: Tool support for software architecture design with genetic algorithms. In: Proceedings of the 5th ICSEA (2010)Google Scholar
  8. 8.
    Oliveira Jr., E.D.: Systematic evaluation of software product line architectures. J. Univ. Comput. Sci. 19, 25–52 (2013)Google Scholar
  9. 9.
  10. 10.
    SEI: Product line hall of fame (2015).
  11. 11.
    Simons, C., Parmee, I.: Elegant object-oriented software design via interactive, evolutionary computation. IEEE Transact. Syst. Man Cybern. 42(6), 1797–1805 (2012)CrossRefGoogle Scholar
  12. 12.
    Taylor, R.N., Medvidovic, N., Dashofy, E.M.: Software Architecture: Foundations Theory and Practice. Wiley, New York (2010)Google Scholar
  13. 13.
    Young, T.: Using AspectJ to Build a Software Product Line for Mobile Devices. Master’s thesis, University of British Columbia (2005)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Édipo Luis Féderle
    • 1
  • Thiago do Nascimento Ferreira
    • 1
    Email author
  • Thelma Elita Colanzi
    • 2
  • Silvia Regina Vergilio
    • 1
  1. 1.DInf - Federal University of ParanáCuritibaBrazil
  2. 2.DIN - State University of MaringáMaringáBrazil

Personalised recommendations