Questões de Arquitetura em camadas (Arquitetura de Software)

Limpar Busca

A arquitetura em camadas é um padrão de arquitetura de software amplamente utilizado para estruturar sistemas complexos de forma organizada e modular. Esse modelo divide a aplicação em camadas lógicas, cada uma com responsabilidades específicas, promovendo separação de responsabilidades, maior manutenção e escalabilidade do sistema. Da perspectiva de fluxo de dados, para que uma arquitetura esteja em conformidade com o padrão, preservando a manutenibilidade e portabilidade, a invocação de funcionalidades só deve acontecer das camadas

  • A superiores para as camadas inferiores.
  • B inferiores para as camadas superiores.
  • C superiores para as camadas inferiores, ou vice-versa.
  • D do meio para as pontas.
  • E das pontas para o meio.

Em relação às arquiteturas hexagonal e de microsserviços, considere as seguintes afirmações:

I. A arquitetura hexagonal, também chamada de Arquitetura de Portas e Adaptadores, visa separar a lógica de negócios das interfaces externas, permitindo uma fácil troca de implementações.
II. Microsserviços são pequenos serviços que compartilham o mesmo banco de dados, promovendo maior acoplamento entre os módulos da aplicação para garantir a consistência dos dados.
III. A arquitetura monolítica pode ser distribuída, mas requer que todos os módulos sejam implantados como um conjunto, ao contrário dos microsserviços, que permitem a implantação independente de cada módulo.

Está correto o que se afirma em

  • A I, apenas.
  • B II, apenas.
  • C III, apenas.
  • D I e II, apenas.
  • E I e III, apenas.

Na arquitetura em camadas, as regras de negócio devem ser implementadas nas camadas de apresentação e de lógica de negócio.

  • Certo
  • Errado

A analista Raquel foi designada para refatorar o código de um sistema à luz da Arquitetura Limpa. Raquel iniciou a tarefa assimilando os princípios de design utilizados pela arquitetura. A analista seguiu determinando a camada apropriada da Arquitetura Limpa para cada módulo do sistema. Logo após, Raquel revisou a implementação dos módulos A e B, que encapsulam regras de negócio específicas à aplicação. A analista removeu as referências diretas aos módulos A e B no código da camada interior adjacente, aplicando o princípio de design que garante a não violação da Regra da Dependência ao longo das camadas, durante o fluxo de controle.

Raquel removeu as referências diretas aos módulos A e B da camada de:

  • A entidades, aplicando a segregação de interface;
  • B entidades, aplicando a inversão de dependência;
  • C casos de uso, aplicando a segregação de interface;
  • D adaptadores, aplicando a segregação de interface;
  • E adaptadores, aplicando a inversão de dependência.

Com relação à arquitetura de software em camadas, avalie se as afirmativas a seguir são verdadeiras (V) ou falsas (F).

(   ) A arquitetura de software em camadas é uma arquitetura que divide o software em camadas, cada uma com uma responsabilidade específica. 
(   ) A arquitetura de software em camadas é uma arquitetura que facilita a manutenção e evolução do software, pois cada camada pode ser desenvolvida e mantida independentemente das outras camadas.
(   ) A arquitetura de software em camadas é uma arquitetura que é sempre a melhor escolha para qualquer tipo de software.

As afirmativas são, respectivamente,

  • A V – F – F.
  • B V – V – F.
  • C F – V – F.
  • D F – V – V.
  • E F – F – V.