Questão nº 51

Questão de Engenharia de Software · FCC TST 2017 (nº 51)

FCC2017Analista Judiciário - Análise de SistemasEngenharia de Software
Gabarito: Aver comentário ↓

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

Resposta comentada

Gabarito Alternativa A

Um teste de interface verifica se diferentes partes de um software (componentes) conseguem se comunicar e trocar informações corretamente, mesmo que cada parte individualmente funcione bem. Um erro de timing (ou temporização) acontece quando a ordem ou a velocidade com que essas partes interagem causa problemas, como uma parte lendo dados antes que a outra tenha terminado de escrevê-los, resultando em informações desatualizadas.

  • (A) Correta: O tipo de interface pode ser classificado como passagem de mensagem porque, embora use memória compartilhada, a interação é de um produtor que "envia" dados e um consumidor que os "recebe", caracterizando uma troca de informações. O erro é claramente de timing (temporização), pois o problema surgiu da diferença de velocidade entre produtor e consumidor, levando ao acesso de dados desatualizados.
  • (B) Incorreta: Embora possa haver um "mau uso" no sentido de falta de sincronização, "erro de timing" é uma descrição muito mais específica e precisa para o problema de velocidades diferentes e dados desatualizados.
  • (C) Incorreta: "Componente" refere-se ao teste de unidades individuais, e o problema aqui é na interação entre eles. "Erro de procedimento" é genérico e não descreve a natureza temporal do problema.
  • (D) Incorreta: Esta é a alternativa mais tentadora. Embora o sistema use "memória compartilhada", essa é a tecnologia ou mecanismo de IPC (Comunicação Inter-Processos), não a classificação padrão para o tipo de interface em testes, que foca mais no paradigma de interação (como passagem de mensagem ou chamada remota). "Erro de procedimento" é menos específico que "erro de timing". A armadilha é confundir o mecanismo de implementação com o tipo de interface testada e a generalidade do erro.
  • (E) Incorreta: "De timing" descreve o erro, não o tipo de interface. "Erro de parâmetro" seria passar valores incorretos em uma chamada, o que não é o caso descrito.

Fonte: FCC TST 2017 Analista Judiciário - Análise de Sistemas (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho