O blecaute que interrompeu o funcionamento de um centro comunitário levou os responsáveis a organizar o…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Aplicar a estratégia de decomposição para resolver problemas complexos, dividindo esse problema em partes menores, resolvendo-as e combinando suas soluções.
Fonte: Base Nacional Comum Curricular (MEC).Questão
O blecaute que interrompeu o funcionamento de um centro comunitário levou os responsáveis a organizar o empréstimo de carregadores portáteis para moradores. Cada aparelho recebeu uma etiqueta numérica. O programa a ser criado precisa registrar os equipamentos disponíveis, receber pedidos, impedir que um mesmo carregador seja entregue duas vezes, atualizar sua situação quando for devolvido e avisar quem aguarda na fila. Na primeira tentativa, todas essas ações foram anotadas em uma única tela, e mudanças feitas durante as devoluções deixaram pedidos antigos sem resposta. Os responsáveis decidiram planejar o programa antes de escrevê-lo, para que partes diferentes pudessem ser verificadas e depois funcionassem juntas. Identifique a organização do desenvolvimento que divide as demandas descritas em partes solucionáveis e permite reuni-las no funcionamento do programa.
- A) Separar o programa em cadastros, pedidos, devoluções e avisos, integrando-os pelo código de cada equipamento.
- B) Separar os dados em listas isoladas, impedindo que pedidos consultem as informações de devolução.
- C) Separar o trabalho entre pessoas, sem definir entradas, saídas ou ligação entre as partes produzidas.
- D) Separar as tarefas por turno, repetindo em cada parte todos os registros e regras de empréstimo.
- E) Separar a tela em quatro páginas, mantendo em cada página o controle completo do sistema.
✅ Resposta correta: alternativa A
Resolução passo a passo
- O enunciado descreve um problema de desenvolvimento de software que foi mal resolvido porque tudo ficou em uma única tela. A solução pedida é a decomposição (ou modularização): dividir as demandas em partes menores e solucionáveis, que podem ser verificadas separadamente e depois integradas.
- Ao identificar as funções necessárias (registrar equipamentos, receber pedidos, impedir entrega duplicada, atualizar devoluções e avisar a fila), percebemos que elas formam quatro blocos naturais: cadastros, pedidos, devoluções e avisos. A alternativa A propõe exatamente essa divisão, com a integração feita por um elemento comum, o código de cada equipamento, que liga as partes sem duplicar informações.
- Por que as outras estão erradas:
- B) Isolar as listas e impedir que pedidos consultem devoluções é justamente o oposto do que o programa precisa, pois impedir a entrega dupla exige essa consulta.
- C) Dividir o trabalho entre pessoas sem definir entradas, saídas ou ligações não gera partes que possam ser reunidas no funcionamento do programa.
- D) Repetir registros e regras em cada parte cria duplicação e inconsistência, justamente o tipo de problema que motivou o planejamento.
- E) Separar a tela em páginas que mantêm o controle completo do sistema não divide as responsabilidades; cada parte continua fazendo tudo.
- Conclusão: a alternativa A é a única que descreve uma decomposição com responsabilidades distintas e integração definida, resolvendo o gabarito oficial.
💡 Dica: Pense em como dividir o programa em partes menores e integrá-las.
Alternativa por alternativa
A divisão por funções permite resolver cada necessidade separadamente e combinar os resultados pelo identificador comum. Trata-se de decomposição funcional.
O aluno entende que separar os dados em partes isoladas facilita o controle, sem perceber que o programa precisa cruzar informações entre pedidos e devoluções.
O aluno confunde divisão de trabalho entre pessoas com decomposição do sistema, acreditando que basta distribuir tarefas para que as partes se encaixem depois.
O aluno associa a divisão por turno à divisão do programa e imagina que repetir os registros em cada parte mantém tudo funcionando, ignorando o risco de inconsistência.
O aluno acredita que separar a interface em páginas já organiza o sistema, mas mantém em cada uma o controle completo, sem dividir as responsabilidades.
Raio-X da questão
modularizacao e organizacao de programas
diagnostico
conceitos basicos de programacao · estrutura de dados simples
Estude modularizacao e organizacao de programas em computacao.
Confundir organizacao modular com programacao linear, nao dividir o problema em partes.
ciencia_tecnologia
pensamento_critico
cotidiano
Questões parecidas com resolução
- Lia vai arrumar a mochila para a escola. Como ela pode dividir essa tarefa em partes pequenas?
- Uma turma vai criar um aplicativo para organizar tarefas escolares. O grupo percebeu que tentar fazer tudo de uma vez…
- Em um projeto de programação, a turma precisa criar uma solução para várias turmas da escola, com a mesma lógica, mas…
- Uma família quer organizar as despesas do mês em um aplicativo escolar. O processo envolve somar gastos, separar por…
- Ao testar um programa de cadastro, os alunos perceberam que o erro estava apenas na parte que validava o nome do…
- Um aplicativo para organizar estudos precisa guardar tarefas, definir prazos e avisar quando algo estiver atrasado. A…
🔎 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
