Questões de Arquitetura de Software

Limpar Busca

No desenvolvimento de aplicações modernas, o uso de web services é fundamental para a comunicação entre diferentes sistemas de software. Uma das escolhas que um desenvolvedor deve fazer é entre REST e SOAP.


Considerando os padrões e práticas atuais, a afirmativa correta sobre REST e SOAP é:

  • A REST exige menos largura de banda e recursos, pois usa menos overhead de comunicação.
  • B REST suporta apenas o protocolo HTTP, enquanto SOAP pode usar outros protocolos, como SMTP e FTP.
  • C REST não é compatível com o formato JSON, favorecendo exclusivamente o uso de XML.
  • D REST é um protocolo mais antigo, por isso é mais compatível com sistemas legados.
  • E REST e SOAP têm o mesmo desempenho e eficiência em redes com alta latência.

Na usabilidade de software, a IHC tem como objetivo principal:

  • A Especificar o time de desenvolvimento do backend do sistema.
  • B Definir processos de desenvolvimento dentro de uma iteração do Scrum.
  • C Produzir sistemas utilizáveis e seguros, tornando-os funcionais.
  • D Garantir o uso da interface do sistema pelo time de desenvolvedores.
  • E Construir os atributos de cenário para interação com os atores.

Arquitetura de microsserviços é um estilo de arquitetura de software em que uma aplicação é dividida em uma série de serviços pequenos e independentes, cada um com uma função específica e executado de forma autônoma.
Assinale a opção que descreve corretamente um princípio fundamental da arquitetura de microsserviços.

  • A Cada microsserviço deve ter seu próprio banco de dados para garantir a independência e escalabilidade dos serviços.
  • B Todos os microsserviços devem compartilhar o mesmo banco de dados para garantir a consistência e facilitar a comunicação entre eles.
  • C Os microsserviços devem ser desenvolvidos e implantados como uma única unidade para garantir a consistência do sistema.
  • D Cada microsserviço deve ter uma dependência rígida em uma biblioteca de terceiros para garantir funcionalidades comuns em todos os serviços.
  • E Microsserviços devem ser implementados em uma arquitetura monolítica para facilitar a comunicação entre os serviços.

A arquitetura de software com 3 camadas combinada com o padrão de design MVC (Model-View-Controller) é uma abordagem comum para o desenvolvimento de aplicações que promove a separação de preocupações e a modularidade. Na arquitetura de software com 3 camadas combinada com o padrão de design MVC (Model-View-Controller), em relação à responsabilidade de cada camada é correto afirmar que a camada

  • A de visão (View) gerencia a lógica de negócios, a camada de controlador (Controller) realiza a persistência de dados, e a camada de modelo (Model) exibe a interface ao usuário.
  • B de modelo (Model) é responsável pela interação com o banco de dados e lógica de negócios, a camada de visão (View) apresenta os dados ao usuário, e a camada de controlador (Controller) gerencia as interações entre a visão e o modelo.
  • C de controlador (Controller) realiza a persistência de dados, a camada de visão (View) lida com a lógica de negócios e a camada de modelo (Model) exibe a interface ao usuário.
  • D de visão (View) lida com a lógica de negócios, a camada de modelo (Model) realiza a comunicação com o banco de dados, e a camada de controlador (Controller) exibe os dados ao usuário.
  • E modelo (Model) gerencia a apresentação dos dados ao usuário, a camada de visão (View) realiza a lógica de negócios, e a camada de controlador (Controller) faz a persistência de dados.

Domain-Driven Design (DDD) é uma abordagem para o desenvolvimento de software que enfatiza a colaboração entre desenvolvedores e especialistas do domínio para criar soluções de software que são fortemente alinhadas com as necessidades e complexidades do domínio do problema.
Assinale a opção que melhor descreve o conceito central de Domain-Driven Design (DDD).

  • A Domain-Driven Design (DDD) foca na criação de interfaces de usuário sofisticadas e interativas para melhorar a experiência do usuário.
  • B Domain-Driven Design (DDD) é uma abordagem que se concentra na modelagem e na solução de problemas complexos por meio da colaboração estreita com especialistas do domínio e da construção de um modelo de domínio rico e expressivo.
  • C Domain-Driven Design (DDD) prioriza a eficiência na performance do banco de dados ao criar modelos de dados altamente normalizados e otimizados.
  • D Domain-Driven Design (DDD) enfatiza o uso de frameworks e bibliotecas de terceiros para acelerar o desenvolvimento de software.
  • E Domain-Driven Design (DDD) se concentra principalmente na implementação de testes automatizados para garantir a qualidade do código.