

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
A respeito do conceito de arquitetura de software em múltiplas camadas (multitier architecture), é correto afirmar que
as camadas de interface de usuário e lógica de negócio possuem separação conceitual e independência de implementação, mas suas implementações precisam ser executadas na mesma máquina. A camada de dados pode ser executada em outra máquina.
as camadas de lógica de negócio e de dados possuem separação conceitual e independência de implementação, mas suas implementações precisam ser executadas na mesma máquina. A camada de interface de usuário pode ser executada em outra máquina.
as implementações das diferentes camadas podem ser executadas em diferentes máquinas, podendo a aplicação estar dividida em mais de 3 camadas.
as implementações das diferentes camadas podem ser executadas em diferentes máquinas, mas a arquitetura possibilita, no máximo, 3 camadas.
todas as camadas possuem separação conceitual e independência de implementação entre si, e suas implementações precisam ser executadas na mesma máquina.
Assinale a alternativa que descreve corretamente o conceito de ASP.NET MVC.
É uma plataforma para desenvolvimento de aplicações móveis multiplataforma.
É uma plataforma para desenvolvimento de aplicações desktop para Windows.
É um padrão arquitetural que separa a aplicação em três componentes principais: modelo, visão e controlador.
É uma plataforma para desenvolvimento de aplicações web em Java.
É uma biblioteca de funções matemáticas para C#.
É uma característica da Arquitetura Orientada a Serviços (SOA – Service Oriented Architecture):
Não utilização de padrões.
Alta disponibilidade.
Alto índice de redundância de serviços.
Baixa interoperabilidade.
Baixo acoplamento.
Quanto às arquiteturas de rede cliente-servidor e peer-to-peer, pode-se afirmar:
Os nós de um rede cliente-servidor podem consumir e fornecer recursos; à medida que o número de nós cresce, também aumenta a capacidade de compartilhamento de recursos.
Uma rede peer-to-peer tem como principal vantagem possibilitar gerenciamento centralizado.
Cliente-servidor tem aplicação mais focada em comunicação e conectividade, enquanto peer-to-peer privilegia a troca de dados.
A implantação e manutenção de cliente-servidor tem menos custos para o provedor do serviço do que uma solução peer-to-peer.
Um servidor, na arquitetura cliente-servidor, pode prover todos os serviços de que um cliente necessita ou o cliente pode também acessar múltiplos servidores para realizar diferentes tarefas.
A Arquitetura Orientada a Serviços (SOA) é um modelo de arquitetura de software que permite a comunicação entre diferentes sistemas e aplicações através de serviços bem definidos. Esses serviços são independentes e podem ser reutilizados em diversos contextos. Quais dos seguintes benefícios estão associados à utilização de uma arquitetura SOA?
Aumenta a dependência entre os serviços e os sistemas que os utilizam.
Aumenta a complexidade e a manutenibilidade dos sistemas.
Facilita a integração entre sistemas heterogêneos e promove a reutilização de serviços.
Reduz a escalabilidade e a disponibilidade dos sistemas.
Centraliza a lógica de negócio, sem impactos sobre a atualização dos sistemas.
SOA é um paradigma de design arquitetônico, utilizado em diversos sistemas de software, que
não suporta a integração com tecnologias legadas, tornando-se inviável para sistemas mais antigos.
torna difícil a adaptação a mudanças nos requisitos devido à sua rigidez estrutural.
requer configuração manual de descoberta de serviços, não suportando configuração dinâmica.
não suporta a reutilização de serviços, o que acarreta maior esforço de desenvolvimento.
promove a separação das preocupações (SOC - separation of concems) lógicas e funcionais, facilitando o gerenciamento e a manutenção dos sistemas.
Na arquitetura de aplicações, a estrutura que define que os componentes podem ser pacotes, classes, objetos, funções etc. é a
funcional.
de desenvolvimento.
de implementação.
de concorrência.
física.
O padrão Saga é uma maneira de gerenciar a consistência de dados entre microsserviços em cenários de transações distribuída.
Sobre esse padrão, assinale a afirmativa correta.
Uma saga é uma transação de estilo ACID no nível da própria saga mesmo havendo múltiplos microsserviços.
Como os microsserviços participantes de uma saga não colaboram entre sim, não há risco de dependência cíclica.
As sagas coreografadas causam maior acoplamento entre microsserviços do que as sagas orquestradas.
As transações de compensação são iguais a rollback em banco de dados, desfaz tudo como se nada tivessem ocorrido.
As sagas orquestradas usam um coordenador centralizado para definir a ordem de execução dos microsserviços.
A empresa "WebMasterTech" está desenvolvendo um aplicativo web de gerenciamento de tarefas, e a equipe decidiu adotar o padrão MVC para estruturar o aplicativo. Ao analisar o código-fonte, você identifica três componentes principais: um componente responsável por renderizar a interface do usuário e receber entradas do usuário, um componente que lida com a lógica de negócios e interage com o banco de dados, e um componente que recebe as entradas do usuário e decide como proceder.
Nesse cenário, em relação às associações entre os componentes do MVC e suas descrições, é correto afirmar que
Model - renderiza a interface do usuário e recebe entradas do usuário.
View - lida com a lógica de negócios e interage com o banco de dados.
Controller - renderiza a interface do usuário e recebe entradas do usuário.
Model - lida com a lógica de negócios e interage com o banco de dados.
View - recebe as entradas do usuário e decide como proceder.
Referente à arquitetura de aplicações web, diz-se que elas descrevem a estrutura interna e interações entre seus componentes, bancos de dados e sistemas externos. Apresentam, em geral, dois tipos mais comuns de aplicações, um deles é o modelo mais simples de aplicação web, em que o site retorna o mesmo conteúdo que está salvo no servidor sempre que uma determinada página é solicitada. Essa é a arquitetura de aplicações:
Dinâmicas.
Completas.
Estáticas.
Ágeis.
MVC.
O modelo operacional triangular, o qual representa a interação entre os três elementos da SOA, determina que os provedores de serviços registrem suas informações em um registro central.
Certo
Errado
A separação de interesses é um princípio essencial no projeto de arquitetura de software. Ao estruturar o software em camadas, um benefício que se espera auferir é o de
alta coesão e baixo acoplamento.
alta coesão e alto acoplamento.
baixa coesão e alto acoplamento.
baixa coesão e baixo acoplamento.
O design detalhado da arquitetura descreve de forma ampla como um software é decomposto e especifica os módulos e as suas relações.
Certo
Errado
Arquitetura orientada a serviços (Service-Oriented Architecture – SOA) é um tipo de design de software que torna os componentes reutilizáveis usando interfaces de serviços com uma linguagem de comunicação comum na rede. Sobre as funções da arquitetura SOA, marque V para as afirmativas verdadeiras e F para as falsas.
( ) Um provedor de serviços cria serviços web e os oferece para um registro de serviços.
( ) Um provedor de serviços não é responsável pelos termos de uso do serviço.
( ) Um broker de serviços ou registro de serviços é responsável por oferecer informações solicitadas sobre o serviço; ele não pode ser público, apenas privado.
( ) Um solicitante de serviços encontra um serviço no registro de serviços. Então, conecta-se ao provedor de serviços para recebê-lo.
A sequência está correta em
F, F, F, F.
F, V, F, V.
F, V, V, F.
V, F, F, V.
V, V, V, V.
A arquitetura de desenvolvimento web MVC é composta pelos componentes:
Member Vertical Controller
Model Vertical Controller
Model Variable Centered
Model View Controller
Model Virtual Controller
A Service Orientated Architecture (SOA), em português, arquitetura orientada a serviços, é uma estratégia para desenvolver sistemas por meio de componentes de softwares chamados de serviços. Com base no conhecimento sobre a SOA, assinale a alternativa CORRETA.
Por ser um método de desenvolver serviços, a SOA não fornece recursos para prover interoperabilidade entre os sistemas.
Este método de desenvolvimento de software possui uma manutenção eficiente, o que torna mais fácil criar, atualizar e pormenorizar pequenos serviços, ao invés de se trabalhar com grandes códigos de sistemas legados ou aplicações monolíticas.
Embora a principal característica da SOA seja a modularização, este método de desenvolvimento de software possui forte acoplamento, tendo muita dependência entre os módulos nativos.
Por ser uma estratégia interessante para a escalabilidade, este modelo de desenvolvimento de software falha em contemplar a granularidade de sistemas, sendo a ausência de granularidade uma de suas principais desvantagens.
Por ser um método para desenvolvimento de software, este dispõe de poucos recursos de abstração, o que na maioria das vezes, exige que o seu usuário conheça a lógica e implementação interna dos serviços nativos.
Em relação à arquitetura de software em três camadas MVC (Model-ViewController), é INCORRETO afirmar:
Separa a apresentação e a interação dos dados do sistema. O sistema é estruturado em três componentes lógicos que interagem entre si.
O componente Modelo gerencia a interação do usuário e passa essas interações para Visão e Controlador. O componente Visão define e gerencia como os dados são apresentados ao usuário. O componente Controlador gerencia os dados do sistema e as operações a eles associadas.
Como vantagem, a arquitetura MVC permite que os dados sejam alterados independentemente de sua representação e vice-versa.
Como desvantagem, pode envolver mais código e aumentar sua complexidade quando o modelo de dados e as interações forem simples.
O desenvolvimento de aplicações disponibilizadas em múltiplas interfaces de usuário é facilitado pela utilização do modelo MVC, pois a principal característica deste é a existência de uma camada de regra de negócios totalmente isolada da interface de usuário.
Certo
Errado
No contexto de SOA (Service Oriented Architecture), o princípio conhecido como “abstração de serviço” estabelece que
a dependência entre diferentes serviços deve ser a maior possível, desde que isso promova um alto desempenho, mesmo que mudanças em um serviço cause quebra de funcionamento em outro serviço.
os serviços devem ser criados em linguagens de programação interpretadas, facilitando sua depuração.
os serviços encapsulam sua lógica interna sem expor como sua funcionalidade é executada, expondo aos clientes o que eles fazem, mas não como fazem.
os serviços não devem armazenar e manter informações de estado de sessões.
não se deve embutir toda a funcionalidade de uma aplicação em um único serviço.
A arquitetura orientada a serviços na qual a composição é feita por meio de uma ordem explícita de execução dos serviços compostos em serviços web é denominada
coordenação.
composição.
disponibilização.
coreografia.
orquestração.