continuous delivery & apis - evoluindo uma arquitetura orientada a serviços
Post on 11-Aug-2015
185 Views
Preview:
TRANSCRIPT
Globalcode – Open4education
Trilha – Microservices e APIsMarcelo Fernandes & Samanta Cicilia
mcf2000@gmail.com/@MCarvalhoFsamycici@gmail.com/@samantacicilia
Globalcode – Open4education
Continuous Delivery & APIs: Evoluindo uma Arquitetura Orientada
a Serviços
Globalcode – Open4education
Coordenador de Arquitetura de TI & Qualidade
Doutorando em Software Economics. NCE-UFRJMestrado em Gestão Estratégica de TI. NCE-UFRJ
Project Management Professional (PMI)Certified Scrum Product Owner (Scrum Alliance)Tibco * Certified
Contatos➔ Linkedin: marcelo (carvalho) fernandes➔ Twitter: @MCarvalhoF➔ Email: marcelo.fernandes@infoglobo.com.br➔ Email: carvalho.fernandes@gmail.com
Globalcode – Open4education
QA na InfogloboCoach e Co-fundadora RTS Treinamentos
MBA Garantia de Qualidade de Software POLI-UFRJ
Certified Tester Foundation Level (ISTQB)Certified Scrum Master (Scrum Alliance)
Sites➔ testedesoftware.com➔ rtstreinamentos.com.br➔ medium.com/@samantacicilia
Contatos➔ Linkedin: Samanta Cicilia➔ Twitter: @samantacicilia➔ Slideshare: pt.slideshare.net/samantacicilia/➔ Email: samanta.souza@infoglobo.com.br➔ Email: samycici@gmail.com
Globalcode – Open4education
Quem somos...
Globalcode – Open4education
Sobre a Infoglobo...
• Focada no Impresso em processo de migração para o digital;• Empresa sem Cultura Ágil
Nasceu em TI, indo para as áreas de negócio
• Sites & Apps:
Globalcode – Open4education
Principais Plataformas
Globalcode – Open4education
Alguns números
PageViews: >192M/mês
Projetos: 55@2015
Funcionários: 2.200Em TI: 263
Globalcode – Open4education
Estratégia de TI
Globalcode – Open4education
Evolução da abordagem da Arquitetura de TI
EAI SOA APIs <2008 2011 2015> Scrum SAFe
Globalcode – Open4education
Plataforma de Integração
Globalcode – Open4education
Provedores & Consumidores
Globalcode – Open4education
Ambientes
Sandbox
Desenvolvimento
HomologaçãoHomologação
ProduçãoProdução
Globalcode – Open4education
Processo de deploy - Pré Continuous Delivery
Pacote
Globalcode – Open4education
Continuous Delivery
Manifesto Ágil - 2001
Globalcode – Open4education
Benefícios
● Autonomia aos times
● Reduzir erros
● Reduzir estresse
● Flexibilidade de Implantação
● Prática leva a perfeição
● Todo check-in é uma versão em
potencial
Globalcode – Open4education
8 Princípios
1. Criar um processo de confiabilidade e repetitividade de entrega de versão2. Automatize quase tudo3. Mantenha tudo sob controle de versão4. Se é difícil, faça com mais frequência e amenize o sofrimento5. A qualidade DEVE estar presente desde o início6. Pronto quer dizer versão entregue7. Todos são responsáveis pelo processo de entrega8. Melhoria Contínua
Globalcode – Open4education
Pipeline de Implantação
● Implementação automatizada do processo de compilar todas as partes de uma aplicação, implantá-las em um ambiente qualquer – homologação ou produção – testá-la e efetuar sua entrega final.
Globalcode – Open4education
Pipeline de Implantação
Globalcode – Open4education
Práticas
● Compile seus binários somente uma vez● Faça a implantação da mesma maneira em cada ambiente● Use Smoke Tests● Implante em uma cópia de Produção● Se qualquer parte do pipeline falhar, pare o processo
Globalcode – Open4education
Continuous Delivery
http://www.rubiconred.com/continuous-delivery-for-oracle-soa-and-bpm/
Globalcode – Open4education
Ferramentas
Globalcode – Open4education
Nosso Pipeline
CommitStage
Deploy DSV
Smoke Tests
Deploy QLT
Smoke Tests
Testes Regressivos
Testes de Performance
Deploy PRD
Exportar XML
Exportar XML
Globalcode – Open4education
Globalcode – Open4education
Nosso Pipeline
CommitStage
Deploy DSV
Smoke Tests
Deploy QLT
Smoke Tests
Testes Regressivos
Testes de Performance
Deploy PRD
Exportar XML
Exportar XML
Globalcode – Open4education
Commit Stage
● Entrada para o Pipeline de Implantação
● Feedback para os devs
● Entrada: Código - Saída: Binários e Relatórios
● Validate + build EAR
Globalcode – Open4education
Nosso Pipeline
CommitStage
Deploy DSV
Smoke Tests
Deploy QLT
Smoke Tests
Testes Regressivos
Testes de Performance
Deploy PRD
Exportar XML
Exportar XML
Globalcode – Open4education
Deploys
Globalcode – Open4education
Deploys
Globalcode – Open4education
Nosso Pipeline
CommitStage
Deploy DSV
Smoke Tests
Deploy QLT
Smoke Tests
Testes Regressivos
Testes de Performance
Deploy PRD
Exportar XML
Exportar XML
Globalcode – Open4education
Testes Automatizados
● Smoke Tests
● Testes Regressivos
● Testes de Performance
Globalcode – Open4education
Promover para QLT
Globalcode – Open4education
Promover para QLT
Globalcode – Open4education
Smoke Tests
Globalcode – Open4education
Exportar XML
Globalcode – Open4education
Promover para PRD
Globalcode – Open4education
Nosso Pipeline
CommitStage
Deploy DSV
Smoke Tests
Deploy QLT
Smoke Tests
Testes Regressivos
Testes de Performance
Deploy PRD
Exportar XML
Exportar XML
Globalcode – Open4education
Testes Regressivos
Globalcode – Open4education
Nosso Pipeline
CommitStage
Deploy DSV
Smoke Tests
Deploy QLT
Smoke Tests
Testes Regressivos
Testes de Performance
Deploy PRD
Exportar XML
Exportar XML
Globalcode – Open4education
Testes de Performance
Globalcode – Open4education
Processo de deploy - Pré Continuous Delivery
Pacote
Globalcode – Open4education
Processo de deploy - Continuous Delivery
Pacote
Globalcode – Open4education
Serviços X Pipelines
● 54 serviços com 207 operações (7 anos)
● 37 pipelines de SOA implementados em (6 meses)
Globalcode – Open4education
Próximos Passos
● DevOps (Docker/Vagrant/Puppet);
● Métricas em Tempo Real - Splunk;
● Devs fazendo Deploy em PRD;
Globalcode – Open4education
Referências
● http://manifestoagil.com.br/● Continuous Delivery in a Complex S.O.A● Continuous Delivery at Google● The Evolution of Continuous Delivery at Scale @ Linkedin● Deploying the Netflix API● http://pt.slideshare.net/richardlennox/continuous-deliverysoa-final● http://techblog.netflix.com/2013/08/deploying-netflix-api.html● https://gradle.org/continuous-integration-at-linkedin-gradle-2013-summit/● http://www.rubiconred.com/continuous-delivery-for-oracle-soa-and-bpm/● http://www.tomakehurst.com/surviving-soa-with-continuous-delivery-and-wiremock/● https://prezi.com/ityu35i6ppft/devops-and-continuous-delivery-tibcostack/● https://docs.tibco.com/pub/designer/5.8.0_november_2012/pdf/tib_Designer_usr.pdf
Globalcode – Open4education
Referências
Globalcode – Open4education
Obrigado!#TheDevConf
Marcelo Fernandes & Samanta Cicilia mcf2000@gmail.com/@MCarvalhoF
samycici@gmail.com/@samantacicilia
Globalcode – Open4education
Continuous Delivery & APIs: Evoluindo uma Arquitetura Orientada
a Serviços
top related