Capítulo 45 — Revisão independente de projeto
Mapa da aula
Aula 45 publicada. Mapa, exemplo, EX133.
flowchart TD
N0["45.1 Finalidade"]
N1["45.2 Pacote de revisão"]
N2["45.3 Achados"]
N3["45.4 Resposta"]
N4["45.5 Evidência do encerramento"]
N5["45.6 Por que o achado maior aconteceu"]
N6["45.7 Lição de processo"]
N7["45.8 Comunicando os resultados"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
N7 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX133"]
Desenho lógico
flowchart LR
N0["45.1 Finalidade"]
N1["45.2 Pacote de revisão"]
N2["45.3 Achados"]
N3["45.4 Resposta"]
N4["45.5 Evidência do encerramento"]
N5["45.6 Por que o achado maior aconteceu"]
N6["45.7 Lição de processo"]
N7["45.8 Comunicando os resultados"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX133"]
[45.1 Finalidade]
|
v
[45.2 Pacote de revisão]
|
v
[45.3 Achados]
|
v
[45.4 Resposta]
|
v
[45.5 Evidência do encerramento]
|
v
[45.6 Por que o achado maior aconteceu]
|
v
[45.7 Lição de processo]
|
v
[45.8 Comunicando os resultados]
|
v
[Exemplo resolvido] --> [Exercício EX133]
Objetivos de aprendizagem
Você vai (1) preparar o EvidenceDesk para uma revisão independente; (2) responder aos achados da revisão; (3) distinguir os achados por severidade; (4) encerrar os achados com evidências.
45.1 Finalidade
Um revisor independente — um engenheiro forense externo, sem ligação com o projeto — examina o projeto, o código, a validação e os registros do piloto. A independência importa porque quem constrói deixa passar as próprias suposições. Um revisor sem ligação não tem nada a ganhar aprovando o trabalho nem uma história em comum que faça certas escolhas parecerem óbvias. Priya e Northfield acordam por escrito os termos do revisor: o que ele vai ver, quanto tempo terá e que os achados serão relatados por completo. O revisor também confirma por escrito que não tem conflito de interesses com o projeto.
45.2 Pacote de revisão
Requisitos e rastreabilidade, arquitetura e registros de decisão, análise de ameaças e falhas, plano e relatório de validação, campanhas de verificação, relatórios do piloto, registro de dívidas. Montar o pacote já é uma verificação: documentos ausentes ou desatualizados ficam evidentes quando tudo precisa ser entregue de uma vez. Priya descobre que a análise de ameaças é anterior à mudança de ancoragem feita depois da campanha de verificação e a atualiza antes de enviar. Cada documento traz uma versão e uma data, para que os achados do revisor possam se referir a versões exatas. O revisor também recebe acesso de leitura ao código.
45.3 Achados
O revisor levanta sete achados. Maior: durante o piloto, as âncoras ficam guardadas no mesmo servidor que a cadeia, o que anula sua finalidade se o servidor for comprometido. Moderado: o guia do desenvolvedor não tem um passo de assinatura das versões. Menor: nomes de campos inconsistentes em dois módulos, entre outros. Graduar os achados diz ao projeto onde gastar esforço primeiro. O achado das âncoras é maior porque mina a detecção de adulteração, que é a razão de as âncoras existirem: qualquer pessoa capaz de editar a cadeia naquele servidor também poderia editar as âncoras guardadas ao lado dela. A lacuna na assinatura das versões é moderada porque versões poderiam ser trocadas sem que ninguém percebesse. Nomes inconsistentes causam confusão, mas nenhum risco direto.
45.4 Resposta
Cada achado recebe uma resposta: aceitar e corrigir, aceitar e adiar com justificativa, ou contestar com evidências. Priya aceita os sete; a questão das âncoras é corrigida primeiro, movendo as âncoras para o log assinado e separado do gerente da qualidade, como no projeto original. Contestar um achado é legítimo quando o revisor entendeu algo errado, mas precisa se apoiar em evidências, e não em preferências. Aqui Priya concorda com todos os achados. Mover as âncoras para o log do gerente da qualidade restaura a separação do projeto original: mudar o histórico passaria então a exigir a alteração de dois sistemas controlados por pessoas diferentes.
45.5 Evidência do encerramento
Cada achado encerrado aponta para a mudança, para o teste que a comprova e para a confirmação do revisor. Dizer que um achado está corrigido é uma afirmação; ligar a mudança, o teste e a confirmação do revisor torna-a verificável. Para o achado das âncoras, o teste edita a cadeia no servidor e confirma que a verificação falha contra o log separado. O revisor roda esse teste pessoalmente antes de marcar o achado como encerrado. Os achados em aberto continuam listados no resumo da revisão até que os três vínculos estejam presentes, então nada é marcado como encerrado com base numa promessa.
45.6 Por que o achado maior aconteceu
Durante a configuração do piloto, a ancoragem foi configurada localmente "temporariamente" e nunca foi movida. O registro de dívidas não a tinha captado. Configurando tudo depressa para começar o piloto no prazo, Priya apontou as âncoras para uma pasta local, com a intenção de corrigir isso em uma semana, e outras tarefas tomaram a frente. Nenhum documento registrou o atalho, então nada lembrou ninguém. O achado fala menos de âncoras do que de como as decisões temporárias somem de vista. Hugo observa que o mesmo padrão aparece na prática do laboratório, como uma prateleira de armazenamento temporária que se torna permanente.
45.7 Lição de processo
As configurações temporárias entram no registro de dívidas com um prazo. Um prazo transforma "temporariamente" numa data pela qual alguém responde. A folha de verificação diária ganha uma linha listando os itens de dívida com prazo vencido, para que um atalho atrasado fique visível toda manhã. Priya também acrescenta um critério de liberação: nenhuma configuração temporária pode estar ativa em produção sem uma entrada no registro. A regra vale também para os procedimentos do laboratório, então uma solução temporária para um bloqueador de gravação quebrado, por exemplo, também precisaria de uma entrada e de uma data antes que alguém dependesse dela.
45.8 Comunicando os resultados
O resumo da revisão é compartilhado com o gerente de Northfield, incluindo o achado maior, e não apenas a situação de encerrado. Relatar apenas "todos os achados encerrados" seria exato, mas esconderia que um controle-chave foi ineficaz durante parte do piloto. O gerente precisa saber, porque os registros do piloto daquele período tiveram uma proteção mais fraca contra adulteração. O resumo declara a janela de exposição e confirma que a verificação da cadeia contra as novas âncoras não encontrou alterações. O gerente pode então pesar essa exposição diretamente.
Escolhendo um revisor
Priya e Hugo escolhem um revisor com experiência em engenharia forense que não tenha vínculos com o projeto nem com os fornecedores em consideração, e registram essa verificação de independência.
Exemplo resolvido
Linha da tabela de respostas de Priya: "F1 (maior) — âncoras no mesmo local que a cadeia. Aceito. Âncoras movidas para o log assinado do GQ em 14 de março; o teste T-ANCH-03 confirma que a reconstrução da cadeia é detectada; confirmado pelo revisor em 18 de março."
Caso sintético. A revisão é inventada.
Erros e limites
Uma revisão vê o que um revisor procura; combine-a com auditoria contínua.
Exercícios
- EX133 — Achado maior. Qual foi o achado maior, e por que ele importa? Rubrica: 3 = âncoras no mesmo servidor; um comprometimento anula a detecção; 2 = parcial; 1 = vago; 0 = nada.
- EX134 — Opções de resposta. Liste três maneiras de responder a um achado. Rubrica: 3 = corrigir, adiar com justificativa, contestar com evidências; 2 = duas; 1 = uma; 0 = nada.
- EX135 — Causa raiz. Por que a questão maior ocorreu, e que mudança de processo se seguiu? Rubrica: 3 = configuração temporária não movida; registro de dívidas com prazo; 2 = um; 1 = vago; 0 = nada.
Síntese
A revisão independente encontra o que quem constrói deixa passar; encerre cada achado com evidências vinculadas e aprenda com a sua causa.
Continue estudando — capítulo 45 de 50
← Capítulo 44 (rascunho) · Índice de capítulos do curso · Capítulo 46 (rascunho) →