SlideShare uma empresa Scribd logo
1 de 14
Baixar para ler offline
SOA x Microservices
Apresentação 2
Daniel Christofolli
e
Versionamento
de Contrato
SOA
SOA é uma filosofia usada para fazer a integração de serviços que
seguem um mesmo padrão através de um Enterprise Service Bus
(ESB).
Microservices
O desenvolvimento é distribuído. Isso significa que as equipes de
desenvolvimento podem ter rotinas diferentes e podem trabalhar
com tecnologias diferentes. Além disso, é possível desenvolver
vários microsserviços ao mesmo tempo.
Contrato de API
É a documentação da API, que deve conter:
● Significado, funcionamento e dependências de cada um dos endpoints;
● Métodos HTTP permitidos em cada endpoint e como funcionam;
● Descrição dos campos de input e output, como na figura;
● Descrição do status de cada resposta Qual status é mostrado em cada caso?
● Explicação sobre as requests;
Contrato de API
● Exemplo de respostas;
Mudanças que não quebram o contrato
Mudanças que quebram o contrato
Quebra o consumidor
Nova versão
Versionamento de contrato de API
Desafios
● Compatibilidade – O contrato entre cliente e API é fundamental
e realizar modificações nos endpoints sem quebra de contrato é
a prioridade zero. A compatibilidade deve ser preservada a todo
momento.
● Documentação atualizada – Manter uma documentação
atualizada é vital para o uso de qualquer API. A documentação é
a especificação do produto. Uma má documentação gera mais
chamados para a equipe de suporte e, fatalmente, gera mais
custo para a empresa.
Versionamento de contrato de API
Desafios
● Forçar o cliente a migrar;
● Não criar muitas versões;
Como versionar?
Header
Accept: application/json; version=1.0
Características:
● Menos intrusivo;
● Não polui a URL;
● Fácil de identificar;
URL
https://host/api/v1/bands/1/albuns
https://host/api/bands/albuns?version
=1v
Características:
● Explícito;
● Mais clara para os consumidores;
● Mais difícil de ser identificada;

Mais conteúdo relacionado

Mais procurados

Balança comercial
Balança comercialBalança comercial
Balança comercialMoruska
 
O Time Scrum e suas responsabilidades - Papéis do Scrum
O Time Scrum e suas responsabilidades - Papéis do ScrumO Time Scrum e suas responsabilidades - Papéis do Scrum
O Time Scrum e suas responsabilidades - Papéis do ScrumScrumHalf Tool
 
Slides - Gestão de Projetos Atuliazação PMBoK 7 Edição.pdf
Slides - Gestão de Projetos Atuliazação PMBoK 7 Edição.pdfSlides - Gestão de Projetos Atuliazação PMBoK 7 Edição.pdf
Slides - Gestão de Projetos Atuliazação PMBoK 7 Edição.pdfJairo Garcia
 
Fit for Purpose - Como liderar organizações em busca do produto certo
Fit for Purpose - Como liderar organizações em busca do produto certoFit for Purpose - Como liderar organizações em busca do produto certo
Fit for Purpose - Como liderar organizações em busca do produto certoTOT - Team of Thought
 
Aula 5 - U2S2 - Análise da necessidade de capacidade instalada.pdf
Aula 5 - U2S2 - Análise da necessidade de capacidade instalada.pdfAula 5 - U2S2 - Análise da necessidade de capacidade instalada.pdf
Aula 5 - U2S2 - Análise da necessidade de capacidade instalada.pdfDenis Lima
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Elaine Cecília Gatto
 
Arquitetura evolutiva - Arquitetura ágil (TDC FLORIPA 2023)
Arquitetura evolutiva - Arquitetura ágil (TDC FLORIPA 2023)Arquitetura evolutiva - Arquitetura ágil (TDC FLORIPA 2023)
Arquitetura evolutiva - Arquitetura ágil (TDC FLORIPA 2023)André Paulovich
 
