SMartySPEM: A SPEM-Based Approach for Variability Management in Software Process Lines

  • Edson A. Oliveira Junior
  • Maicon G. Pazin
  • Itana M. S. Gimenes
  • Uirá Kulesza
  • Fellipe A. Aleixo
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7983)


The definition of customized software processes can lead to improve the quality of software products and increasing the productivity. The Software Process Line (SPrL) approach might be taken into consideration to improve the establishment of customized processes for a given domain. The specific processes are derived in a systematic way, based on the resolution of variabilities explicitly represented in process notations, such as SPEM. SPEM has an UML 2 profile used to model software process elements. Therefore, this paper presents the SMartySPEM approach, which extends the SPEM profile for representing variabilities in SPrLs taking into consideration the SMarty approach for variability management. SMartySPEM is composed of an UML profile (SMartySPEMProfile) for representing variabilities and guidelines that suggest how to identify variabilities in a SPrL. A SMartySPEM application example is presented in an excerpt of a SPrL designed based on the Unified Process.


Product Line Process Element Software Process Variation Point Activity Diagram 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alegria, J.A.H., Bastarrica, M.C.: Building Software Process Lines with CASPER. In: Proceedings of the International Conference on Software and System Process, pp. 170–179. IEEE Computer Society, Zurich (2012)Google Scholar
  2. 2.
    Aleixo, F.A., Freire, M.A., dos Santos, W.C., Kulesza, U.: Automating the Variability Management, Customization and Deployment of Software Processes: A Model-Driven Approach. In: Filipe, J., Cordeiro, J. (eds.) ICEIS 2010. LNBIP, vol. 73, pp. 372–387. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  3. 3.
    Armbrust, O., Katahira, M., Miyamoto, Y., Münch, J., Nakao, H., Ocampo, A.: Scoping Software Process Lines. Software Process: Improvement and Practice. Software Process: Improvement and Practice - Examining Process Design and Change 14(3), 181–197 (2009)CrossRefGoogle Scholar
  4. 4.
    Barreto, A., Duarte, E., Rocha, A.R., Murta, L.: Supporting the Definition of Software Processes at Consulting Organizations via Software Process Lines. In: Proceedings of the International Conference on the Quality of Information and Communications Technology, pp. 15–24. IEEE Computer Society Press, Porto (2010)Google Scholar
  5. 5.
    Bosch, J.: Preface. In: Proceedings of the 2nd Groningen Workshop on Software Variability Management: Software Product Families and Populations, pp. 1–2. University of Groningen, Groningen (2004)Google Scholar
  6. 6.
    Fiori, D.R., Gimenes, I.M.S., Maldonado, J.C., Oliveira Junior, E.A.: Variability Management in Software Product Line Activity Diagrams. In: International Conference on Distributed Multimedia Systems, pp. 89–94 (2012)Google Scholar
  7. 7.
    Jacobson, I., Griss, M.L., Jonsson, P.: Software Reuse: Architecture, Process, and Organization for Business Success. Addison-Wesley Professional, Boston (1997)Google Scholar
  8. 8.
    Linden, F.J., Schmid, K.V.D., Rommes, E.: Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering. Springer, New York (2007)Google Scholar
  9. 9.
    Martínez-Ruiz, T., García, F., Piattini, M.: Towards a SPEM v2.0 Extension to Define Process Lines Variability Mechanisms. Software Engineering Research, Management and Applications 150(1), 115–130 (2008)CrossRefGoogle Scholar
  10. 10.
    Oliveira Junior, E.A., Gimenes, I.M.S., Maldonado, J.C.: Systematic Management of Variability in UML-based Software Product Lines. Journal of Universal Computer Science 16(17), 2374–2393 (2010)Google Scholar
  11. 11.
    OMG: Software & Systems Process Engineering Metamodel (SPEM) (2010),
  12. 12.
    OMG: Unified Modeling Language (UML) - Superstructure v.2.2 (2010),
  13. 13.
    Pohl, K., Böckle, G., Linden, F.J.V.D.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, New York (2005)zbMATHGoogle Scholar
  14. 14.
    Rombach, H.D.: Integrated Software Process and Product Lines. In: Li, M., Boehm, B., Osterweil, L.J. (eds.) SPW 2005. LNCS, vol. 3840, pp. 83–90. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  15. 15.
    Washizaki, H.: Building Software Process Line Architectures from Bottom Up. In: Münch, J., Vierimaa, M. (eds.) PROFES 2006. LNCS, vol. 4034, pp. 415–421. Springer, Heidelberg (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Edson A. Oliveira Junior
    • 1
  • Maicon G. Pazin
    • 1
  • Itana M. S. Gimenes
    • 1
  • Uirá Kulesza
    • 2
  • Fellipe A. Aleixo
    • 2
  1. 1.Informatics Department (DIN)State University of Maringá (UEM)MaringáBrazil
  2. 2.Department of Computer Science and Applied Mathematics (DIMAP)Federal University of Rio Grande do Norte (UFRN)NatalBrazil

Personalised recommendations