SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 1/19
ARQUITETURA BASEADA EMARQUITETURA BASEADA EM
EVENTOS COM SERVERLESSEVENTOS COM SERVERLESS
COMO TESTAR?COMO TESTAR?
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 2/19
EVANDRO PIRES DA SILVAEVANDRO PIRES DA SILVA
Arquiteto de soluções na Cresol Confederação
Filho, afilhado e irmão de programador ( talvez
pai de programador(a) no futuro :) )
Programador desde meus 12 anos
Programador Java® desde 2005
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 3/19
TATIANA RIBEIRO NUNESTATIANA RIBEIRO NUNES
QA Senior na Cresol Confederação
Formada em Análise de Sistemas com 17 anos de
experiência em Testes de So ware e Qualidade
Começou a carreira em 2002 na HP em Porto Alegre
Atuando em diversos projetos de grande porte, com
destaque em sistemas financeiros
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 4/19
DISCLAIMERDISCLAIMER
Esta é uma apresentação pessoal, portanto não
representa a visão institucional da Cresol
Confederação
Todas as informações aqui apresentadas são
fictícias e não expõem dados sensíveis da
instituição e do sistema financeiro
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 5/19
OBJETIVOOBJETIVO
Mostrar formas de garantir qualidade em aplicações
baseadas em evento
Demonstrar como testar cenários reais de
instituição financeira
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 6/19
SERVERLESSSERVERLESS
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 7/19
O QUE É UM AUTORIZADOR DEO QUE É UM AUTORIZADOR DE
DÉBITO DE CARTÃO?DÉBITO DE CARTÃO?
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 8/19
O QUE É?O QUE É?
É o sistema que autoriza um débito em conta corrente
na instituição financeira quando efetuamos um
pagamento utilizando cartão nas famosas
maquininhas de cartão
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 9/19
RESTRIÇÕESRESTRIÇÕES
Deve rodar no máximo em 4 segundos
Comunicação segura
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 10/19
REQUISITOSREQUISITOS
Disponibilidade 24/7
Escalabilidade: deve escalar facilmente com a
demanda
Exemplo: Black Friday, Dia das mães, etc
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 11/19
SEQUÊNCIASEQUÊNCIA
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 12/19
AGORA, FALANDOAGORA, FALANDO
TECNICAMENTE...TECNICAMENTE...
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 13/19
PROCESSOPROCESSO
Find credit card
Is that a valid 
credit card?
Find balance
Have sufficient 
funds?
Add provisional 
debit (Pending)
Yes
No
Yes
No
Add a message 
to a queue
Queue Listener
Executes debit 
transaction
Changes 
provisional debit
to registered
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 14/19
COMO FOI FEITO?COMO FOI FEITO?
Java
Serverless Framework
IBM Cloud Functions
Composer
PostgreSQL
BDD
Cucumber com JUnit
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 15/19
SHOW ME THE CODESHOW ME THE CODE
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 16/19
AUTORIZADORAUTORIZADOR
teste autorizadorteste autorizador
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 17/19
LEGADOLEGADO
teste legadoteste legado
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 18/19
CONCLUSÕESCONCLUSÕES
Keep it simple!
Testes unitários
Requisitos funcionais
Requisitos não funcionais
Disseminar a cultura da qualidade
Relacionamento / Participação
28/05/2019 Autorizador de débito de cartão
localhost:8000/?print-pdf 19/19
OBRIGADO!OBRIGADO!
DÚVIDAS? PERGUNTAS?DÚVIDAS? PERGUNTAS?
linkedin.com/in/epiresdasilva linkedin.com/in/tatiana-
ribeiro-nunes
github.com/epiresdasilva/debit-authorizer

Mais conteúdo relacionado

Semelhante a Serverless autorizador cartão

Cloud computing-curso-dia2
Cloud computing-curso-dia2Cloud computing-curso-dia2
Cloud computing-curso-dia2Ademar Freitas
 
Curso nota fical produtor rural
Curso nota fical   produtor ruralCurso nota fical   produtor rural
Curso nota fical produtor ruralCarlos Rocha
 
Seminário adoção eficaz de cloud através da gestão de riscos 23 junho 2015_...
Seminário  adoção eficaz de cloud através da gestão de riscos  23 junho 2015_...Seminário  adoção eficaz de cloud através da gestão de riscos  23 junho 2015_...
Seminário adoção eficaz de cloud através da gestão de riscos 23 junho 2015_...Alfredo Saad
 
Diretores de TI: não deixem sua empresa cair no abismo digital - ebook
Diretores de TI: não deixem sua empresa cair no abismo digital - ebookDiretores de TI: não deixem sua empresa cair no abismo digital - ebook
Diretores de TI: não deixem sua empresa cair no abismo digital - ebookUbiratan Mascarenhas
 
