Desenvolvimento de Sistemas: O que verificar em uma entrega?

 

Após mais de 30 anos trabalhando com desenvolvimento de sistemas, vi muitos erros e acertos em entregas de código. Aqui estão alguns aspectos que considero ao receber uma entrega de código, seja de uma fábrica de software ou de um desenvolvedor individual:

💡Artefatos de Documentação: Certifique-se de que todos os artefatos de documentação estejam presentes e atualizados. Isso inclui diagramas, especificações, documentação de API e qualquer outro material que ajude a entender e manter o código.

💡Evidências de Testes: A entrega deve incluir evidências de que o código foi testado. Isso pode ser na forma de logs de testes, capturas de tela, ou mesmo vídeos. Os testes devem cobrir casos de uso normais, limites e exceções. Aqui estamos falando do teste realizado pela equipe (ou pessoa) responsável pelo desenvolvimento.

💡Definição de Pronto (DoD): Verifique se todos os critérios da Definição de Pronto foram atendidos. Isso pode incluir itens como performance, segurança, usabilidade, entre outros.

💡Senhas e Dados Sensíveis: O código não deve conter senhas, chaves de API ou qualquer informação sensível hardcoded. Estes devem ser externalizados e protegidos adequadamente.

💡Padrões de Codificação: O código deve seguir os padrões de codificação acordados, seja em termos de nomenclatura, estrutura ou qualquer outro aspecto definido.

💡Inspeção Visual: Faça uma inspeção visual rápida do código. Isso pode revelar problemas óbvios, como blocos de código comentados que não deveriam estar lá, ou trechos de código que parecem fora do lugar.

💡Revisão de Código (code review): Se possível, faça uma revisão de código com a equipe ou com o desenvolvedor que fez a entrega. Isso pode ajudar a esclarecer dúvidas e garantir que todos estejam na mesma página.

💡Dependências: Verifique se todas as dependências (bibliotecas, frameworks, etc.) estão claramente documentadas, atualizadas e se são de fontes confiáveis.

💡Performance: Certifique-se de que foram feitos testes de performance e que o código atende aos requisitos nesse aspecto.

💡Segurança: Além de não ter senhas no código, verifique se o código não apresenta vulnerabilidades conhecidas, como, por exemplo, a injeção de SQL (SQL Injection) entre outras possíveis falhas de segurança.

💡Rastreabilidade: Deve ser possível rastrear cada requisito até seu respectivo código e teste, garantindo que todos os requisitos foram atendidos.

E tudo isto precisa estar adequado ao acordo inicial para desenvolvimento, seguindo os parâmetros e padrões da empresa e/ou projeto.

 

Publicado originalmente no LinkedIn: https://www.linkedin.com/feed/update/urn:li:activity:7122906344860360704/