06 projeto-churrasco-dos-sonhos-gerando-a-eap-gráfica-guia-03
06 projeto-churrasco-dos-sonhos-gerando-a-eap-gráfica-guia-0306 projeto-churrasco-dos-sonhos-gerando-a-eap-gráfica-guia-03
06 projeto-churrasco-dos-sonhos-gerando-a-eap-gráfica-guia-03Eduardo Alves
 
Criando testes unitários com Junit 5
Criando testes unitários com Junit 5Criando testes unitários com Junit 5
Criando testes unitários com Junit 5Deivid Hahn Fração
 
PMO - Project Management Office
PMO - Project Management OfficePMO - Project Management Office
PMO - Project Management OfficeAragon Vieira
 
[해줌] 애자일 스크럼 교육 자료
[해줌] 애자일 스크럼 교육 자료[해줌] 애자일 스크럼 교육 자료
[해줌] 애자일 스크럼 교육 자료WooJooOh
 
A implantação de um planejamento e controle da manutenção
A implantação de um planejamento e controle da manutençãoA implantação de um planejamento e controle da manutenção
A implantação de um planejamento e controle da manutençãoFernando Oliveira do Rosário
 

Mais procurados (20)

Balança comercial
Balança comercialBalança comercial
Balança comercial
 
Metricas ageis
Metricas ageisMetricas ageis
Metricas ageis
 
O Time Scrum e suas responsabilidades - Papéis do Scrum
O Time Scrum e suas responsabilidades - Papéis do ScrumO Time Scrum e suas responsabilidades - Papéis do Scrum
O Time Scrum e suas responsabilidades - Papéis do Scrum
 
Slides - Gestão de Projetos Atuliazação PMBoK 7 Edição.pdf
Slides - Gestão de Projetos Atuliazação PMBoK 7 Edição.pdfSlides - Gestão de Projetos Atuliazação PMBoK 7 Edição.pdf
Slides - Gestão de Projetos Atuliazação PMBoK 7 Edição.pdf
 
Fit for Purpose - Como liderar organizações em busca do produto certo
Fit for Purpose - Como liderar organizações em busca do produto certoFit for Purpose - Como liderar organizações em busca do produto certo
Fit for Purpose - Como liderar organizações em busca do produto certo
 
Aula 5 - U2S2 - Análise da necessidade de capacidade instalada.pdf
Aula 5 - U2S2 - Análise da necessidade de capacidade instalada.pdfAula 5 - U2S2 - Análise da necessidade de capacidade instalada.pdf
Aula 5 - U2S2 - Análise da necessidade de capacidade instalada.pdf
 
Aula 02 escopo
Aula 02 escopoAula 02 escopo
Aula 02 escopo
 
Trabalho de sistemas de controle II
Trabalho de sistemas de controle IITrabalho de sistemas de controle II
Trabalho de sistemas de controle II
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1
 
Arquitetura evolutiva - Arquitetura ágil (TDC FLORIPA 2023)
Arquitetura evolutiva - Arquitetura ágil (TDC FLORIPA 2023)Arquitetura evolutiva - Arquitetura ágil (TDC FLORIPA 2023)
Arquitetura evolutiva - Arquitetura ágil (TDC FLORIPA 2023)
 
06 projeto-churrasco-dos-sonhos-gerando-a-eap-gráfica-guia-03
06 projeto-churrasco-dos-sonhos-gerando-a-eap-gráfica-guia-0306 projeto-churrasco-dos-sonhos-gerando-a-eap-gráfica-guia-03
06 projeto-churrasco-dos-sonhos-gerando-a-eap-gráfica-guia-03
 
Governança Ágil de Portfólio
Governança Ágil de PortfólioGovernança Ágil de Portfólio
Governança Ágil de Portfólio
 
Discovery kanban
Discovery kanbanDiscovery kanban
Discovery kanban
 
Criando testes unitários com Junit 5
Criando testes unitários com Junit 5Criando testes unitários com Junit 5
Criando testes unitários com Junit 5
 
Scrum
ScrumScrum
Scrum
 
Gestão Ágil com Fluxo Unificado
Gestão Ágil com Fluxo UnificadoGestão Ágil com Fluxo Unificado
Gestão Ágil com Fluxo Unificado
 
