Português Ingles Espanhol

Monografia

Implementação do TDD em sistemas pré-existentes

Autor:
Lucas Ju San Jeon
Curso:
MBA em Gestão de Projetos e Processos Organizacionais - MGP
Data:
15/07/1994
Contato:
lucasjukr94@gmail.com

Resumo

Definição do Problema – A organização enfrentava dificuldades na qualidade e na manutenção de seus sistemas legados devido à falta de um processo estruturado de testes. A ausência de testes unitários e de integração causava aumento de falhas em produção, retrabalho frequente e uma maior complexidade na implementação de novas funcionalidades, impactando a entrega e a satisfação dos clientes. O problema central era implementar uma metodologia de Test-Driven Development (TDD) para melhorar a qualidade do software em um sistema já existente, sem interrupção no ciclo de desenvolvimento e com mínima resistência da equipe.

Análise do Problema – Por meio da análise SWOT, foi possível identificar as principais fraquezas e ameaças que a empresa deveria atacar para que a implementação do TDD fosse bem-sucedida, cada ponto frágil foi analisado separadamente. A análise da viabilidade foi focada em ferramentas que seriam mais facilmente adaptáveis aos processos atuais da equipe.

Solução do Problema – Foi criado um passo a passo para ser executado cronologicamente: (1) Capacitação dos desenvolvedores;(2) Mapeamentos dos projetos e identificação do projeto para servir como modelo;(3) Mapeamento de cenários de testes e implementação na prova de conceito;(4) Melhoria no processo de desenvolvimento e entrega de pacotes;(5) Ajuste no script de geração de pacotes para garantir obrigatoriedade do TDD;

Resultados – A equipe se dividiu entre motivados e resistentes ao treinamento de TDD. Foram mapeados 52 cenários de teste, com 173 horas de trabalho, e a automação dos testes levou 10 semanas. A flexibilidade do processo permitiu acelerar o mapeamento e automação. A curto prazo, espera-se menos bugs, e a longo prazo, mais robustez no sistema.

Avaliação e ações Aprendidas – A implementação do TDD no sistema de controle de acesso enfrentou desafios como o desinteresse de parte da equipe e a complexidade do sistema, resultando em um alto tempo de mapeamento de testes. No entanto, o TDD melhorou a robustez do sistema e descentralizou o conhecimento. Para futuras  implementações, é recomendado o uso de KPIs para metrificar o desempenho da implementação e um modelo de mentoria para facilitar a adoção e consolidar o TDD no processo de desenvolvimento.

Palavras-chave: Gestão de Projetos; Inovação; Tecnologia; TDD; Testes.

Gestão de Projetos; Inovação; Tecnologia; TDD; Testes.

Gestão de Projetos; Inovação; Tecnologia; TDD; Testes.