JORNADA DEVOPS ALELO - CRIANDO CULTURA DEVOPS COM HABITOS ANTIGOS
JORNADA DEVOPS ALELO - CRIANDO CULTURA DEVOPS COM HABITOS ANTIGOSJORNADA DEVOPS ALELO - CRIANDO CULTURA DEVOPS COM HABITOS ANTIGOS
JORNADA DEVOPS ALELO - CRIANDO CULTURA DEVOPS COM HABITOS ANTIGOSAndreza Medeiros
 
Pluga_Material_Investimento
Pluga_Material_InvestimentoPluga_Material_Investimento
Pluga_Material_InvestimentoMarcus Ribeiro
 
Como criar um banco digital
Como criar um banco digitalComo criar um banco digital
Como criar um banco digitalAtar B2B
 
Manual do Expositor HDI 2009
Manual do Expositor HDI 2009Manual do Expositor HDI 2009
Manual do Expositor HDI 2009HDI Brasil
 
Cobrancas online na sua aplicacao com MoIP
Cobrancas online na sua aplicacao com MoIPCobrancas online na sua aplicacao com MoIP
Cobrancas online na sua aplicacao com MoIPHerberth Amaral
 
Microsoft e Telecentros
Microsoft e TelecentrosMicrosoft e Telecentros
Microsoft e TelecentrosHudson Augusto
 
Mobile Ria Para Aplicacoes Para Negocios
Mobile Ria Para Aplicacoes Para NegociosMobile Ria Para Aplicacoes Para Negocios
Mobile Ria Para Aplicacoes Para NegociosRodney Repullo
 
Challenge Cidades inteligentes (Smart Cities) - FIAP
Challenge Cidades inteligentes (Smart Cities) - FIAPChallenge Cidades inteligentes (Smart Cities) - FIAP
Challenge Cidades inteligentes (Smart Cities) - FIAPFernando Galdino
 
Aprenda a montar um provedor de internet do zero
Aprenda a montar um provedor de internet do zeroAprenda a montar um provedor de internet do zero
Aprenda a montar um provedor de internet do zeroEXPOISP Brasil
 
Ir para cloud com arquitetura de microservices resolverá o meu problema?
Ir para cloud com arquitetura de microservices resolverá o meu problema?Ir para cloud com arquitetura de microservices resolverá o meu problema?
Ir para cloud com arquitetura de microservices resolverá o meu problema?Better Developer
 

Semelhante a Serverless autorizador cartão (20)

Cloud computing-curso-dia2
Cloud computing-curso-dia2Cloud computing-curso-dia2
Cloud computing-curso-dia2
 
Curso nota fical produtor rural
Curso nota fical   produtor ruralCurso nota fical   produtor rural
Curso nota fical produtor rural
 
Seminário adoção eficaz de cloud através da gestão de riscos 23 junho 2015_...
Seminário  adoção eficaz de cloud através da gestão de riscos  23 junho 2015_...Seminário  adoção eficaz de cloud através da gestão de riscos  23 junho 2015_...
Seminário adoção eficaz de cloud através da gestão de riscos 23 junho 2015_...
 
Diretores de TI: não deixem sua empresa cair no abismo digital - ebook
Diretores de TI: não deixem sua empresa cair no abismo digital - ebookDiretores de TI: não deixem sua empresa cair no abismo digital - ebook
Diretores de TI: não deixem sua empresa cair no abismo digital - ebook
 
JORNADA DEVOPS ALELO - CRIANDO CULTURA DEVOPS COM HABITOS ANTIGOS
JORNADA DEVOPS ALELO - CRIANDO CULTURA DEVOPS COM HABITOS ANTIGOSJORNADA DEVOPS ALELO - CRIANDO CULTURA DEVOPS COM HABITOS ANTIGOS
JORNADA DEVOPS ALELO - CRIANDO CULTURA DEVOPS COM HABITOS ANTIGOS
 
Pluga_Material_Investimento
Pluga_Material_InvestimentoPluga_Material_Investimento
Pluga_Material_Investimento
 
Como criar um banco digital
Como criar um banco digitalComo criar um banco digital
Como criar um banco digital
 
Manual do Expositor HDI 2009
Manual do Expositor HDI 2009Manual do Expositor HDI 2009
Manual do Expositor HDI 2009
 
Cobrancas online na sua aplicacao com MoIP
Cobrancas online na sua aplicacao com MoIPCobrancas online na sua aplicacao com MoIP
Cobrancas online na sua aplicacao com MoIP
 
Microsoft e Telecentros
Microsoft e TelecentrosMicrosoft e Telecentros
Microsoft e Telecentros
 
Mobile Ria Para Aplicacoes Para Negocios
Mobile Ria Para Aplicacoes Para NegociosMobile Ria Para Aplicacoes Para Negocios
Mobile Ria Para Aplicacoes Para Negocios
 
Pré agenda para o CMG Impact 2019
Pré agenda para o CMG Impact 2019Pré agenda para o CMG Impact 2019
Pré agenda para o CMG Impact 2019
 
Arquitetura limpa
Arquitetura limpaArquitetura limpa
Arquitetura limpa
 