PMO - Project Management Office
PMO - Project Management OfficePMO - Project Management Office
PMO - Project Management Office
 
[해줌] 애자일 스크럼 교육 자료
[해줌] 애자일 스크럼 교육 자료[해줌] 애자일 스크럼 교육 자료
[해줌] 애자일 스크럼 교육 자료
 
A implantação de um planejamento e controle da manutenção
A implantação de um planejamento e controle da manutençãoA implantação de um planejamento e controle da manutenção
A implantação de um planejamento e controle da manutenção
 
25 produc807a771o e_crescimento
25 produc807a771o e_crescimento25 produc807a771o e_crescimento
25 produc807a771o e_crescimento
 

Semelhante a Soa x microservices e versionamento de contrato de API

Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecturerenanwb
 
Arquiteturas SOA, WOA e REST
Arquiteturas SOA, WOA e RESTArquiteturas SOA, WOA e REST
Arquiteturas SOA, WOA e RESTlucasbarsand
 
Arquitetura Orientada a Serviços e BPM
Arquitetura Orientada a Serviços e BPMArquitetura Orientada a Serviços e BPM
Arquitetura Orientada a Serviços e BPMRoger Ritter
 
Arquitetura orientada a servicos soa
Arquitetura orientada a servicos   soaArquitetura orientada a servicos   soa
Arquitetura orientada a servicos soaLeonardo Eloy
 
Engenharia de software orientada a servicos
Engenharia de software orientada a servicosEngenharia de software orientada a servicos
Engenharia de software orientada a servicosLeonardo Eloy
 
[Ass] arquiteturas soa, woa, e rest
[Ass] arquiteturas soa, woa, e rest[Ass] arquiteturas soa, woa, e rest
[Ass] arquiteturas soa, woa, e restassufmg
 
AERio 2011 - BPM e SOA - Leonardo Azevedo
AERio 2011 - BPM e SOA - Leonardo AzevedoAERio 2011 - BPM e SOA - Leonardo Azevedo
AERio 2011 - BPM e SOA - Leonardo AzevedoFernando Botafogo
 
[Ass] arquiteturas soa, woa, e rest
[Ass] arquiteturas soa, woa, e rest[Ass] arquiteturas soa, woa, e rest
[Ass] arquiteturas soa, woa, e restassufmg
 
III SDTA - Descomplicando Integrações de Sistemas com Barramento de Serviços
III SDTA - Descomplicando Integrações de Sistemas com Barramento de ServiçosIII SDTA - Descomplicando Integrações de Sistemas com Barramento de Serviços
III SDTA - Descomplicando Integrações de Sistemas com Barramento de ServiçosAtech S.A. | Embraer Group
 
Soa – Woa Rest Arquiteturas
Soa – Woa   Rest ArquiteturasSoa – Woa   Rest Arquiteturas
Soa – Woa Rest Arquiteturasrafaslide
 
Micro serviços com node.js
Micro serviços com node.jsMicro serviços com node.js
Micro serviços com node.jsBruno Trecenti
 
Gerência de configuração ágil
Gerência de configuração ágilGerência de configuração ágil
Gerência de configuração ágilClaudia Melo
 

Semelhante a Soa x microservices e versionamento de contrato de API (20)

Soa conceitos
Soa conceitosSoa conceitos
Soa conceitos
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
Arquiteturas SOA, WOA e REST
Arquiteturas SOA, WOA e RESTArquiteturas SOA, WOA e REST
Arquiteturas SOA, WOA e REST
 
Arquitetura Orientada a Serviços e BPM
Arquitetura Orientada a Serviços e BPMArquitetura Orientada a Serviços e BPM
Arquitetura Orientada a Serviços e BPM
 
Arquitetura orientada a servicos soa
Arquitetura orientada a servicos   soaArquitetura orientada a servicos   soa
Arquitetura orientada a servicos soa
 
SOA
SOASOA
SOA
 
Engenharia de software orientada a servicos
Engenharia de software orientada a servicosEngenharia de software orientada a servicos
Engenharia de software orientada a servicos
 
Web Service - XML
Web Service - XMLWeb Service - XML
Web Service - XML
 
[Ass] arquiteturas soa, woa, e rest
[Ass] arquiteturas soa, woa, e rest[Ass] arquiteturas soa, woa, e rest
[Ass] arquiteturas soa, woa, e rest
 
AERio 2011 - BPM e SOA - Leonardo Azevedo
AERio 2011 - BPM e SOA - Leonardo AzevedoAERio 2011 - BPM e SOA - Leonardo Azevedo
AERio 2011 - BPM e SOA - Leonardo Azevedo
 
[Ass] arquiteturas soa, woa, e rest
[Ass] arquiteturas soa, woa, e rest[Ass] arquiteturas soa, woa, e rest
[Ass] arquiteturas soa, woa, e rest
 
III SDTA - Descomplicando Integrações de Sistemas com Barramento de Serviços
III SDTA - Descomplicando Integrações de Sistemas com Barramento de ServiçosIII SDTA - Descomplicando Integrações de Sistemas com Barramento de Serviços
III SDTA - Descomplicando Integrações de Sistemas com Barramento de Serviços
 
Soa – Woa Rest Arquiteturas
Soa – Woa   Rest ArquiteturasSoa – Woa   Rest Arquiteturas
Soa – Woa Rest Arquiteturas
 
Soa Woa Rest
Soa Woa RestSoa Woa Rest
Soa Woa Rest
 
Micro serviços com node.js
Micro serviços com node.jsMicro serviços com node.js
Micro serviços com node.js
 
Microservices
MicroservicesMicroservices
Microservices
 
Architecture performance using micro services
Architecture performance using micro servicesArchitecture performance using micro services
Architecture performance using micro services
 
Gerência de configuração ágil
Gerência de configuração ágilGerência de configuração ágil
Gerência de configuração ágil
 
Corbawebserves
CorbawebservesCorbawebserves
Corbawebserves
 
WebServices-XML
WebServices-XMLWebServices-XML
WebServices-XML
 

Mais de DanielChristofolli

Design patterns - Gang of Four - Observer e Prototype
Design patterns - Gang of Four - Observer e PrototypeDesign patterns - Gang of Four - Observer e Prototype
Design patterns - Gang of Four - Observer e PrototypeDanielChristofolli
 
Api best practices - SOAP vs REST
Api best practices - SOAP vs RESTApi best practices - SOAP vs REST
Api best practices - SOAP vs RESTDanielChristofolli
 
Princípios de Programação Orientada a Objetos Solid, dry e kiss
Princípios de Programação Orientada a Objetos Solid, dry  e kiss Princípios de Programação Orientada a Objetos Solid, dry  e kiss
Princípios de Programação Orientada a Objetos Solid, dry e kiss DanielChristofolli
 

Mais de DanielChristofolli (6)

Docker
DockerDocker
Docker
 
Gradle spring-hateoas-Lombok
Gradle spring-hateoas-LombokGradle spring-hateoas-Lombok
Gradle spring-hateoas-Lombok
 
Design patterns - Gang of Four - Observer e Prototype
Design patterns - Gang of Four - Observer e PrototypeDesign patterns - Gang of Four - Observer e Prototype
Design patterns - Gang of Four - Observer e Prototype
 
Api best practices - SOAP vs REST
Api best practices - SOAP vs RESTApi best practices - SOAP vs REST
Api best practices - SOAP vs REST
 
Princípios de Programação Orientada a Objetos Solid, dry e kiss
Princípios de Programação Orientada a Objetos Solid, dry  e kiss Princípios de Programação Orientada a Objetos Solid, dry  e kiss
Princípios de Programação Orientada a Objetos Solid, dry e kiss
 
Novidades java 8, 9, 10 e11
Novidades java 8, 9, 10 e11Novidades java 8, 9, 10 e11
Novidades java 8, 9, 10 e11
 

Soa x microservices e versionamento de contrato de API