Pular para o conteúdo principal

Questão de Engenharia de Software — Conceitos e Tipos de Testes de Software — CESPE / CEBRASPE 2024

Engenharia de SoftwareConceitos e Tipos de Testes de Software
Código
ce403866
Banca
CESPE / CEBRASPE
Órgão
MPO
Ano
2024
Cargo
APO ( )
Julgue o item a seguir, relativos ao teste de estresse, a testes automatizados e à resiliência de aplicações.   O uso de cache e a implementação de mecanismos de fallback são estratégias importantes para aumentar a resiliência de uma aplicação.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

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

Resiliência de aplicações: cache e fallback

Gabarito: Certo (C). O uso de cache e a implementação de mecanismos de fallback são, de fato, estratégias importantes para aumentar a resiliência de uma aplicação, pois permitem que o sistema continue operando de forma degradada ou com dados previamente armazenados quando ocorrem falhas em serviços externos ou indisponibilidade de recursos. Essa é uma prática consolidada em engenharia de software, especialmente em arquiteturas distribuídas e de microsserviços.

A resiliência de uma aplicação é a capacidade de ela se recuperar de falhas e continuar funcionando, mesmo que de forma reduzida, sem interromper completamente o serviço. O cache contribui ao armazenar respostas ou dados frequentemente acessados, reduzindo a dependência de chamadas a serviços externos e melhorando o desempenho. O fallback, por sua vez, é um mecanismo que define um plano alternativo quando a operação principal falha, como usar um serviço secundário, retornar dados de um cache ou apresentar uma mensagem amigável ao usuário. Juntas, essas estratégias formam a base de padrões de resiliência como o Circuit Breaker e o Bulkhead, amplamente adotados em sistemas modernos.

Na prática, imagine um sistema de e-commerce que depende de um gateway de pagamento externo. Se esse gateway ficar indisponível, um mecanismo de fallback pode redirecionar o usuário para um ambiente de pagamento alternativo ou permitir que ele finalize a compra com pagamento na entrega. O cache, por sua vez, pode armazenar informações de produtos e preços, evitando que a página de catálogo fique inacessível quando o banco de dados principal estiver sobrecarregado. Essas estratégias não eliminam a falha, mas reduzem o impacto dela no usuário final, aumentando a disponibilidade percebida do sistema.

A banca explora aqui um conceito fundamental de arquitetura de software, e a afirmativa está alinhada com as boas práticas de engenharia. Não há pegadinha sutil: a frase é direta e correta. O candidato que conhece os padrões de resiliência reconhece imediatamente a validade da afirmação. Portanto, a resposta é Certo.

Estratégia

Papel na Resiliência

Exemplo Prático

Cache

Armazena dados/respostas previamente obtidos, reduzindo dependência de serviços externos e mantendo o sistema operante mesmo com falhas ou sobrecarga.

Página de catálogo continua acessível com preços salvos quando o banco de dados principal está indisponível.

Fallback

Define um plano alternativo (serviço secundário, dados em cache, mensagem amigável) quando a operação principal falha, garantindo continuidade do serviço.

Redirecionamento para gateway de pagamento alternativo ou opção de pagamento na entrega quando o gateway principal falha.

Item — ✅ CERTO

A afirmativa está correta. O cache e o fallback são estratégias reconhecidas para aumentar a resiliência de uma aplicação. O cache melhora a disponibilidade e o desempenho ao reduzir a dependência de serviços externos, enquanto o fallback garante que, em caso de falha, haja um plano B para manter o sistema operando. Esses conceitos são amplamente discutidos em engenharia de software, especialmente em arquiteturas de microsserviços e sistemas distribuídos, e são fundamentais para garantir a continuidade do serviço.

Gabarito: Certo (C)

Link permanente: /questoes/ce403866