Douglas, o arquiteto de software da Assessoria de Tecnologia...

Próximas questões
Com base no mesmo assunto
Q3874341 Arquitetura de Software
Douglas, o arquiteto de software da Assessoria de Tecnologia e Inovação de um órgão público, está projetando o NAVER, um novo sistema de software a ser utilizado por vários órgãos vinculados. Douglas deve tomar uma série de decisões estruturais que afetam o NAVER e seu processo de desenvolvimento.
Ao considerar os requisitos não funcionais já identificados para o NAVER, Douglas optou por utilizar a arquitetura cliente-servidor, visto que tal arquitetura:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: D

Fundamento decisivo: O ponto decisivo era comparar a definição de cliente-servidor com as demais arquiteturas citadas: a alternativa correta é a que trata do modelo lógico de serviços em servidores e clientes, sem confundir essa característica com separação de apresentação e dados, repositório central ou exigências de autenticação.

Tema central: Arquitetura cliente-servidor
Análise das alternativas
A
Errada
Está errada porque transforma identificação/autenticação em requisito estrutural da arquitetura. Na base, reconhecimento da identidade entre cliente e servidor pode existir por exigência de segurança, mas não é elemento definidor do padrão cliente-servidor.
B
Errada
Está errada porque a descrição apresentada não caracteriza cliente-servidor. Construção de novos recursos sobre sistemas existentes, com desenvolvimento espalhado por várias equipes, aponta para decomposição modular, em camadas ou componentes, e não para o critério distintivo de cliente-servidor.
C
Errada
Está errada porque descreve separação entre apresentação/interação e dados. Segundo a base, isso remete a MVC ou organização em camadas da interface, não à definição de arquitetura cliente-servidor.
D
Certa
A alternativa D está certa porque descreve o critério próprio da arquitetura cliente-servidor: um modelo lógico em que servidores oferecem serviços e clientes os consomem, normalmente em sistemas distribuídos. A base também destaca que essa separação entre cliente e servidor não depende, necessariamente, de computadores físicos distintos; ela pode existir logicamente mesmo quando a implementação roda em um único computador.
E
Errada
Está errada porque define um repositório central compartilhado por componentes. Esse traço caracteriza arquitetura de repositório, não cliente-servidor.
Pegadinha da questão
Confundir cliente-servidor com separação entre apresentação e dados, repositório central ou autenticação entre as partes.
Dica para questões semelhantes
  • Identifique cliente-servidor pelo papel lógico de clientes consumindo serviços de servidores, e não por mecanismos de autenticação ou pela existência de banco de dados.
  • Se a alternativa falar em separação entre apresentação e dados, a tendência é outro padrão, como MVC ou camadas, e não cliente-servidor.
  • Se a descrição central for repositório único acessível por vários componentes, o padrão apontado é repositório, não cliente-servidor.
  • Não trate distribuição física como requisito absoluto: em cliente-servidor, a separação pode ser lógica mesmo em uma única máquina.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Gabarito: D

Vamos analisar as alternativas sobre arquitetura cliente-servidor.

A arquitetura cliente-servidor é um modelo de computação distribuída onde clientes solicitam serviços e servidores fornecem serviços. Geralmente, é usada em sistemas distribuídos, mas pode ser implementada em um único computador (ex: localhost).

Alternativas:

A: "requer que clientes conheçam a identidade dos servidores e que os servidores reconheçam a identidade dos clientes que estão acessando seus serviços" - Isso não é uma característica essencial. Clientes precisam conhecer o servidor (endereço), mas servidores não precisam necessariamente reconhecer a identidade dos clientes (pode ser anônimo). Nem sempre requer autenticação mútua.

B: "é usada na construção de novos recursos em cima de sistemas existentes, usualmente quando o desenvolvimento está espalhado por várias equipes" - Isso parece mais relacionado a arquitetura de plugins ou microsserviços, não especificamente cliente-servidor.

C: "separa a apresentação e a interação dos dados do sistema, sendo útil quando são desconhecidos os futuros requisitos de interação e apresentação de dados" - Isso descreve arquitetura em camadas (como MVC), não especificamente cliente-servidor. Cliente-servidor pode separar apresentação (cliente) e dados (servidor), mas não é a definição principal.

D: "é normalmente considerada para sistemas distribuídos, e o modelo lógico de serviços que rodam em servidores separados pode ser implementado em um único computador" - Isso é verdade. Arquitetura cliente-servidor é para sistemas distribuídos, mas pode ser implementada localmente para teste ou simulação. É uma característica correta.

E: "é adequada para aplicações nas quais os dados são gerados por um componente e usados por outro, já que esses dados são gerenciados em um repositório central, acessível a todos os componentes do sistema" - Isso descreve arquitetura baseada em repositório (como blackboard), não cliente-servidor. No cliente-servidor, os dados podem ser centralizados no servidor, mas a descrição é mais genérica.

Portanto, a alternativa D é a mais precisa e comum sobre arquitetura cliente-servidor.

Resposta: D

Fonte: DeepSeek

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo