Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

15
1
Profª Drª Mariane Gavioli Bergamini Fernandes
Arquitetura de Sistemas
Aula 2
15
2
Conversa Inicial
15
3
Os objetivos da aula conhecer os principais
tipos de arquiteturas de sistemas e sua
aplicabilidade dentro da engenharia de
software
15
4
Durante nossa aula será explorado os seguintes 
temas:
• Arquitetura em Camadas e Arquitetura Cliente-servidor
• Arquitetura orientada a serviços (SOA) e Arquitetura baseada
em microsserviços
• Arquitetura Model-View-Controller, REST, REST-FULL e
Arquitetura de Microfontend
• Arquitetura orientada a eventos e Arquitetura a dados
15
5
ARQUITETURA EM CAMADAS E 
ARQUITETURA CLIENTE-SERVIDOR
15
6
A arquitetura em camadas facilita o
desenvolvimento incremental de sistemas
de software, permitindo a entrega
iterativa de funcionalidades à medida que
cada camada é concluída.
Arquitetura genérica em camadas
15
7
Fonte: Adaptada de Sommerville (2019)
15
8
Sistema de
gerenciamento
de bibliotecas
Aplicabilidade da arquitetura genérica 
em camadas
15
9
A arquitetura cliente-servidor é um padrão de
software distribuído onde os recursos e
dados são centralizados em um servidor,
enquanto os clientes acessam esses recursos
através de uma rede. Essa arquitetura se
tornou dominante devido à sua capacidade
de compartilhar recursos e dados de forma
eficiente.
Arquitetura cliente – servidor
15
10
Fonte: Autora (2024)
15
11
Arquitetura cliente-servidor de duas 
camadas
Arquitetura cliente-servidor de três 
camadas
Arquitetura cliente-servidor multicamadas
Variações da arquitetura cliente-servidor
15
12
Caixa eletrônico ou ATM (Automated Teller
Machine);
Sistema de e-commerce
Sistema de gerenciamento de
relacionamento com o cliente (CRM)
corporativo de grande porte.
Aplicabilidade das variações de 
arquitetura cliente-servidor
15
13
Arquitetura cliente-servidor é um tipo de
rede de computadores onde vários clientes
solicitam e recebem arquivos e serviços de
um servidor centralizado por meio de uma
conexão local ou de internet.
15
14
A escolha da arquitetura ideal depende das
necessidades específicas do projeto em
desenvolvimento, incluindo o tamanho, a
complexidade e os requisitos não funcionais de
escalabilidade e manutenibilidade.
15
15
ARQUITETURA ORIENTADA A SERVIÇOS 
(SOA) E ARQUITETURA BASEADA EM 
MICROSSERVIÇOS 
15
16
Uma arquitetura orientada a serviços (SOA)
assemelha-se a uma arquitetura baseada em
componentes, porém suas partes são
implementadas como serviços.
Arquitetura orientada a serviços
15
17
Interoperabilidade
Detectáveis ou descobertos
Componibilidade
Facilita a manutenção, atualização e
escalabilidade do sistema,
tornando-o mais robusto e
adaptável a mudanças futuras.
15
18
REST (Representational State Transfer) pode
ser definido como sistemas hipermídia em
larga escala, como a web, devem funcionar.
RESTful, por exemplo, envia requisições via
internet usando URLs especialmente
formatados e recebe como resposta um
payload contendo dados em XML, HTML,
JSON ou outros formatos.
SOAP, REST e RESTFUL
15
19
Sistema Bancário:
O banco pode criar novos produtos e serviços
de forma mais rápida e eficiente, integrando os
dados de diferentes sistemas sem a
necessidade de uma grande reengenharia.
Aplicabilidade de SOA
15
20
A arquitetura de microsserviços (em inglês
Microservices Architecture - MSA) é um
padrão arquitetural poderoso para projetar,
desenvolver, implantar e entregar aplicativos
de software atualmente.
Destacando-se como a principal forma de
construir aplicações corporativas e de missão
crítica.
Arquitetura baseada em microsserviços
15
21
Microsserviços são serviços granulares,
geralmente com uma única finalidade e
fracamente acoplados, facilitando a
implantação independente e a escalabilidade
horizontal.
15
22
Uma desvantagem dessa arquitetura é o
aumento da complexidade no gerenciamento
e monitoramento. Havendo a necessidade de
coordenar múltiplos serviços, monitorar as
interações, e lidar com falhas individuais é
significativamente maior do que em uma
aplicação monolítica.
15
23
Fonte: Autora, 2024.
15
24
Gerenciamento de projetos de construção:
cada microserviço irá operar de maneira
independente e se comunicando por meio de
APIs.
Aplicabilidade MSA
15
25
A escolha do tipo de arquitetura, seja
monolítica ou microsserviços vai depender
das necessidades específicas do projeto,
levando em conta o tamanho da equipe, a
complexidade do aplicativo, os requisitos de
escalabilidade e a tolerância a falhas. Não
existe uma solução melhor em geral, mas sim
a mais adequada para cada caso
15
26
ARQUITETURA MODEL-VIEW-
CONTROLLER E ARQUITETURA DE 
MICRO FRONT-END
15
27
Separa a apresentação e a interação dos
dados do sistema, sendo o sistema
estruturado em três componentes lógicos
que interagem entre eles, que são:
Componente modelo
Componente visão
Componente controlador
Arquitetura Model-View-Controller
15
28
Fonte: Autora, 2024.
15
29
O MVC facilita a manutenção, o teste e a
escalabilidade de aplicações, pois a
separação de responsabilidades permite
modificações em um componente sem afetar
significativamente os outros.
15
30
A arquitetura microfrontend pode ser
considerada como uma extensão da
arquitetura baseada em microsserviços.
Arquitetura Microfrontend
15
31
Fonte: Autora, 2024.
15
32
Quatro decisões técnicas
Fonte: Autora, 2024.
15
33
ARQUITETURA ORIENTADA A 
EVENTOS E ARQUITETURA CENTRADA 
A DADOS
15
34
A Arquitetura Orientada a Eventos (do termo
em inglês Event Driven Architecture – EDA,
considerada uma arquitetura assíncrona
distribuída que pode ser utilizada para
desenvolver aplicativos distribuídos
escaláveis.
Arquitetura Orientada a Eventos
15
36
“ EDA é uma metodologia para projetar e
implementar aplicações e sistemas onde os
eventos são transmitidos entre componentes
de software desacoplados e serviços.
(Marechaux, 2006)”
15
37
Os componentes não podem ser chamados de
maneira direta, pois eles publicam eventos
que outros componentes podem
consumir/estão interessados permitindo
flexibilidade e desacoplamento.
15
38
Emissor de Eventos
Corretor de Eventos
Assinante de Eventos
Componentes principais da EDA
15
39
Fonte: Autora, 2024.
15
40
Segundo Tanenbaum (1944) " A arquitetura
centrada em dados tem por base em
processos que se comunicam por meio de um
repositório, seja ele, passivo ou ativo."
Arquitetura centrada a dados
15
41
15
42
A arquitetura orientada a eventos pode ser
utilizada em sistemas altamente distribuídos,
complexos e com alta demanda por
escalabilidade e resiliência.
A arquitetura centrada em dados pode ser
utilizada para sistemas mais simples, onde a
consistência de dados é essencial e a
complexidade precisa ser mantida baixa.
15
49
Sommerville, I. Engenharia de Software. 10ª ed. São 
Paulo: Pearson, 2018.
Garlan, D.; Shaw, M. An Introduction to Software 
Architecture, Advances in Software Engineering 
and Knowledge Engineering, Volume I, World 
Scientific, 1993.
Referência
15
50
	Slide 1: Arquitetura de Sistemas
	Slide 2: Conversa Inicial
	Slide 3
	Slide 4
	Slide 5: ARQUITETURA EM CAMADAS E ARQUITETURA CLIENTE-SERVIDOR
	Slide 6: Arquitetura genérica em camadas
	Slide 7
	Slide 8: Aplicabilidade da arquitetura genérica em camadas
	Slide 9: Arquitetura cliente – servidor
	Slide 10
	Slide 11: Variações da arquitetura cliente-servidor
	Slide 12: Aplicabilidade das variações de arquitetura cliente-servidor
	Slide 13
	Slide 14
	Slide 15: ARQUITETURA ORIENTADA A SERVIÇOS (SOA) E ARQUITETURA BASEADA EM MICROSSERVIÇOS 
	Slide 16: Arquitetura orientada a serviços
	Slide 17
	Slide 18: SOAP, REST e RESTFUL
	Slide 19: Aplicabilidade de SOA
	Slide 20: Arquitetura baseada em microsserviços
	Slide 21
	Slide 22
	Slide 23
	Slide 24: Aplicabilidade MSA
	Slide 25
	Slide 26: ARQUITETURA MODEL-VIEW-CONTROLLERE ARQUITETURA DE MICRO FRONT-END
	Slide 27: Arquitetura Model-View-Controller
	Slide 28
	Slide 29
	Slide 30: Arquitetura Microfrontend
	Slide 31
	Slide 32: Quatro decisões técnicas
	Slide 33: ARQUITETURA ORIENTADA A EVENTOS E ARQUITETURA CENTRADA A DADOS
	Slide 34: Arquitetura Orientada a Eventos
	Slide 36
	Slide 37
	Slide 38
	Slide 39
	Slide 40
	Slide 41
	Slide 42
	Slide 49: Referência
	Slide 50

Mais conteúdos dessa disciplina