Skip to content

Depuração e Tratamento de ErrosAtividades e Estratégias de Ensino

Estudantes aprendem melhor depuração quando praticam de forma ativa e colaborativa, porque erros de programação não são apenas teóricos, exigem raciocínio prático. Ao trabalharem em pares ou grupos, os alunos confrontam diferentes perspetivas sobre o mesmo código, identificando mais erros e desenvolvendo estratégias de resolução mais robustas.

10° AnoPensamento Computacional e Literacia Digital Avançada4 atividades30 min50 min

Objetivos de Aprendizagem

  1. 1Identificar e classificar erros sintáticos e lógicos em trechos de código fornecidos.
  2. 2Demonstrar o uso de um depurador (debugger) para rastrear a execução de um programa e inspecionar o estado das variáveis.
  3. 3Explicar a relação entre um erro específico num sistema de software crítico (ex: controlo de tráfego aéreo) e as suas potenciais consequências.
  4. 4Comparar a eficácia de diferentes estratégias de depuração para resolver um determinado bug.
  5. 5Criar um conjunto de testes unitários para validar a correção de uma função ou módulo de software.

Pretende um plano de aula completo com estes objetivos? Gerar uma Missão

30 min·Pares

Par Programação: Caça aos Erros Sintáticos

Forme pares e forneça código com erros intencionais em Python ou JavaScript. Os alunos executam o código, identificam mensagens de erro e corrigem sintaxe passo a passo. Registem as correções num relatório partilhado.

Preparação e detalhes

Analise as causas comuns de erros de sintaxe e lógica em programas.

Sugestão de Facilitação: Durante a atividade 'Par Programação: Caça aos Erros Sintáticos', peça aos pares para trocarem de funções a cada 10 minutos, forçando-os a ler código escrito por outros e a explicar erros de forma detalhada.

Setup: Mesas de grupo com envelopes de desafios; opcionalmente, caixas com cadeado

Materials: Conjuntos de enigmas (4 a 6 por grupo), Caixas com código ou folhas de verificação, Cronómetro (projetado), Cartões de pista

RecordarAplicarAnalisarCompetências RelacionaisAutogestão
45 min·Pequenos grupos

Estações de Depuração: Erros Lógicos

Crie quatro estações com programas diferentes contendo erros lógicos. Grupos rotacionam a cada 10 minutos, usam depurador para inserir breakpoints, observam variáveis e propõem soluções. Discutem achados no final.

Preparação e detalhes

Avalie o impacto de um erro de software num sistema crítico da sociedade.

Sugestão de Facilitação: Nas estações de depuração, forneça aos alunos cartões com dicas de depuração (ex: 'Verifique valores de variáveis em ciclos') para guiar o processo sem dar respostas diretas.

Setup: Mesas de grupo com envelopes de desafios; opcionalmente, caixas com cadeado

Materials: Conjuntos de enigmas (4 a 6 por grupo), Caixas com código ou folhas de verificação, Cronómetro (projetado), Cartões de pista

RecordarAplicarAnalisarCompetências RelacionaisAutogestão
50 min·Individual

Desafio Individual: Depuração Crítica

Atribua um programa simulado de sistema crítico com erros mistos. Alunos depuram sozinhos usando ferramentas, testam outputs e escrevem relatório sobre impacto potencial. Partilham soluções em plenário.

Preparação e detalhes

Explique como o processo de depuração melhora a qualidade final do produto.

Sugestão de Facilitação: No 'Desafio Individual: Depuração Crítica', observe se os alunos conseguem justificar as suas correções com base em testes ou evidências, em vez de adivinhações.

Setup: Mesas de grupo com envelopes de desafios; opcionalmente, caixas com cadeado

Materials: Conjuntos de enigmas (4 a 6 por grupo), Caixas com código ou folhas de verificação, Cronómetro (projetado), Cartões de pista

RecordarAplicarAnalisarCompetências RelacionaisAutogestão
35 min·Pequenos grupos

Debate em Grupo: Impacto de Erros

Apresente casos reais de falhas de software. Grupos analisam causas, depuram código exemplo e debatem soluções preventivas. Votam na melhor estratégia coletiva.

Preparação e detalhes

Analise as causas comuns de erros de sintaxe e lógica em programas.

Sugestão de Facilitação: No debate em grupo, estabeleça tempo limite para cada intervenção (1 minuto) para garantir que todos participam e que as discussões são focadas em soluções.

Setup: Mesas de grupo com envelopes de desafios; opcionalmente, caixas com cadeado

Materials: Conjuntos de enigmas (4 a 6 por grupo), Caixas com código ou folhas de verificação, Cronómetro (projetado), Cartões de pista

RecordarAplicarAnalisarCompetências RelacionaisAutogestão

Ensinar Este Tópico

