Garantia de Entrega de Software (Software Delivery Assurance)


Responsável: João Gabriel

Última Atualização: 24/11/2025

Status: Em desenvolvimento


1. Visão Geral


A área de Garantia de Entrega é responsável por projetar, implementar e manter os processos automatizados que levam o software do desenvolvimento até a produção. O objetivo é assegurar que o código produzido seja integrado, testado, empacotado e implantado de forma confiável, repetível e rastreável.

A responsabilidade é atuar como a ponte entre o Desenvolvimento (Engenharia de Requisitos e Projeto de Software) e a Operação (Infraestrutura), garantindo que os portões de qualidade (Q&A) sejam respeitados.


2. Fundamentos Teóricos

A prática de entrega nesta organização é fundamentada nas seguintes Áreas de Conhecimento (KAs) propostas pelo SWEBOK v4:

  • Software Requirements (Cap. 1): Identificação de requisitos funcionais e não-funcionais (como desempenho e segurança) para estabelecer Critérios de Aceite que validam se o software está pronto para entrega.


  • Software Engineering Operations (Cap. 6): Foco na automação de deploy, integração contínua (CI) e entrega contínua (CD).


  • Software Configuration Management (Cap. 8): Controle de versões, baselines de código e gestão de releases.


  • Software Quality (Cap. 12) & Testing (Cap. 5): Implementação de Quality Gates (portões de qualidade) automatizados no pipeline.


3. Principais Responsabilidades

O papel de Garantia de Entrega cobre as seguintes atividades:

Gestão de Configuração:

Definição da estratégia de branching (ex: GitFlow, Trunk Based).

Garantia da integridade do repositório de código.

Automação de Build (CI):

Criação de scripts que compilam o código e geram artefatos.

Gerenciamento de dependências do projeto.

Automação de Testes e Qualidade:

Configuração da execução automática de testes unitários e de integração.

Configuração de ferramentas de análise estática de código (SonarQube, linters).

Gerenciamento de Release e Deploy (CD):

Empacotamento da aplicação (ex: Imagens Docker, Executáveis).

Automatização da implantação nos ambientes (Dev, Homologação, Produção).

4. Integração com o Time

Abaixo detalha-se como a Garantia de Entrega interage com as outras áreas da Software House:

4.1. Com Engenharia de Requisitos (Leonardo)

  • Entrada: Critérios de Aceite funcionais e não-funcionais.
  • Ação: Configuração do pipeline para validar se o build atende aos requisitos técnicos (ex: tempo de resposta, segurança básica).
  • Rastreabilidade: Garantia de que cada Release possa ser ligada a um conjunto de Requisitos entregues.

4.2. Com Projeto de Software (Luis Henrique)

  • Entrada: Definição da Arquitetura e Tecnologias.
  • Ação: Criação de scripts de build compatíveis com a tecnologia escolhida (ex: Java, Node, Python) e empacotamento conforme a arquitetura (ex: Microsserviços vs Monolito).

4.3. Com Q&A / Testes (Giovana)

  • Entrada: Planos de teste e scripts de teste automatizados.
  • Ação: Execução automática desses testes a cada alteração de código (Commit). Se o teste falhar, a entrega é bloqueada (Quality Gate).

4.4. Com Operações (Samuel)

  • Entrada: Requisitos de infraestrutura e credenciais de acesso.
  • Saída: Pacote de software (artefato) pronto para execução.
  • Ação: Colaboração nos scripts de Infrastructure as Code (IaC) para garantir que o ambiente de teste seja igual ao de produção.

Considerações

A API prioriza a privacidade dos usuários, informando apenas se o critério de tempo de vínculo do número foi atendido, sem revelar dados sensíveis. Sua lógica é flexível, permitindo ajustar o tempo mínimo de associação que deve ser considerado adequado — por exemplo, sinalizando números com menos de 30 dias de uso. Além disso, sua padronização facilita a integração entre diferentes operadoras e sistemas ao redor do mundo, tornando a adoção global mais simples. Outra vantagem é a possibilidade de integrações diretas com soluções de KYC, detecção de troca de SIM card ou ferramentas antifraude, ampliando o valor no ecossistema digital.