Engenharia
Caracol
Programar antes do código
Baixar livro gratuitoLeia online, consulte um termo ou leve os arquivos para estudar no seu computador. O acesso ao conteúdo de ensino é gratuito.
Programar antes do código
Baixar livro gratuitoBaixe o código da Oficina Caracol e os laboratórios iniciais. O arquivo contém instruções, testes e registros do escopo verificado.
Guarde uma cópia e abra a pasta laboratorios_iniciais para as aulas 1 a 6.
Na pasta pratica, confira requisitos, comandos e limites da Oficina Caracol.
Use um comando por vez. Compare os resultados com a explicação da aula.
Descreva o que foi demonstrado, o que falhou e qual é a próxima ação.
Uma falha que faz parte da aula. npm run exercicio:antes deve falhar: ele detecta um defeito intencional isolado. A suíte principal e o exercício “depois” usam a implementação correta. Consulte o README.
Abra a imagem, acompanhe a explicação
e relacione-a com o capítulo.
A separação acompanha responsabilidades. Não exige um arquivo por campo nem concentra todos os assuntos em um documento.
O formato é o contrato do pacote. O validador rejeita registros inválidos e propriedades extras; a aparência do texto não substitui o tipo do valor.
Filtrar a saída não significa apagar o registro inativo da fonte. Ocultar um cartão depois de entregar o registro ao navegador não atende à mesma fronteira de publicação.
A validação pertence ao contrato do catálogo. O consumidor deve tratar a falha; a validação não demonstra que a interface e o servidor já estão integrados.
O estado temporário das reservas pertence ao registrador; a leitura do catálogo não cria reserva. O projeto não representa um sistema real de agendamento.
O retorno tem uma causa e um alvo. Um gate não é apenas um formulário preenchido: precisa produzir uma decisão sustentada pelas evidências disponíveis.
Cada nível depende de evidência pertinente e válida. Executar teste com falha não basta para M5; teste isolado não comprova M6. A maturidade não é uma média percentual.
Documentar uma falha não a torna aceitável. O registro do gate deve delimitar escopo, evidência, autoridade, riscos e consequências da decisão.
A ordem representa dependências do caso. Dados de teste e consumidores podem ser desenvolvidos em paralelo quando o contrato já está acordado; integrar exige revalidar as relações.
O exemplo mostra uma ligação possível. Nem todo requisito exige um ADR próprio. Uma evidência de teste vale para a versão, o ambiente e o alcance efetivamente observados.
Os casos c01 e c02 são públicos e válidos neste cenário. Idempotência usa a identidade da operação, não apenas o fato de a tela parecer igual. O contrato da oficina conserva estado em memória e não garante reserva durável.
Os comandos da oficina atuam em sandbox/recuperacao. O exercício não escreve sobre o catálogo fonte, não trata produção e exige verificar o resultado após restaurar.
Os perfis orientam proporcionalidade. A lista é didática, não uma certificação nem um substituto para avaliação específica do sistema e de suas obrigações.
Uma mudança pode exigir regressão em vários níveis. Um teste de unidade aprovado não comprova sozinho o fluxo de sistema; ferramentas automáticas não eliminam a avaliação manual de interação.
As referências apoiam conceitos delimitados.
Não representam aprovação externa do método.
IEEE Computer Society. 2024 com atualização 4.0a de 2025.
Seção consultada: Apresentação e indicação da revisão 4.0a de 25 de setembro de 2025
Situa áreas de conhecimento consolidadas. A combinação e os estados Caracol pertencem à proposta do autor.
Consulta parcial à página oficial; o livro integral não foi incorporado nem distribuído.
Consultar a fonte oficialISO IEC IEEE. 2026 segunda edição.
Seção consultada: Abstract público e identificação da edição de abril de 2026
O resumo descreve processos ao longo do ciclo de vida e não impõe um modelo específico. Não é declaração de conformidade com a norma.
Consulta parcial ao resumo e aos metadados oficiais; texto normativo integral não consultado.
Consultar a fonte oficialSouppaya Murugiah Scarfone Karen Dodson Donna NIST. NIST SP 800-218 versão 1.1 fevereiro de 2022.
Seção consultada: Visão geral dos grupos e práticas PO.1 PO.2 e PO.4 da tabela 1 páginas impressas 5 a 9
Referência para incluir segurança no desenvolvimento e tratar verificações como práticas contextualizadas.
Consulta parcial às práticas de requisitos papéis e critérios de segurança no documento oficial. Não houve avaliação de cumprimento integral.
Consultar a fonte oficialBooth Harold e colaboradores NIST. NIST SP 800-218A julho de 2024.
Seção consultada: Abstract e escopo de produtores de modelos sistemas e adquirentes
Não converte um prompt de programação em conformidade com um perfil destinado a sistemas e modelos de IA.
Consulta parcial ao resumo oficial e identificação. Leitura complementar para contextos com modelos de IA.
Consultar a fonte oficialOWASP Foundation. ASVS versão 5.0.0 maio de 2025.
Seção consultada: Introduction e identificação da versão estável
Referência para formular verificações de segurança web; o catálogo de estudo não é certificado pelo ASVS.
Consulta parcial ao projeto e à identificação da edição. Requisitos individuais precisam ser selecionados e verificados no projeto real.
Consultar a fonte oficialWorld Wide Web Consortium. Recomendação de 12 de dezembro de 2024.
Seção consultada: Critérios 1.4.3 1.4.4 1.4.10 2.1.1 2.4.7 3.1.1 3.3.2 e 4.1.3
Orienta os roteiros de interface e a necessidade de verificar resultados. Os roteiros do exemplo cobrem um subconjunto.
Consulta parcial aos critérios de contraste redimensionamento refluxo teclado foco idioma rótulos e mensagens de estado. Não é auditoria completa de conformidade.
Consultar a fonte oficialChacon Scott Straub Ben. Segunda edição 2014 versão web consultada em 2026.
Seção consultada: Seções 2.2 Recording Changes to the Repository e 2.4 Undoing Things
Apoia comparação e registro de versões. Histórico de código não substitui revogação de uma credencial exposta.
Consulta parcial a status diff staging commits e cuidados ao desfazer alterações. As operações de restauração do projeto são próprias da sandbox e não derivam de uma garantia de recuperação por Git.
Consultar a fonte oficialKunce Darius Goby Dominik AWS. Guia web sem edição fixa.
Seção consultada: Introdução ADR process e Best practices
Apoia contexto alternativas decisão consequências e histórico do ADR. Os documentos preenchidos da Oficina são exemplos autorais.
Consulta parcial às páginas do processo e de preservação de decisões substituídas.
Consultar a fonte oficialFowler Martin. Artigo web atualizado em 2024.
Seção consultada: Definição e práticas de integração frequente com build e testes
Integração contínua é uma prática de integração e verificação frequente. A mera existência de uma ferramenta de pipeline não a demonstra.
Consulta parcial ao artigo; sem reprodução extensa.
Consultar a fonte oficialPreston Werner Tom e colaboradores. Especificação 2.0.0 tradução brasileira.
Seção consultada: Especificação itens 1 3 6 7 e 8
Apoia comunicação de mudanças na API. O número 2.0 deste livro identifica a edição editorial e não certifica uma API do método.
Consulta parcial às regras de API pública imutabilidade de versão publicada e incrementos.
Consultar a fonte oficialRoyce Winston W. IEEE WESCON 1970 pp 1 a 9 reimpressão ICSE 1987 pp 328 a 338.
Seção consultada: Introdução e figuras 2 a 4 da cópia digital
A leitura histórica inclui a crítica ao teste tardio e relações de iteração; não reduz o artigo a defender uma sequência rígida sem retorno.
Consulta parcial ao texto original reproduzido em fac símile hospedado por terceiro. Acesso à cópia não significa licença de redistribuição; o PDF externo não integra o pacote.
Consultar a fonte oficialBeck Kent e demais signatários. 2001 tradução brasileira.
Seção consultada: Declaração de valores e ressalva sobre valor dos itens comparados
Contextualiza colaboração software em funcionamento e adaptação. Não atribui aos signatários aprovação do Caracol.
Consulta à declaração curta oficial; os princípios são leitura complementar.
Consultar a fonte oficialGitHub Docs. Documentação web.
Seção consultada: About removing sensitive data e About sensitive data exposure
Credencial real exposta deve ser invalidada ou rotacionada; remover um arquivo da versão atual não elimina todas as cópias.
Consulta parcial às seções de revogação rotação e alcance de cópias.
Consultar a fonte oficialnpm Documentation. Documentação web.
Seção consultada: Description e observações sobre coerência e opções do lockfile
A instalação limpa exige coerência entre manifesto lockfile e opções. O arquivo de lock contribui para repetibilidade sem provar sozinho todo o ambiente.
Consulta parcial à documentação e aos resultados indexados da página oficial.
Consultar a fonte oficialFeatonby Malcolm Amazon Builders Library. Artigo técnico web.
Seção consultada: Retrying and side effects e Reducing client complexity
Apoia o exemplo autoral de mesma chave mesma intenção e conflito para conteúdo diferente. O registrador em memória não oferece garantia distribuída.
Consulta parcial às seções sobre intenção chave de requisição e efeitos de repetição.
Consultar a fonte oficialInternational Software Testing Qualifications Board. Versão 4.0.1 2024.
Seção consultada: Seções 2.2 Test Levels and Test Types 2.2.3 Confirmation Testing and Regression Testing e 5.2 Risk Management
Apoia distinguir fronteira de teste e finalidade de reexecução. Não é acreditação do livro ou certificação do leitor.
Consulta parcial aos níveis finalidade de regressão e relação entre risco de produto e esforço de teste.
Consultar a fonte oficialFowler Martin. Site do autor.
Seção consultada: Definição de refatoração e catálogo Extract Function
Preservar comportamento observável é o foco; a escolha de proteção por testes depende do contexto, não de uma categoria única obrigatória.
Consulta parcial à definição e ao exemplo de extração de função.
Consultar a fonte oficialMDN Web Docs. Documentação web.
Seção consultada: Grammar and types Control flow and error handling Functions e módulos de primeira página
Referência técnica para conceitos da linguagem e separação entre estrutura apresentação e interação. Não é curso integral reproduzido do MDN.
Consulta parcial a sintaxe tipos controle funções e introdução web. Exemplos do livro são originais.
Consultar a fonte oficialNode.js Project. Linha 24 documentação web consultada em 2026.
Seção consultada: Test runner Running tests from the command line HTTP createServer e Server.listen
Apoia execução dos módulos testes HTTP e arquivos. A versão efetivamente usada está registrada no pacote, sem prometer igualdade em todo sistema operacional.
Consulta parcial às APIs utilizadas. Teste local realizado com Node v24.22.1; a página latest pode avançar para outra correção da linha 24.
Consultar a fonte oficial