Trilha 04Lição 1 / 10

Conecte todo o ciclo de vida do software

Acompanhe uma funcionalidade da necessidade do usuário à operação e ao feedback. Identifique as decisões que a geração de código não resolve sozinha.

Fundamentos10 minRevisado

Publicado por Como escrevemos

Confira seu entendimentoUm agente abre um PR com testes passando. Qual conclusão é justificada?Faça o exercício
Um agente abre um PR com testes passando. Qual conclusão é justificada?

O que você vai aprender

  • Explicar as principais decisões antes e depois da implementação.
  • Relacionar um requisito à verificação e às evidências operacionais.
  • Diferenciar uma ferramenta de programação de um sistema de entrega de software.

Acompanhe uma funcionalidade pelo sistema

Um assistente de programação pode ajudar a produzir uma implementação. Um sistema de entrega de software também deve determinar o que construir, verificar o resultado, disponibilizá-lo e apoiar seu uso. A IA pode ajudar nessas atividades, mas as decisões continuam existindo.

Considere um pedido fictício: um gerente precisa de uma exportação de clientes. A primeira pergunta útil é por que essa exportação é necessária. Um relatório recorrente pode resolver a necessidade com menos exposição de dados. Aceitar cedo demais o nome da funcionalidade pode criar trabalho desnecessário.

A próxima pergunta trata dos limites. Quais usuários podem exportar quais registros? Quais campos são necessários? Para onde vai o arquivo? Essas decisões orientam a implementação e as verificações importantes.

Preserve as evidências entre etapas

O ciclo de vida perde confiabilidade quando cada etapa recebe uma descrição incompleta da anterior. Um ticket diz “adicionar exportação”, um PR acrescenta um endpoint e um operador recebe um serviço sem responsável.

Use uma conexão explícita entre as etapas:

EtapaEvidência que apoia a próxima decisão
Entender a necessidadeUsuário, problema e condição de sucesso identificados
Especificar o comportamentoAções permitidas, limites e critérios de aceitação
ImplementarAlteração que possa ser revisada e esteja vinculada ao requisito
VerificarVerificações relevantes e revisão independente da versão real
DisponibilizarArtefato aceito, ambiente de destino e método de recuperação
OperarSinais do serviço, responsabilidade por incidentes e processo de manutenção
AprenderFeedback dos usuários e resultados observados

Essa tabela é um modelo prático de ensino. Organizações podem usar outros nomes para as etapas e combinar atividades. Preserve as decisões mesmo quando o fluxo for altamente automatizado.

Mantenha a verificação relevante para a necessidade

Para a exportação, baixar o arquivo com sucesso é uma verificação. Outra verifica se um gerente não consegue exportar registros de outra organização. Uma terceira verifica o conjunto de campos exigido. Essas verificações cobrem requisitos diferentes.

Não deduza uma segurança ampla de um indicador verde de testes. Identifique o que as verificações cobrem e o que continua sem verificação. O SSDF do NIST descreve o desenvolvimento seguro como práticas ao longo do ciclo de vida, não como um único escaneamento final. Leia o framework.

A decisão de release deve usar evidências da versão que será implantada. Se o código mudar após a revisão, determine quais verificações e decisões precisam ser renovadas. Mantenha essa relação explícita no processo de entrega.

Inclua a operação no projeto original

Decida como o responsável pelo serviço detectará uma exportação com falha, um padrão anormal de requisições ou um tempo de resposta inaceitável. Evite registrar os dados de clientes exportados em logs por conveniência de depuração.

O monitoramento deve ajudar um responsável a agir. As orientações de SRE do Google diferenciam sintomas do serviço de causas internas e explicam a importância de sinais úteis. Orientações de monitoramento.

Planeje a recuperação antes de um incidente. Identifique quem pode interromper a funcionalidade, restaurar o serviço e comunicar o impacto. Concluir o deployment é uma transição para essas responsabilidades.

Use o feedback para mudar a próxima decisão

Após o release, verifique se os gerentes usam a exportação e se ela resolve o problema original. Revise incidentes, dúvidas de suporte e esforço de manutenção. Transforme achados relevantes em requisitos atualizados ou trabalho.

Essa conexão diferencia uma fábrica de software de ciclo de vida completo de um conjunto de geradores de código. Avalie se o sistema preserva a intenção e as evidências ao longo de toda a sequência. Explore o ciclo de vida interativo para inspecionar cada decisão.

Faça o exercício

Use o explorador do ciclo de vida para a exportação de clientes. Em cada etapa, indique o responsável, a evidência e a decisão. Encontre uma transição em que sua organização perde contexto hoje. Descreva a menor alteração que preservaria esse contexto.

Baixar planilha de exercício (Markdown)
Confira seu entendimento ↑

Continuar aprendendo

Fontes e leituras adicionais

Leituras relacionadas da Taiga