Ostra: uma abordagem para análise da qualidade de software por meio de regras de associação de métricas

  • Daniel D. C. Ribeiro UFF
  • Alexandre Plastino UFF
  • Leonardo Murta UFF

Resumo


Para controlar a qualidade de software e não apenas reagir à sua variação, deve-se entender quais os fatores que influenciam os atributos de qualidade e qual a influência deles entre si. Neste trabalho, é apresentada a abordagem Ostra, que permite a análise do software através da mineração de regras de associação de métricas, extraídas do histórico do software armazenado no sistema de controle de versão. O objetivo da Ostra é fornecer informações relevantes sobre a qualidade do software para o processo de tomada de decisão. Para avaliar esse objetivo, são apresentados experimentos nos quais a abordagem é aplicada em projetos reais. Com os experimentos, foi possível obter indícios que a proposta consegue alcançar seu objetivo.
Palavras-chave: Qualidade de Software, Regras de Associação de Métricas, Abordagem Ostra

Referências

Agrawal, R. and Srikant, R. (1994). Fast Algorithms for Mining Association Rules in Large Databases. In International Conference on Very Large Data Bases. VLDB 1994. Morgan Kaufmann.

Apache Software Foundation (2011). Apache Maven. Apache Software Foundation.

Bansiya, J. and Davis, C. G. (2002). A Hierarchical Model for Object-Oriented Design Quality Assessment. IEEE Transactions on Software Engineering, v. 28, p. 4–17.

Colares, F., Souza, J., Carmo, R., Pádua, C. and Mateus, G. R. (2009). A New Approach to the Software Release Planning. In Proceedings of the 2009 XXIII Brazilian Symposium on Software Engineering. , SBES 2009. IEEE Computer Society.

Collins-Sussman, B., Fitzpatrick, B. W. and Pilato, C. M. (2008). Version Control with Subversion. Sebastpol, CA, USA: O’Reilly Media. v. 2

Dart, S. (1991). Concepts in configuration management systems. In Proceedings of the 3rd international workshop on Software configuration management. SCM ’91. ACM.

Dick, S., Meeks, A., Last, M., Bunke, H. and Kandel, A. (2004). Data mining in software metrics databases. Fuzzy Sets and Systems, v. 145, n. 1, p. 81–110.

Erlikh, L. (2000). Leveraging Legacy System Dollars for E-Business. IT Professional, v. 2, p. 17–23.

Han, J., Kamber, M. and Pei, J. (2011). Data Mining: Concepts and Techniques, Third Edition. 3. ed. San Francisco, CA, USA: Morgan Kaufmann.

Henderson-Sellers, B. (1995). Object-oriented metrics: measures of complexity. Upper Saddle River, NJ, USA: Prentice-Hall, Inc.

IEEE (1990). Std 610.12 - IEEE Standard Glossary of Software Engineering Terminology. Institute of Electrical and Electronics Engineers.

Júnior, M. C., Mendonça, M. and Rodrigues, F. (2009). Mining Software Change History in an Industrial Environment. In Proceedings of the 2009 XXIII Brazilian Symposium on Software Engineering. SBES 2009. IEEE Computer Society.

Kim, S., Zimmermann, Thomas, Pan, K. and Whitehead, E. J. (2006). Automatic identification of bug-introducing changes. In Proceedings of the 21st IEEE/ACM International Conference on Automated Software Engineering. ASE 2006. IEEE Computer Society Press.

Martin, G. R. R. (1996). A Game of Thrones. 1. ed. New York, NY, USA: Bantam.

McCabe, T. J. (1976). A Complexity Measure. IEEE Transactions on Software Engineering, v. 2, p. 308–320.

Nagappan, N., Ball, T. and Zeller, Andreas (2006). Mining metrics to predict component failures. In Proceedings of the International Conference on Software Engineering Advances. ICSE 2006. ACM.

Pressman, R. (2001). Software Engineering - A Practitioner’s Approach. 5. ed. New York, NY, USA: McGraw-Hill Higher Education.

Ribeiro, D. D. C. (2012). Ostra: Um Estudo do Histórico da Qualidade do Software Através de Regras de Associação de Métricas. Universidade Federal Fluminense - UFF.

Robles, G., Gonzalez-Barahona, J. M., Michlmayr, M. and Amor, J. J. (2006). Mining large software compilations over time: another perspective of software evolution. In Proceedings of the 2006 International Workshop Conference on Mining Software Repositories. MSR 2006. ACM.

Wermelinger, M. and Yu, Y. (2008). Analyzing the evolution of eclipse plugins. In Proceedings of the 2008 International Working Conference on Mining Software Repositories. MSR 2008. ACM.

Wiegers, K. (2003). Software Requirements. 2. ed. Redmond, Washington: Microsoft Press.

Witten, I. H., Frank, E. and Hall, M. A. (2011). Data Mining: Practical Machine Learning Tools and Techniques, Third Edition. 3. ed. Morgan Kaufmann.

Zimmermann, T., Weisgerber, P., Diehl, S. and Zeller, A. (2004). Mining version histories to guide software changes. In Proceedings of the 26th International Conference on Software Engineering. ICSE 2004. IEEE Computer Society.
Publicado
01/07/2013
RIBEIRO, Daniel D. C.; PLASTINO, Alexandre; MURTA, Leonardo. Ostra: uma abordagem para análise da qualidade de software por meio de regras de associação de métricas. In: SIMPÓSIO BRASILEIRO DE QUALIDADE DE SOFTWARE (SBQS), 12. , 2013, Salvador. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2013 . p. 351-365. DOI: https://doi.org/10.5753/sbqs.2013.15299.