Pular para o conteúdo principal

Questão de Engenharia de Software — Geral — INSTITUTO AOCP 2025

Engenharia de SoftwareGeral
Código
qa700025
Banca
INSTITUTO AOCP
Órgão
TRE TO
Ano
2025
Cargo
TJ
Ana e Ricardo são técnicos judiciários do TRE-TO especialistas em programação de sistemas e estão utilizando a abordagem de programação em pares para implementar um novo sistema de gestão de processos eleitorais. Durante o desenvolvimento, Ana assume a função de revisar continuamente o código escrito, identificar possíveis melhorias e sugerir ajustes para garantir que a solução siga boas práticas e padrões de qualidade. Essa abordagem tem como objetivo aprimorar a qualidade do código e reduzir erros durante o desenvolvimento. Com base no exposto, assinale a alternativa que apresenta corretamente o papel desempenhado por Ana.
  1. ADriver.
  2. BNavigator.
  3. CWatcher.
  4. DCompiler.
  5. ETyper.
Revelar gabarito e comentário

GabaritoB — Navigator.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Programação em Pares: papéis de Driver e Navigator

Gabarito: letra B. Ana desempenha o papel de Navigator (navegador), pois é ela quem revisa continuamente o código escrito, identifica possíveis melhorias e sugere ajustes, enquanto o Driver (piloto) é quem digita o código. Essa é a divisão clássica da técnica de programação em pares, uma prática do Extreme Programming (XP) e de outras metodologias ágeis.

A programação em pares (pair programming) é uma técnica de desenvolvimento de software em que dois programadores trabalham juntos em uma única estação de trabalho. Enquanto um digita o código, o outro revisa cada linha, pensa estrategicamente e antecipa problemas. Essa abordagem visa melhorar a qualidade do código, reduzir erros e promover a troca de conhecimento entre os membros da equipe.

Os dois papéis são complementares e podem ser alternados entre os programadores:

  • Driver (piloto): é o responsável por digitar o código, focando na implementação imediata da tarefa. Ele se concentra nos detalhes de sintaxe, na lógica do trecho que está escrevendo e na execução das instruções.

  • Navigator (navegador): é o observador ativo, que revisa o código enquanto ele é escrito. Ele pensa no panorama geral, identifica possíveis erros, sugere melhorias, verifica se o código segue as boas práticas e padrões de qualidade, e antecipa problemas futuros.

No enunciado, Ana "revisa continuamente o código escrito, identifica possíveis melhorias e sugere ajustes" — exatamente a função do Navigator. Ricardo, por sua vez, seria o Driver, digitando o código. Essa distinção é fundamental para entender a dinâmica da programação em pares e é um tema recorrente em provas de Engenharia de Software.

A programação em pares é uma prática do XP (Extreme Programming), uma metodologia ágil que valoriza a comunicação, a simplicidade, o feedback, a coragem e o respeito. No XP, os desenvolvedores trabalham em pares e têm propriedade coletiva do código, o que reforça a importância da colaboração e da revisão contínua.

PEGA ESSA DICA!

Para memorizar os papéis, lembre-se: Driver é quem dirige (digita), Navigator é quem navega (observa e orienta). Na prova, se a questão descreve alguém revisando, sugerindo melhorias e pensando no panorama geral, é o Navigator; se descreve alguém digitando o código, é o Driver.

Programação em pares
  • 1Driver (piloto)
    • Digita o código
    • Foco na implementação imediata
  • 2Navigator (navegador)
    • Revisa o código
    • Sugere melhorias
    • Pensa no panorama geral
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

O Driver é o papel de quem digita o código, focando na implementação imediata. Ana não está digitando, mas revisando e sugerindo ajustes, o que é a função do Navigator. A banca tenta confundir o candidato invertendo os papéis.

Alternativa B — ✅ Correta ⟵ GABARITO

O Navigator é o papel de quem revisa continuamente o código, identifica melhorias e sugere ajustes, exatamente o que Ana faz no enunciado. Ele pensa no panorama geral e antecipa problemas, garantindo que o código siga boas práticas e padrões de qualidade.

Alternativa C — ❌ Incorreta

Watcher não é um papel da programação em pares. Os papéis são Driver e Navigator. Watcher pode ser um termo usado em outros contextos, mas não se aplica aqui.

Alternativa D — ❌ Incorreta

Compiler é o programa que traduz o código-fonte para código de máquina, não um papel humano na programação em pares. A banca tenta confundir com termos técnicos de programação.

Alternativa E — ❌ Incorreta

Typer não é um papel da programação em pares. É um termo genérico para quem digita, mas não é o termo técnico usado na técnica. O termo correto para quem digita é Driver.

Gabarito: letra B — Ana é a Navigator, pois revisa e sugere melhorias, enquanto o Driver digita o código.

Link permanente: /questoes/qa700025