Dados ilustrativos: um grupo de voluntários criou requisitos para um app de reserva de quadras em espaço…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Explorar e construir a solução de problemas por meio de refinamentos, utilizando diversos níveis de abstração desde a especificação até a implementação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Dados ilustrativos: um grupo de voluntários criou requisitos para um app de reserva de quadras em espaço comunitário. Primeiro especificaram: “o usuário informa data, hora e modalidade esportiva para reservar”. Depois definiram módulos: Autenticação, Disponibilidade, Reserva e Notificação. Em seguida detalharam funções: autenticarUsuario(), checarDisponibilidade(), registrarReserva(), enviarConfirmacao(). Para implementar, devem refinar os requisitos em pseudocódigo que traduza cada nível de abstração. Com base no texto-base, construa o refinamento em pseudocódigo que transita corretamente da especificação até a implementação.
- A) Descrever fluxograma completo de interface grafica sem detalhar chamadas de funcao ou estrutura de codigo
- B) Escrever diretamente linhas SQL de insercao em tabela de reservas sem passar pela camada de autenticacao
- C) Definir funcao principal que chama autenticarUsuario(), checa disponibilidade, registra reserva e envia confirmacao
- D) Iniciar declarando variaveis data, hora e esporte seguidas de loop infinito sem modularizacao
- E) Listar apenas os nomes das funções sem mostrar como elas se relacionam ou são chamadas
✅ Resposta correta: alternativa C
Resolução passo a passo
- Resolvi a questão sem olhar o gabarito. O enunciado pede um refinamento em pseudocódigo que vá da especificação (o usuário informa data, hora e modalidade) até a implementação, passando pelos módulos (Autenticação, Disponibilidade, Reserva, Notificação) e pelas funções detalhadas. Ou seja, o pseudocódigo deve reconhecer cada nível de abstração e conectá-los em uma sequência coerente.
- A alternativa C atende exatamente a isso. Ela define uma função principal que chama, em ordem lógica, autenticarUsuario(), a checagem de disponibilidade, o registro da reserva e o envio da confirmação. Isso traduz a especificação em um fluxo executável, mantendo a correspondência com os módulos e funções já definidos no texto-base.
- As demais alternativas estão erradas: A descreve uma interface gráfica, que não é pseudocódigo nem traz chamadas de função; B pula a autenticação, quebrando o requisito de que o usuário seja identificado antes de reservar; D usa um loop infinito sem modularização, contrário ao refinamento por módulos; E lista apenas os nomes das funções, sem mostrar a relação entre elas, o que não constitui refinamento.
- Conclusão: a alternativa C é a única que mantém a sequência da especificação, respeita a modularização e produz uma implementação coerente, por isso confirmo o gabarito oficial.
💡 Dica: Analise a sequência lógica das funções para montar o pseudocódigo correto.
Alternativa por alternativa
Acredita que refinar requisitos significa desenhar a interface visual do aplicativo, confundindo levantamento de interface com pseudocódigo.
Pensa que a reserva pode ser gravada diretamente no banco, ignorando que o requisito exige identificação do usuário antes da operação.
Por que engana: Escolher alternativas que ignoram a modularização ou a sequência lógica das funções no pseudocódigo.
Refina do requisito geral ao pseudocódigo, usando módulos e funções conforme níveis de abstração descritos.
Entende que começar pelas variáveis e por um loop basta para implementar, sem perceber que o texto-base pede estrutura modular com funções separadas por módulo.
Acha que listar os nomes das funções já constitui o refinamento, sem compreender que é preciso mostrar a ordem de chamada e a relação entre elas.
Raio-X da questão
refinamento de requisitos em pseudocódigo
avaliacao
conceitos básicos de programação · estrutura de funções e modularização
estude como transformar requisitos em pseudocódigo modular
Escolher alternativas que ignoram a modularização ou a sequência lógica das funções no pseudocódigo.
ciencia_tecnologia
pensamento_critico
cotidiano
Questões parecidas com resolução
- Em um projeto de monitoramento de rios, uma boia computacional organiza leituras de sensores antes de enviá-las por…
- Uma biblioteca escolar recebeu caixas de livros doados para uma feira de troca. Para registrar os exemplares, a equipe…
- Um centro cultural público oferece inscrições on-line para atividades com critérios variados. Na oficina de teatro…
- Uma escola está testando dois protótipos de aplicativo para que estudantes consultem mudanças de sala, horários e…
- Uma secretaria municipal de educação está digitalizando pedidos de transporte escolar e de atendimento em contraturno…
- — O cartaz não pode sair duas vezes, pois a feira começa em uma hora — alertou a coordenadora do centro cultural. No…
🔎 Procurar outra questão
Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
