GeraProva GeraProva Provas com IA para professores do Brasil
Computação3ª sérieBNCC EM13CO04Média⏱ medio

— A cada formulário novo, precisaríamos escrever testes do zero? — perguntou uma atendente do serviço digital…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EM13CO04

Reconhecer o conceito de metaprogramação como uma forma de generalização na construção de programas, permitindo que algoritmos sejam entrada ou saída para outros algoritmos.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

— A cada formulário novo, precisaríamos escrever testes do zero? — perguntou uma atendente do serviço digital de uma prefeitura. Para reduzir esse trabalho, os analistas passaram a registrar, em uma tabela estruturada, as regras de cada formulário: campos obrigatórios, formatos aceitos e relações entre respostas. Um software lê essa tabela e constrói, para cada serviço, um roteiro com instruções de teste, como preencher campos com dados válidos e inválidos e conferir as mensagens esperadas. A equipe recebe os roteiros gerados e os executa antes de publicar o formulário. Quando uma regra é alterada na tabela, o software produz um novo roteiro, sem que seja necessário reescrever seu funcionamento interno. Analise o funcionamento descrito e identifique a característica que evidencia a generalização de programas adotada pelo serviço.

  1. A) Tratar as regras do formulário como dados para gerar procedimentos de teste.
  2. B) Tratar as regras do formulário como mensagens prontas para exibir durante o preenchimento.
  3. C) Tratar as regras do formulário como instruções para enviar cadastros reais automaticamente.
  4. D) Tratar as regras do formulário como registros para arquivar versões sem criar procedimentos.
  5. E) Tratar as regras do formulário como valores para repetir um procedimento fixo em todos os serviços.

✅ Resposta correta: alternativa A

Resolução passo a passo

  1. O enunciado descreve um software que lê uma tabela com as regras de cada formulário (campos obrigatórios, formatos aceitos, relações entre respostas) e, a partir dela, gera roteiros de teste. Ou seja, as regras são tratadas como dados de entrada, e não como parte fixa do código.
  2. A característica que evidencia a generalização é justamente essa separação: o programa é um procedimento geral que produz testes específicos para cada serviço, conforme os dados recebidos. Quando uma regra muda na tabela, o software gera um novo roteiro sem reescrever seu funcionamento interno, o que comprova que o mesmo procedimento serve a casos diferentes.
  3. Por que as outras estão erradas:
  4. B) As regras não são transformadas em mensagens prontas para exibir; o software gera instruções de teste, e as mensagens são apenas conferidas.
  5. C) O software não envia cadastros reais; ele gera roteiros de teste que a equipe executa manualmente antes da publicação.
  6. D) Não há arquivamento de versões como finalidade central; o ponto é a geração de procedimentos de teste.
  7. E) Não se trata de repetir um procedimento fixo; o procedimento é geral e varia conforme os dados de cada formulário, o que é o oposto de um procedimento fixo.
  8. Conclusão: o gabarito A está correto, pois a alternativa descreve exatamente a generalização pela separação entre dados (regras) e procedimento (gerador de testes).

💡 Dica: Identifique como a tabela estruturada permite reutilização e adaptação do software.

Alternativa por alternativa

A Correta

O software recebe uma descrição estruturada e produz roteiros de teste, ou seja, procedimentos que orientam outra execução.

B Erradaerro: Interpretação

O aluno pode ter associado a tabela de regras à exibição de mensagens ao usuário durante o preenchimento, confundindo a conferência de mensagens esperadas com a sua produção.

C Erradaerro: Interpretação

O aluno pode ter entendido que o software age sobre cadastros reais, quando o texto diz que os roteiros são executados pela equipe antes da publicação, com dados de teste.

D Erradaerro: Conceitual

O aluno pode ter focado na ideia de registrar e guardar as regras em tabela estruturada, ignorando que o objetivo central é gerar procedimentos de teste a partir delas.

E Erradaerro: Conceitual

O aluno pode ter pensado que, por o software ser único para todos os serviços, ele repete um mesmo procedimento fixo, sem perceber que o procedimento se adapta aos dados de cada formulário.

Raio-X da questão

Dificuldade Média
Bloom Lembrar
Leitura medio
Discriminação medio
Peso pedagógico medio
Autonomia do enunciado completo
Cobertura da habilidade unica
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 progressao
🎯 Conceito central

generalização de programas

📌 Objetivo

diagnostico

🧱 Pré-requisitos

conceitos básicos de programação · estrutura de dados

📚 Reveja

Estude conceitos de generalização e reutilização em programação.

⚠️ Erro mais comum

Confundir generalização com simples reutilização sem adaptação ou não entender o papel da tabela estruturada.

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cotidiano

Questões parecidas com resolução

Todas as questões de [CONFERIR] Construir soluções baseadas no uso de algoritmos e conceitos da Computação para resolver problemas, avaliando suas qualidades e melhorando-as.

🔎 Resolver outra questão

Cole o enunciado e veja a resolução passo a passo, a alternativa correta e por que as outras estão erradas.

Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.