Challenge Cidades inteligentes (Smart Cities) - FIAP
Challenge Cidades inteligentes (Smart Cities) - FIAPChallenge Cidades inteligentes (Smart Cities) - FIAP
Challenge Cidades inteligentes (Smart Cities) - FIAP
 
Aprenda a montar um provedor de internet do zero
Aprenda a montar um provedor de internet do zeroAprenda a montar um provedor de internet do zero
Aprenda a montar um provedor de internet do zero
 
Projeto Help
Projeto HelpProjeto Help
Projeto Help
 
Xamarin UI Test + Specflow TDC
Xamarin UI Test + Specflow TDCXamarin UI Test + Specflow TDC
Xamarin UI Test + Specflow TDC
 
02 cn
02 cn02 cn
02 cn
 
Ir para cloud com arquitetura de microservices resolverá o meu problema?
Ir para cloud com arquitetura de microservices resolverá o meu problema?Ir para cloud com arquitetura de microservices resolverá o meu problema?
Ir para cloud com arquitetura de microservices resolverá o meu problema?
 
Divida tecnica
Divida tecnicaDivida tecnica
Divida tecnica
 

Serverless autorizador cartão

  • 1. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 1/19 ARQUITETURA BASEADA EMARQUITETURA BASEADA EM EVENTOS COM SERVERLESSEVENTOS COM SERVERLESS COMO TESTAR?COMO TESTAR?
  • 2. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 2/19 EVANDRO PIRES DA SILVAEVANDRO PIRES DA SILVA Arquiteto de soluções na Cresol Confederação Filho, afilhado e irmão de programador ( talvez pai de programador(a) no futuro :) ) Programador desde meus 12 anos Programador Java® desde 2005
  • 3. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 3/19 TATIANA RIBEIRO NUNESTATIANA RIBEIRO NUNES QA Senior na Cresol Confederação Formada em Análise de Sistemas com 17 anos de experiência em Testes de So ware e Qualidade Começou a carreira em 2002 na HP em Porto Alegre Atuando em diversos projetos de grande porte, com destaque em sistemas financeiros
  • 4. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 4/19 DISCLAIMERDISCLAIMER Esta é uma apresentação pessoal, portanto não representa a visão institucional da Cresol Confederação Todas as informações aqui apresentadas são fictícias e não expõem dados sensíveis da instituição e do sistema financeiro
  • 5. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 5/19 OBJETIVOOBJETIVO Mostrar formas de garantir qualidade em aplicações baseadas em evento Demonstrar como testar cenários reais de instituição financeira
  • 6. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 6/19 SERVERLESSSERVERLESS
  • 7. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 7/19 O QUE É UM AUTORIZADOR DEO QUE É UM AUTORIZADOR DE DÉBITO DE CARTÃO?DÉBITO DE CARTÃO?
  • 8. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 8/19 O QUE É?O QUE É? É o sistema que autoriza um débito em conta corrente na instituição financeira quando efetuamos um pagamento utilizando cartão nas famosas maquininhas de cartão
  • 9. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 9/19 RESTRIÇÕESRESTRIÇÕES Deve rodar no máximo em 4 segundos Comunicação segura
  • 10. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 10/19 REQUISITOSREQUISITOS Disponibilidade 24/7 Escalabilidade: deve escalar facilmente com a demanda Exemplo: Black Friday, Dia das mães, etc
  • 11. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 11/19 SEQUÊNCIASEQUÊNCIA
  • 12. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 12/19 AGORA, FALANDOAGORA, FALANDO TECNICAMENTE...TECNICAMENTE...
  • 13. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 13/19 PROCESSOPROCESSO Find credit card Is that a valid  credit card? Find balance Have sufficient  funds? Add provisional  debit (Pending) Yes No Yes No Add a message  to a queue Queue Listener Executes debit  transaction Changes  provisional debit to registered
  • 14. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 14/19 COMO FOI FEITO?COMO FOI FEITO? Java Serverless Framework IBM Cloud Functions Composer PostgreSQL BDD Cucumber com JUnit
  • 15. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 15/19 SHOW ME THE CODESHOW ME THE CODE
  • 16. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 16/19 AUTORIZADORAUTORIZADOR teste autorizadorteste autorizador
  • 17. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 17/19 LEGADOLEGADO teste legadoteste legado
  • 18. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 18/19 CONCLUSÕESCONCLUSÕES Keep it simple! Testes unitários Requisitos funcionais Requisitos não funcionais Disseminar a cultura da qualidade Relacionamento / Participação
  • 19. 28/05/2019 Autorizador de débito de cartão localhost:8000/?print-pdf 19/19 OBRIGADO!OBRIGADO! DÚVIDAS? PERGUNTAS?DÚVIDAS? PERGUNTAS? linkedin.com/in/epiresdasilva linkedin.com/in/tatiana- ribeiro-nunes github.com/epiresdasilva/debit-authorizer