Avaliação Experimental da Abordagem SMarty para Gerenciamento de Variabilidade em Linhas de Produto de Software Baseadas em UML
Resumo
A abordagem de Linha de Produto de Software (LPS) permite a reutilização de artefatos de software por meio da atividade de gerenciamento de variabilidades (GV), que gerencia os artefatos variantes de uma linha. Para apoiar o gerenciamento efetivo, abordagens são adotadas. Stereotype-based Management of Variability (SMarty) e uma abordagem de GV baseada em UML, e assim como as demais abordagens existentes, carecem de evidencias de sua efetividade para que possam ser aplicadas em âmbito acadêmico e industrial. Este artigo apresenta a extensao de SMarty para a identificação de variabilidades em modelos de sequencia da UML, bem como a realização de um conjunto de estudos experimentais que avaliam a efetividade de SMarty em comparação com outras abordagens significativas da literatura atual. Os resultados eviden-ciam que SMarty se mostra efetiva para gerir variabilidades, aumentando o n ́ıvel de qualidade e garantia de derivação de produtos específicos em LPSs.
Palavras-chave:
Avaliação Experimental, SMarty, UML
Referências
Basili, V. and Selby, R. (1987). Comparing the Effectiveness of Software Testing Strategies. IEEE Trans. Software Eng., SE-13(12):1278–1296.
Basili, V. R., Selby, R. W., and Hutchens, D. H. (1986). Experimentation in Software Engineering. IEEE Trans. Software Eng., 12(7):733–743.
Bera, M. H. G., OliveiraJr, E., and Colanzi, T. E. (2015). Evidence-based smarty support for variability identification and representation in component models. Proceedings of the Internat.Conf. on Enterprise Information Systems, v. 2.:p. 295–302.
Capilla, R., Bosch, J., and Kang, K. (2013). Systems and Software Variability Manage-ment: Concepts, Tools and Experiences. SpringerLink : Bucher. Springer.
Çöteli, M. B. (2013). Testing Effectiveness and Effort in Software Product Lines a Thesis. Master’s thesis, Middle East Technical University.
Chen, L., Ali Babar, M., and Ali, N. (2009). Variability Management in Software Product Lines: a Systematic Review. In Proc. Int. Software Product Line Conference, pages 81–90, Pittsburgh, PA, USA. Carnegie Mellon University.
Falvo, V., Duarte Filho, N., OliveiraJr, E., E., and Barbosa, E. (2014). A Contribution to the Adoption of Software Product Lines in the Development of Mobile Learning Applications. In Frontiers in Education Conference (FIE), 2014 IEEE, pages 1–8.
Falvo Junior, V., Duarte Filho, N. F., OliveiraJr, E., and Barbosa, E. F. (2014). Towards the ́ establishment of a software product line for mobile learning applications. International Conference on Software Engineering and Knowledge Engineering (SEKE), 1:678–683.
Fiori, D. R., Gimenes, I. M., Maldonado, J. C., and OliveiraJr, E. (2012). Variability Management in Software Product Line Activity Diagrams. In Proc. Int. Conf. on Distributed Multimedia Systems, pages 89–94.
Foschiani, F. Y. S., Tizzei, L. P., and Rubira, C. M. F. (2013). A SPL Infrastructure for Supporting Scientific Experiments in Petroleum Reservoir Research Field. Simp. Brasileiro de Comp., Arquitetura e Reutilização de Software, Bras ília., 1:85–94.
Galster, M., Weyns, D., Tofan, D., Michalik, B., and Avgeriou, P. (2013). Variability in software systems a systematic literature review. IEEE Transactions on Software Engineering, 99(PrePrints):1.
Geraldi, R. T., OliveiraJr, E., Conte, T. U., and Steinmacher, I. F. a. . (2015). Checklistbased inspection of smarty variability models: Proposal and empirical feasibility study. Proceedings of the Int. Conf. on Enterprise Information Systems, v. 2.:p. 268–275.
Gomaa, H. (2004). Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures. Addison Wesley, Redwood City, CA, USA.
Jacobson, I., Griss, M., and Jonsson, P. (1997). Software Reuse: Architecture, Process and Organization for Business Success.
Kang, K. C., Cohen, S. G., Hess, J. A., Novak, W. E., and Peterson, A. S. (1990). FeatureOriented Domain Analysis (FODA) Feasibility Study. Technical report, Carnegie-Mellon University Software Engineering Institute.
Linden, F. J. v. d., Schmid, K., and Rommes, E. (2007). Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering. Springer-Verlag New York.
Mafra, S. N. and Travassos, G. H. (2005). Estudos Primarios e Secundários Apoiando à Busca por Evidência em Engenharia de Software. Technical report, RT-ES 687/06.
Marcolino, A., OliveiraJr, E., and Gimenes, I. M. (2014a). Variability identification and representation in software product line UML sequence diagrams: Proposal and empirical study. In Brazilian Symp. on Soft.Eng., pages 141–150.
Marcolino, A., OliveiraJr, E., Gimenes, I. M., and Barbosa, E. F. (2014b). Empirically based evolution of a variability management approach at UML class level. In Annual Comp. Soft. and Applications Conf. COMPSAC, pages 354–363.
Marcolino, A., OliveiraJr, E., Gimenes, I. M., and Maldonado, J. C. (2013). Towards the Effectiveness of a Variability Management Approach at Use Case Level. In Proc. of the Int. Conf. on Soft. Eng. & Knowledge Eng., pages 214–219.
OliveiraJr, E., Gimenes, I. M., and Maldonado, J. C. (2010). Systematic Management of Variability in UML-based Software Product Lines. J. Universal Computer Science, 16(17):2374–2393.
OliveiraJr, E., Gimenes, I. M., and Maldonado, J. C. (2013). Systematic Evaluation of Software Product Line Architectures. J. of Universal Comp. Science, pages 25–52.
OMG (2011). UML, Superstructure Version 2.4.1. Disponível em http://www.omg. org/spec/UML/2.4.1/Superstructure Acessado em 12 de Jun. 2012.
Pohl, K., Bockle, G., and Linden, F. J. v. d. (2005). ̈ Software Product Line Engineering: Foundations, Principles, and Techniques. Springer-Verlag, Secaucus, NJ, USA.
Royston, J. P. (1982). An Extension of Shapiro and Wilk’s W Test for Normality to Large Samples. Journal of the Royal Statistical Society. Series C, 31(2):115–124.
SEI (2012). Software Engineering Institute A Framework for Software Product Line Practice Version 5.0. Disponível em http://www.sei.cmu.edu/ productlines/frame\_report/index.html Acessado em 20 de Jul. 2012.
Weiss, D. M. and Lai, C. T. R. (1999). Software Product-line Engineering: a Familybased Software Development Process. Addison-Wesley Longman Publishing Co.
Ziadi, T. and Jezequel, J.-M. (2006). Software Product Line Engineering with the UML: Deriving Products. In Software Product Lines, pages 557–588. Springer Berlin.
Basili, V. R., Selby, R. W., and Hutchens, D. H. (1986). Experimentation in Software Engineering. IEEE Trans. Software Eng., 12(7):733–743.
Bera, M. H. G., OliveiraJr, E., and Colanzi, T. E. (2015). Evidence-based smarty support for variability identification and representation in component models. Proceedings of the Internat.Conf. on Enterprise Information Systems, v. 2.:p. 295–302.
Capilla, R., Bosch, J., and Kang, K. (2013). Systems and Software Variability Manage-ment: Concepts, Tools and Experiences. SpringerLink : Bucher. Springer.
Çöteli, M. B. (2013). Testing Effectiveness and Effort in Software Product Lines a Thesis. Master’s thesis, Middle East Technical University.
Chen, L., Ali Babar, M., and Ali, N. (2009). Variability Management in Software Product Lines: a Systematic Review. In Proc. Int. Software Product Line Conference, pages 81–90, Pittsburgh, PA, USA. Carnegie Mellon University.
Falvo, V., Duarte Filho, N., OliveiraJr, E., E., and Barbosa, E. (2014). A Contribution to the Adoption of Software Product Lines in the Development of Mobile Learning Applications. In Frontiers in Education Conference (FIE), 2014 IEEE, pages 1–8.
Falvo Junior, V., Duarte Filho, N. F., OliveiraJr, E., and Barbosa, E. F. (2014). Towards the ́ establishment of a software product line for mobile learning applications. International Conference on Software Engineering and Knowledge Engineering (SEKE), 1:678–683.
Fiori, D. R., Gimenes, I. M., Maldonado, J. C., and OliveiraJr, E. (2012). Variability Management in Software Product Line Activity Diagrams. In Proc. Int. Conf. on Distributed Multimedia Systems, pages 89–94.
Foschiani, F. Y. S., Tizzei, L. P., and Rubira, C. M. F. (2013). A SPL Infrastructure for Supporting Scientific Experiments in Petroleum Reservoir Research Field. Simp. Brasileiro de Comp., Arquitetura e Reutilização de Software, Bras ília., 1:85–94.
Galster, M., Weyns, D., Tofan, D., Michalik, B., and Avgeriou, P. (2013). Variability in software systems a systematic literature review. IEEE Transactions on Software Engineering, 99(PrePrints):1.
Geraldi, R. T., OliveiraJr, E., Conte, T. U., and Steinmacher, I. F. a. . (2015). Checklistbased inspection of smarty variability models: Proposal and empirical feasibility study. Proceedings of the Int. Conf. on Enterprise Information Systems, v. 2.:p. 268–275.
Gomaa, H. (2004). Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures. Addison Wesley, Redwood City, CA, USA.
Jacobson, I., Griss, M., and Jonsson, P. (1997). Software Reuse: Architecture, Process and Organization for Business Success.
Kang, K. C., Cohen, S. G., Hess, J. A., Novak, W. E., and Peterson, A. S. (1990). FeatureOriented Domain Analysis (FODA) Feasibility Study. Technical report, Carnegie-Mellon University Software Engineering Institute.
Linden, F. J. v. d., Schmid, K., and Rommes, E. (2007). Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering. Springer-Verlag New York.
Mafra, S. N. and Travassos, G. H. (2005). Estudos Primarios e Secundários Apoiando à Busca por Evidência em Engenharia de Software. Technical report, RT-ES 687/06.
Marcolino, A., OliveiraJr, E., and Gimenes, I. M. (2014a). Variability identification and representation in software product line UML sequence diagrams: Proposal and empirical study. In Brazilian Symp. on Soft.Eng., pages 141–150.
Marcolino, A., OliveiraJr, E., Gimenes, I. M., and Barbosa, E. F. (2014b). Empirically based evolution of a variability management approach at UML class level. In Annual Comp. Soft. and Applications Conf. COMPSAC, pages 354–363.
Marcolino, A., OliveiraJr, E., Gimenes, I. M., and Maldonado, J. C. (2013). Towards the Effectiveness of a Variability Management Approach at Use Case Level. In Proc. of the Int. Conf. on Soft. Eng. & Knowledge Eng., pages 214–219.
OliveiraJr, E., Gimenes, I. M., and Maldonado, J. C. (2010). Systematic Management of Variability in UML-based Software Product Lines. J. Universal Computer Science, 16(17):2374–2393.
OliveiraJr, E., Gimenes, I. M., and Maldonado, J. C. (2013). Systematic Evaluation of Software Product Line Architectures. J. of Universal Comp. Science, pages 25–52.
OMG (2011). UML, Superstructure Version 2.4.1. Disponível em http://www.omg. org/spec/UML/2.4.1/Superstructure Acessado em 12 de Jun. 2012.
Pohl, K., Bockle, G., and Linden, F. J. v. d. (2005). ̈ Software Product Line Engineering: Foundations, Principles, and Techniques. Springer-Verlag, Secaucus, NJ, USA.
Royston, J. P. (1982). An Extension of Shapiro and Wilk’s W Test for Normality to Large Samples. Journal of the Royal Statistical Society. Series C, 31(2):115–124.
SEI (2012). Software Engineering Institute A Framework for Software Product Line Practice Version 5.0. Disponível em http://www.sei.cmu.edu/ productlines/frame\_report/index.html Acessado em 20 de Jul. 2012.
Weiss, D. M. and Lai, C. T. R. (1999). Software Product-line Engineering: a Familybased Software Development Process. Addison-Wesley Longman Publishing Co.
Ziadi, T. and Jezequel, J.-M. (2006). Software Product Line Engineering with the UML: Deriving Products. In Software Product Lines, pages 557–588. Springer Berlin.
Publicado
17/08/2015
Como Citar
MARCOLINO, Anderson S.; OLIVEIRAJR, Edson.
Avaliação Experimental da Abordagem SMarty para Gerenciamento de Variabilidade em Linhas de Produto de Software Baseadas em UML. In: SIMPÓSIO BRASILEIRO DE QUALIDADE DE SOFTWARE (SBQS), 14. , 2015, Manaus.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2015
.
p. 339-353.
DOI: https://doi.org/10.5753/sbqs.2015.15237.