Requistos para ferramentas de registro de defeitos de software Alessandro Liebmam Departamento de Ciência da Computação Instituto de Ciências Exatas Universidade Federal de Minas Gerais (UFMG) CEP: 31270-010 – Belo Horizonte – MG – Brasil {aliebmam}@dcc.ufmg.br Abstract: XXXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX. Resumo: PXXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX. 1. Introdução Segundo Cândido [Cândido, 2004], no início desse século, fatores como a globalização da economia e a maior competitividade do mercado têm gerado inúmeros desafios para as empresas. Ainda segundo o autor, no caso das empresas baseadas em desenvolvimento de software, construir sistemas em tempo hábil, com custos razoáveis e qualidade adequada tornou-se fundamental. Atento a essas exigências, as organizações de software vêm utilizando as atividades de teste de software para evitar e reparar os problemas e as deficiências contidas no software desenvolvido antes que esse seja entregue ao cliente. Teste de software é uma das técnicas utilizadas para obtenção da qualidade do software, tornando-se indispensável para a identificação e eliminação de problemas que possam vir a ocorrer durante este processo [Pressman, 2002]. Determinar a qualidade de um software produzido não é uma tarefa simples, já que, mesmo atendendo a todas as suas especificações, os usuários ainda podem não considerá-lo como um produto de alta qualidade. Embora não sendo uma tarefa trivial, segundo Software Engineering Institute [SEI, 1992], é possível percerber que quanto maior o número de defeitos encontrados em um software, menor será a qualidade do mesmo, ou seja, a qualidade é inversamente poporcional ao número de defeitos encontrados. Um dos fatores importantes para um bom trabalho de testes e qualidade são o registro e acompanhamento dos defeitos encontrados durante o processo de desenvolvimento. Conforme o SWEBOK [SWEBOK, 2004], esse monitoramento pode ser utilizado para analisar quais os aspectos no processo de desenvolvimeto de software da organização podem ser melhorados, qual tipo de erro causou o defeito e em que momento os defeitos poderiam ter sido identificados no processo de desenvolvimeto do software. Entretanto, para um efetivo aproveitamento de tais registros, devem ser definidos padrões, procedimentos e um conjunto de informações mínimas. Para projetos pequenos e com pouco volume de dados, talvez seja possível registrar os defeitos encontrados, no software sob teste, em planilhas ou documentos e com pouca formalidade e padronização. Entretanto quando a quantidade de informações cresce e o tamanho do projeto é grande, o uso de uma ferramenta torna-se imprescindível para gerenciar essa massa de dados. Além disso, os defeitos encontrados devem ser registrados de forma a facilitar a recuperação das informações pelos vários envolvidos no desenvolvimento do software: desenvolvedores que serão os responsáveis pela correção do defeito; gerentes, para acompanhamento do produto testado; testadores, que deverão verificar a correção do defeito; equipe da qualidade e processo, responsáveis pelo levantamento de métricas e melhorias no processo. A adoção de ferramentas que dêem suporte aos diversos processos da engenharia de software já é bastante consolidada em organizações desenvolvedoras de software, entretanto, ferramentas envolvem benefícios potenciais e riscos. Benefícios tais como: reduzir trabalhos repetitivos, facilidade de acesso a informações sobre o teste. Em contrapartida, existem os riscos como as falsas expectativas referentes à ferramenta (incluindo funcionalidades e falicilidades de uso). Esse artigo irá apresentar uma lista de requisitos necessários e essenciais para uma ferramenta de registro de defeitos de software, ou seja, um catálogo dos requisitos para esse tipo de ferramenta, também conhecida como bug tracking. Espera-se, com este trabalho, diminuir os riscos da utilização de ferramentas no processo de teste, apoiar organizações desenvolvedoras de software que desejem adquirir esse tipo de ferramenta, bem como, organizações que desenvolvem ferramentas de registro de defeitos aumentando, assim, os benefícios potenciais das mesmas. Os requisitos levantados nesse artigo considerarão a perspectiva de diversos profissionais que utilizam o registro de defeito ou o conjunto deles ao longo do desenvolvimento do software. Por exemplo, o testador necessita de alguns requisitos na ferramenta para facilitar o cadastro e verificação do defeito encontrado, por outro lado, o gerente do projeto necessita de outros requisitos para avaliação geral dos defeitos encontrados para o projeto ou para um módulo específico. 2. Modelos e Características de Ferramentas de Registro de Defeitos Em desenvolvimento. 3. Requisitos Em desenvolvimento. 4. Aspectos Práticos e Operacionais Em desenvolvimento. 5. Conclusão Em desenvolvimento. 6. Referências Bibliográficas Cândido, E.J.D. (2004) “Uma simplificação da técnica análise de pontos de função para estimar tamanho de aplicativos web.” Dissertação de Mestrado, USP, 2004. D'Ambros, M. Lanza, M. Pinzger, M. (2007) "A Bug's Life" Visualizing a Bug Database. In: Visualizing Software for Understanding and Analysis, 2007. VISSOFT 2007. 4th IEEE International Workshop on page 113 – 120 D'Ambros, M.; Lanza, M. (2006) “Software Bugs and Evolution: A Visual Approach to Uncover Their Relationship”. In: Software Maintenance and Reengineering, 2006. CSMR 2006. Proceedings of the 10th European Conference; Vol. 00 on page 22 – 24 Francisco M. P.; Peres P. B; Robles G, (2007) “Correlation between bug notifications, messages and participants in Debian’s bug tracking system”. In: Proceedings of the First International Symposium on Empirical Software Engineering and Measurement on page 455 - 457 Harry S. Delugach (2007) “An evaluation of the pragmatics of web-based bug tracking tools”. In: ACM International Conference Proceeding Series; Vol. 280 on page 49 – 55 Pressman, R. S. (2002) “Engenharia de Software”, 5 ed. Rio de Janeiro: McGraw-Hill. SEI (1992) “CMU/SEI-92-TR-22 - Software Quality Measurement: A Framework for Counting Problems and Defects” Serrano, N.; Ciordia, I. (2005) “Bugzilla, ITracker, and Other Bug Trackers”. In: Software, IEEE on page 11 – 13 SWEBOK (2004) “Guide to the software engineering Body of Knowledge”