Pular para o conteúdo principal

Questão de Engenharia de Software — Teste de Software — FCC 2017

Engenharia de SoftwareTeste de Software
Código
fc040122
Banca
FCC
Órgão
TST
Ano
2017
Nível
Superior
Cargo
Analista Judiciário – Análise de Sistemas
Durante a fase de teste de um software desenvolvido para um sistema em tempo real que usa memória compartilhada, um Analista de Sistemas verificou que, apesar de seus componentes já terem sido testados de modo individual e terem tido todos os erros corrigidos, ele não funcionava como deveria, de acordo com sua especificação. O Analista realizou, então, um teste de interface que conseguiu detectar o erro. O motivo era que o produtor e o consumidor de dados estavam operando em velocidades diferentes e o consumidor estava acessando informação desatualizada, pois o produtor da informação não atualizava as informações da interface compartilhada.Na Engenharia de Software, o tipo de teste de interface e o erro detectado são denominados, correta e respectivamente, interface de
  1. Apassagem de mensagem e erro de timing.
  2. Bpassagem de mensagem e erro de mau uso de interface.
  3. Ccomponente e erro de procedimento.
  4. Dmemória compartilhada e erro de procedimento.
  5. Ede timing e erro de parâmetro.
Revelar gabarito e comentário

GabaritoA — passagem de mensagem e erro de timing.

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”.

Teste de Interface – Erro de Timing

Gabarito: letra A. No cenário descrito, o teste de interface detectou um erro em que produtor e consumidor operam em velocidades diferentes, resultando em acesso a dados desatualizados – problema clássico de sincronização temporal. Na Engenharia de Software, esse tipo de teste é denominado teste de interface por passagem de mensagem (a interface entre os componentes ocorre via troca de mensagens) e o erro é classificado como erro de timing. As demais alternativas não se encaixam, pois o erro não é de mau uso de interface, procedimento ou parâmetro isolado.

Teste de interface
  • 1Tipos
    • Passagem de mensagem
    • Componente
    • Memória compartilhada
  • 2Erros detectados
    • Timing (sincronização)
    • Mau uso de interface
    • Procedimento
    • Parâmetro
LEVEL · soulevel.com.br

Alternativa A — ✅ Correta ⟵ GABARITO

O teste de interface por passagem de mensagem é aplicado quando componentes se comunicam via troca de mensagens (ex.: filas, pipes, buffers). O erro relatado – consumidor lê informação desatualizada por diferença de velocidade – é um erro de timing, típico em sistemas concorrentes ou de tempo real. A banca explorou exatamente essa relação: o produtor não atualiza a interface compartilhada a tempo, causando dessincronização.

Alternativa B — ❌ Incorreta

Embora a interface possa ser de passagem de mensagem, o erro não é de mau uso de interface (que ocorreria, por exemplo, por chamar uma função com parâmetros incorretos ou fora da ordem esperada). O problema é temporal, não de uso incorreto da interface.

Alternativa C — ❌ Incorreta

Teste de interface de componente refere-se a testes de comunicação entre componentes (por exemplo, por chamadas de procedimento). O erro detectado não é de procedimento (como sequência errada de passos), mas sim de sincronização temporal.

Alternativa D — ❌ Incorreta

O enunciado menciona memória compartilhada, mas o teste de interface realizado não é classificado como “interface de memória compartilhada” – o padrão de teste de interface mais adequado ao cenário (produtor-consumidor com velocidades distintas) é o de passagem de mensagem. Além disso, o erro não é de procedimento.

Alternativa E — ❌ Incorreta

Não existe “teste de interface de timing” como categoria; o timing é o tipo de erro, não o tipo de interface. O erro de parâmetro seria, por exemplo, passar um valor inválido – o que não ocorre aqui.

PEGA ESSA DICA!

Em questões sobre teste de interface em sistemas concorrentes, lembre-se da tríade: passagem de mensagemtiming (quando há diferença de velocidade) e memória compartilhadaerro de sincronização (como condição de corrida). A FCC costuma associar o erro ao tipo de interface.

Link permanente: /questoes/fc040122