Ensinar depuração requer que os alunos desenvolvam hábitos mentais de questionamento sistemático, algo que não surge espontaneamente. Comece por modelar o processo em voz alta, mostrando como analisa um erro, questiona pressupostos e verifica hipóteses. Evite dar respostas imediatas; em vez disso, guie os alunos com perguntas como 'O que esperavas que acontecesse aqui?' ou 'Como podes confirmar essa hipótese?'. A investigação mostra que a prática guiada em pares é mais eficaz do que a correção individual, pois os alunos aprendem a articular os seus raciocínios e a receber feedback imediato.

O Que Esperar

No final destas atividades, os alunos deverão conseguir identificar erros sintáticos e lógicos com confiança, usar ferramentas de depuração de forma sistemática e explicar o processo de correção de forma clara e estruturada. Espera-se que comuniquem os erros encontrados, as causas e as soluções de modo a que colegas possam replicar os passos de correção.

Estas atividades são um ponto de partida. A missão completa é a experiência.

  • Guião completo de facilitação com falas do professor
  • Materiais imprimíveis para o aluno, prontos para a aula
  • Estratégias de diferenciação para cada tipo de aluno
Gerar uma Missão

Atenção a estes erros comuns

Erro comumDurante a atividade 'Par Programação: Caça aos Erros Sintáticos', alguns alunos podem pensar que erros sintáticos são sempre óbvios e fáceis de detetar.

O que ensinar em alternativa

Peça aos pares que troquem de código após identificarem um erro e que expliquem ao colega porque é que esse erro impede a execução. Isto obriga-os a verbalizar o raciocínio e revela que alguns erros (como missing colons ou parênteses) são mais subtis do que parecem.

Erro comumDurante as estações de depuração de erros lógicos, alunos podem assumir que a correção é imediata e não requer planeamento.

O que ensinar em alternativa

Peça aos grupos que desenhem um fluxograma do código antes de corrigir, destacando onde a lógica falha. Isto demonstra que a depuração sistemática reduz tentativas aleatórias e melhora a qualidade das soluções.

Erro comumNo 'Desafio Individual: Depuração Crítica', alguns alunos podem priorizar a correção de erros sintáticos em vez de lógicos, considerando-os mais graves.

O que ensinar em alternativa

Forneça um cenário com um erro lógico que cause consequências graves (ex: cálculo incorreto de doses de medicamento) e peça aos alunos para justificarem por que razão esse erro deve ser corrigido primeiro, usando testes para validar as suas soluções.

Ideias de Avaliação

Bilhete de Saída

Após a atividade 'Par Programação: Caça aos Erros Sintáticos', forneça um pequeno trecho de código com um erro lógico óbvio. Peça aos alunos para identificarem o erro, explicarem a causa e proporem uma correção. Em seguida, peça-lhes para descreverem um passo que dariam com um depurador para confirmar a sua correção.

Verificação Rápida

Durante as estações de depuração, circule pela sala e observe os alunos. Faça perguntas específicas como: 'Que valor esperava encontrar nesta variável?', 'Qual linha de código acha que está a causar este comportamento?', 'Que ferramenta de depuração está a usar para investigar isto?'.

Questão para Discussão

Após o 'Desafio Individual: Depuração Crítica', apresente um cenário hipotético: 'Um erro no software de um hospital causou a exibição incorreta de resultados de exames. Discutam em pequenos grupos: Que tipos de erros (sintático/lógico) poderiam ter levado a isto? Qual o impacto potencial para os pacientes e para a equipa médica? Como o processo de depuração poderia ter prevenido ou detetado este erro?'.

Extensões e Apoio

  • Challenge: Para alunos que terminam cedo, forneça um trecho de código com dois erros lógicos distintos e peça-lhes para documentar o processo de depuração num relatório curto, incluindo capturas de ecrã dos valores das variáveis em cada etapa.
  • Scaffolding: Para alunos com dificuldades, forneça uma lista de verificação com passos de depuração (ex: 'Verificar sintaxe', 'Testar com inputs conhecidos', 'Analisar fluxo lógico') e peça-lhes para preencherem à medida que avançam.
  • Deeper exploration: Proponha um desafio adicional onde os alunos devem criar um teste unitário para o código corrigido, garantindo que a solução não apenas funciona para o caso em estudo, mas também para outros cenários semelhantes.

Vocabulário-Chave

BugUm erro num programa de computador que causa um resultado inesperado ou incorreto.
Depuração (Debugging)O processo de encontrar e corrigir erros (bugs) num programa de computador.
Erro SintáticoUm erro que viola as regras gramaticais de uma linguagem de programação, impedindo a compilação ou interpretação do código.
Erro LógicoUm erro que permite a execução do programa, mas resulta num comportamento ou saída incorreta.
BreakpointUm ponto num programa onde a execução é temporariamente suspensa para permitir a inspeção do estado do programa.
Variável de Inspeção (Watch Variable)Uma funcionalidade de depuração que permite monitorizar o valor de uma variável específica durante a execução do programa.

Preparado para lecionar Depuração e Tratamento de Erros?

Gere uma missão completa com tudo o que precisa

Gerar uma Missão