Métrica de Complexidade de Software baseada em Critério de Seleção de Caminhos de Teste
Resumo
A qualidade tem sido buscada em todas as áreas de produção e de prestação de serviços. O software, como bem comercial, deve ser passível de um controle de qualidade objetivo e eficiente. Através do teste de um sistema, procura-se aumentar a sua confiabilidade, característica fundamental em programas de boa qualidade. Entretanto, é dificil determinar quando parar de testar determinado programa, tornando esta importante fase do ciclo de desenvolvimento do software um período com custos e tempo não previsíveis. A fim de realizar esta atividade de forma organizada e metódica, critérios de seleção de casos de teste baseados em fluxo de dados foram propostos. Estes critérios orientam a tarefa de teste, de forma a torná-la mais confiável. Para prever os recursos que deverão ser dispendidos nesta fase, métricas de complexidade podem ser utilizadas, as quais fornecem números indicativos da complexidade de um determinado programa. O objetivo do presente trabalho consiste na apresentação de uma métrica de complexidade relacionada diretamente a um critério de seleção de caminhos para o teste, baseado no fluxo de dados do programa.
Referências
CONTE, S. D. et alii. SW Eng. Metrics and Models. Benjamin/Cummings Publishing Co. Califómia. 1986.
DUKSTRA, E. Go To Statement Considered Harmful. Comm. of the ACM, vol.11(3). Mar. 1968.
GILLIES, A. Software Quality - Theory and Management. Chapman & Hall Computing, UK, 1992.
HALSTEAD, M. H. Elements of Software Science. Elsevier Computer Science Library. New York. 1977.
HANSEN, W. Measurement of Program Complexity by the Pair. SIGPLAN Notices, 13(3). Mar. 1978.
HARRISON, W. et alii. A Complexity Measure based on Nesting Level. SIGPLAN Not.,16(3). Mar. 1981.
LASKI, J. W. & KOREL, B. A Data Flow Oriented Program Testing Strategy. TEEE Trans. on SW Eng., vol. SE-9. May, 1983.
MAGEL, K. Regular Expressions in a Program Complexity Metric. SIGPLAN Notices, 16(7). Jul. 1981.
MALDONADO, J. C. et alii. Critérios Potenciais Usos: Análise da Aplicação de um Benchmark. VI Simpósio de Engenharia de Software. Nov, 1992.
McCABE, T. A Complexity Measure. IEEE Trans. on SW Eng., SE-2(4). New York. Dec. 1976.
MCCLURE, C. A Model for Program Complexity Analysis. Proc. of 3rd. Int. Conf. on SW Eng. 1978.
MÖLLER, K.H. & PAULISH, D. J. Software Metrics. Chapman & Hall Computing. Londres, UK. 1993.
MOSLEY, D. J. The Handbook of MIS Application Software Testing. Prentice-Hall. New Jersey. 1993.
MYERS, G. J. An Extension to the Cyclomatic Measure of Program Complexity. SIGPLAN Not., 12(10). Oct. 1977.
MYERS, G. The Art of Software Testing. Prentice-Hall. New York. 1979.
NEJMEH, B. A. NPATH: A Measure of Execution Path Complexity and its Applications. Comm. of the ACM, 31(2), Fev, 1988.
OVIEDO, E. Control Flow, Data Flow and Program Complexity. COMPSAC80, 1980. pp. 146-152.
PUTMAN, L. Trends in Measurement, Estimation and Control. IEEE Software. Mar. 1991. pp. 105-107.
RAPPS, S. & WEYUKER, E. Selecting Software Test Data Using Data Flow Information. IEEE Trans. on SW Eng., SE-11(4). Abr. 1985.
SILVA, J. B. Análise Automática de Complexidade Integrada a um Ambiente de Apoio ao Teste de Programas. Projeto de Diplomação. Instituto de Informática, UFRGS. Nov, 1993.
SILVA, J. B. Análise Comparativa de Métricas de Complexidade de Software. Trabalho Individual. Instituto de Informática. UFRGS. Fev. 1994.
WOODWARD, M. R. et alii Experience with Path Analysis and Testing of Programs. IEEE Trans. on SW Eng. vol. SE-6. May, 1980.