Guia do Desenvolvedor


Este documento tem como propósito orientar os engenheiros de software no desenvolvimento de projetos digitais da CNN, garantindo a qualidade técnica por meio de padrões e boas práticas.


1. Considerações Iniciais

Antes de iniciar qualquer projeto, é obrigatório realizar o estudo e a modelagem inicial utilizando o Domain-Driven Design (DDD).

  • O escopo inicial deve ser definido no começo do projeto.
  • O modelo deve ser continuamente atualizado à medida que novas funcionalidades são implementadas.

2. Primeiros Passos

Guia para Novos Projetos

  1. Para projetos existentes, seguir padrão pre-estabelecido.
  2. Criação de branches: Sempre crie a sua branch a partir da master e siga o padrão de nomeação, utilizando o ID da tarefa no Azure DevOps: <id-da-feature>.

3. Desenvolvimento

  1. Estrutura de pastas: Siga a estrutura inicial de pastas conforme o padrão de arquitetura definido neste guia.
  2. Testes (TDD): Inicie o desenvolvimento criando testes unitários que validem os requisitos e cenários relevantes da funcionalidade.
    1. Utilize os critérios de aceite da Feature como base para o desenvolvimento dos testes unitários
  3. Implementação: Após definir os testes, comece a desenvolver a funcionalidade, seguindo os padrões de código e as boas práticas estabelecidas.
  4. Testes de integração: Ao finalizar a funcionalidade, crie testes de integração para cobrir os pontos críticos do sistema e os fluxos principais da funcionalidade implementada.

4. Envio para Ambientes

Após a validação local, a demanda deve ser enviada para os ambientes de desenvolvimento (alpha ou develop). Garanta que todos os testes unitários e de integração foram executados e passaram, pois a pipeline de integração contínua irá validar os testes e, em caso de erro, não permitirá o merge.


5. Garantia de Qualidade (QA)

  1. Antes de enviar a demanda para o time de QA, certifique-se de que todos os requisitos da tarefa foram implementados.
  2. Caso a demanda retorne com um bug, é obrigatório criar um novo teste (unitário ou de integração) que cubra o caso reportado.

6. Code Review

Todo Pull Request deve seguir as seguintes diretrizes:

  1. Tamanho: As alterações devem ser limitadas a no máximo 400 linhas. Essa limitação garante mais credibilidade e segurança ao processo de revisão, facilitando a análise e o entendimento do código.
  2. Validação: Os revisores devem validar a clareza do código, a cobertura de testes e a aderência aos padrões e à arquitetura definidos.

Guia de implementações:

Este documento apresenta as diretrizes técnicas obrigatórias para a stack. Nele, são detalhados exemplos de código, a arquitetura padrão, exemplos de testes e um boilerplate de interfaces genéricas