A arquitetura da plataforma Java Enterprise Edition (JEE) é baseada em componentes. Tais componentes operam em ambientes de execução denominados containers, os quais gerenciam o ciclo de vida, provem mecanismos de segurança e disponibilizam os serviços necessários para cada tipo de componente.

Servlets e aplicações java standalone que acessam as facilidades da plataforma JEE são componentes que operam, respectivamente, nos containers:

Considere que você é o responsável pela especificação da arquitetura de software de um sistema de computação que está sendo desenvolvido pela empresa em que você trabalha. Considere que existe nesse sistema um requisito que indica que cada requisição do cliente deve ser processada para fins de autenticação e controle de acesso. Você sabe, pela sua experiência como arquiteto de software, que replicar essa lógica em todas as páginas ou em todos os servlets da aplicação não é uma boa solução, sobretudo do ponto de vista de manutenção do sistema. Utilizando o conhecimento que você possui sobre o catálogo de padrões J2EE, assinale a opção que indica o padrão de projeto Java que é indicado por esse catálogo para atender ao requisito descrito acima, evitando assim o problema de replicação do código.
Com relação a arquitetura e desenvolvimento em nuvem, analise os itens a seguir.
I. IaaS, PaaS e SaaS são tecnologias populares conhecidas como modelos de serviço de nuvem (ou modelos de computação em nuvem) que fornecem, respectivamente, infraestrutura, plataforma e aplicações.
II. CaaS, é utilizado para desenvolver e implantar aplicativos usando contêineres como serviço, promovendo entrega e gerenciamento de todos os recursos de hardware e software.
III. O desenvolvimento em nuvem é a abordagem para criar aplicações e ferramentas de TI usando a computação em nuvem.
IV. A adoção da nuvem não é ideal para todos os casos, sendo necessário considerar que tipo de nuvem se quer criar com base nos investimentos em tecnologia, nos requisitos de negócios específicos e nas metas gerais que espera alcançar.
Está correto o que se afirma em
No desenvolvimento de software, a arquitetura de aplicações web é a estrutura e organização de um sistema web, que define como os componentes interagem entre si.
Dentre diversos arranjos, o padrão de arquitetura hexagonal (também conhecido como padrão de portas e adaptadores) objetiva
Assinale a opção que representa uma tecnologia com as seguintes características: arquitetura formada por recursos, servidores e clientes, comunicação stateless, armazenamento em cache, uniformidade de interface e código sob demanda.
Após um estudo aprofundado sobre a sistemática de gestão de processos e do sistema digital que a apoia – o SisGEPRO 1.0 –, a Equipe de Soluções Técnicas (EST) identificou que há conceitos do negócio que não são compreendidos por algumas das partes envolvidas na sustentação do sistema, levando a erros de codificação. Assim, dada a complexidade do negócio e a obsolescência do SisGEPRO 1.0, a EST recomendou o desenvolvimento de uma nova versão do sistema – o SisGEPRO 2.0 – aplicando a abordagem Domain-Driven Design (DDD). Em conformidade com o DDD, o arquiteto de software, após a modelagem dos conceitos do domínio, irá:
Uma das principais ideias da arquitetura hexagonal é separar o código de negócios do código de tecnologia. Com relação à arquitetura, analise as afirmativas a seguir

I. O hexágono de domínio representa um esforço para entender e modelar um problema do mundo real. Nele reúnem-se os elementos responsáveis por descrever os principais problemas que o software resolverá. Entidades e objetos de valor são os principais elementos utilizados. Entidades representam coisas às quais atribui-se uma identidade e objetos de valor são componentes imutáveis que usados para compor as entidades.

II. O hexágono de aplicativo é onde se trata abstratamente com tarefas específicas do aplicativo. Ele fica entre os lados de negócios e tecnologia, atua como um intermediário para interagir com ambas as partes. Ele utiliza portas e casos de uso para executar suas funções.

III. O hexágono de interfaces fornece as conexões do mundo externo, é o lugar onde se determina como expor os recursos dos aplicativos, por exemplo, ali se definem os endpoints REST ou gRPC. Esse hexágono pode ser usado para especificar as interfaces dos mecanismos para buscar dados de bancos de dados, corretores de mensagens ou qualquer outro sistema.


Está correto o que se afirma em
Relaciones as desvantagens dos microsserviços com seus respectivos conceitos.

1. Complexidade do projeto
2. Complexidade da rede
3. Persistência de dados
4. Testes de integração

( ) Desenvolver aplicativos com arquitetura de microsserviços pode atrasar o processo de obtenção de feedback, pois nem todos os serviços podem ser testados completamente antes de serem implantados em um servidor de teste ou de produção
( ) Microsserviços precisam acompanhar onde os serviços são implantados e o número total de instâncias implantadas, para que, quando uma nova instância de um serviço específico for criada, o tráfego possa ser redirecionado de forma adequada. Isolar o estado de um serviço específico para que ele não seja compartilhado ou duplicado é extremamente difícil.
( ) Com um monólito, tudo acontece em um único processo, então não se precisa fazer muitas chamadas para outros serviços. Ao dividir partes do seu aplicativo em microsserviços, se precisará fazer uma chamada de rede, o que pode causar problemas, especialmente se vários serviços precisarem se comunicar entre si, resultando em efeitos semelhantes aos do pingue-pongue em termos de solicitações de rede.
( ) Refatorar um módulo separado dentro do monólito geral é uma opção mais fácil do que dividir uma parte do seu aplicativo em um microsserviço, pois não há como voltar atrás depois de dividir um serviço.

Assinale a opção que indica a relação correta, na ordem apresentada.