[agile brazil] entrega contínua na infoglobo: gerando valor em 2 horas

119
Entrega Contínua na Infoglobo: gerando valor em 2 horas @samantacicilia

Upload: samanta-cicilia

Post on 28-Jan-2018

653 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Entrega Contínua na Infoglobo:

gerando valor em 2 horas

@samantacicilia

Page 2: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 3: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 4: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 5: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 6: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

• Focada no Impresso em processo de migração para o digital;

Page 7: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

• Focada no Impresso em processo de migração para o digital;

• Agilidade nasceu em TI e está indo (gradualmente) para as áreas de negócio;

Page 8: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

• Focada no Impresso em processo de migração para o digital;

• Agilidade nasceu em TI e está indo (gradualmente) para as áreas de negócio;

Page 9: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Principais Plataformas

Page 10: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Principais Plataformas

Page 11: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Principais Plataformas

Page 12: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Números

Page 13: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Números

PageViews: >192M/mês

Page 14: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Números

PageViews: >192M/mês

Projetos: 55@2015

Page 15: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Números

PageViews: >192M/mês

Projetos: 55@2015

Funcionários: 2.200

Em TI: 135 + 128

Page 16: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 17: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

O mega deploy

da meia-noiteO mega deploy da meia-noite

Page 18: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 19: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Nossa maior prioridade é satisfazer o

cliente, através da entrega adiantada

e contínua de software de valor.

Manifesto Ágil - 2001

Page 20: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 21: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 22: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Pipeline de Implantação

Page 23: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

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.

Page 24: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

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.

Page 25: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

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.

Page 26: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Ferramentas

Page 27: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Ferramentas

Kvalito

QATools

Page 28: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Nosso Pipeline

Page 29: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 30: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 31: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Estágio de Commit

Page 32: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Estágio de Commit

Page 33: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Estágio de Commit

● Entrada: Código

○ compilar projeto;

○ executar testes unitários;

○ executar Sonar;

○ gerar binário;

○ armazenar no repositório (binário + propriedades).

Page 34: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Estágio de Commit

● Entrada: Código

○ compilar projeto;

○ executar testes unitários;

○ executar Sonar;

○ gerar binário;

○ armazenar no repositório (binário + propriedades).

● Saída: Binários e Relatórios

Page 35: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 36: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 37: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 38: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em INTEGRAÇÃO

Page 39: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em INTEGRAÇÃO

Page 40: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em INTEGRAÇÃO

● Entrada: Versão para Deploy

○ pegar binário no repositório;

○ verificar propriedades do binário (pode fazer deploy?);

○ executar deploy em Integração;

○ atualizar propriedades do binário.

Page 41: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em INTEGRAÇÃO

● Entrada: Versão para Deploy

○ pegar binário no repositório;

○ verificar propriedades do binário (pode fazer deploy?);

○ executar deploy em Integração;

○ atualizar propriedades do binário.

● Saída: Servidores e propriedades do binário atualizados

Page 42: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 43: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 44: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 45: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Promover para STAGING

Page 46: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 47: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 48: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy STAGING

Page 49: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy STAGING

Page 50: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em STAGING

Page 51: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em STAGING

Page 52: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em STAGING

● Entrada: Versão para Deploy

○ pegar binário no repositório;

○ verificar propriedades do binário (pode fazer deploy?);

○ executar deploy em Staging;

○ atualizar propriedades do binário.

Page 53: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em STAGING

● Entrada: Versão para Deploy

○ pegar binário no repositório;

○ verificar propriedades do binário (pode fazer deploy?);

○ executar deploy em Staging;

○ atualizar propriedades do binário.

● Saída: Servidores e propriedades do binário atualizados

Page 54: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 55: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 56: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 57: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Promover para PRODUÇÃO

Page 58: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Promover para PRODUÇÃO

Page 59: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Promover para PRODUÇÃO

Page 60: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Promover para PRODUÇÃO

Page 61: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Promover para PRODUÇÃO

Page 62: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Promover para PRODUÇÃO

Page 63: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Promover para PRODUÇÃO

Page 64: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Análise de Log Automatizada

Page 65: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Análise de Log Automatizada

● Logs da Aplicação;

Page 66: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Análise de Log Automatizada

● Logs da Aplicação;

● Sumarização do TOP 15 erros que mais ocorreram;

Page 67: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Análise de Log Automatizada

● Logs da Aplicação;

● Sumarização do TOP 15 erros que mais ocorreram;

● Verificação de erros 404 e 50X;

Page 68: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Análise de Log Automatizada

● Logs da Aplicação;

● Sumarização do TOP 15 erros que mais ocorreram;

● Verificação de erros 404 e 50X;

● Envio de e-mail para todos os responsáveis;

Page 69: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Análise de Log Automatizada

● Logs da Aplicação;

● Sumarização do TOP 15 erros que mais ocorreram;

● Verificação de erros 404 e 50X;

● Envio de e-mail para todos os responsáveis;

● Tomada de decisão se o processo vai até o final (Deploy em PRODUÇÃO);

Page 70: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Análise de Log Automatizada

● Logs da Aplicação;

● Sumarização do TOP 15 erros que mais ocorreram;

● Verificação de erros 404 e 50X;

● Envio de e-mail para todos os responsáveis;

● Tomada de decisão se o processo vai até o final (Deploy em PRODUÇÃO);

● Muito importante para os produtos mais antigos;

Page 71: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Análise de Log Automatizada

● Logs da Aplicação;

● Sumarização do TOP 15 erros que mais ocorreram;

● Verificação de erros 404 e 50X;

● Envio de e-mail para todos os responsáveis;

● Tomada de decisão se o processo vai até o final (Deploy em PRODUÇÃO);

● Muito importante para os produtos mais antigos;

● Preocupação de OPS.

Page 72: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Análise de Log Automatizada

Page 73: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Testes de Performance Automatizados

Page 74: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Testes de Performance Automatizados● Scritps do Jmeter;

Page 75: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Testes de Performance Automatizados● Scritps do Jmeter;

● Cenários pré-definidos;

Page 76: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Testes de Performance Automatizados● Scritps do Jmeter;

● Cenários pré-definidos;

● Limite máximo aceitável de tempo.

Page 77: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Testes de Performance Automatizados● Scritps do Jmeter;

● Cenários pré-definidos;

● Limite máximo aceitável de tempo.

Page 78: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Abrir Coordenação de Mudança Automática

Page 79: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Abrir Coordenação de Mudança Automática

Page 80: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 81: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 82: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 83: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em PRODUÇÃO

Page 84: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em PRODUÇÃO

Page 85: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em PRODUÇÃO

Page 86: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em PRODUÇÃO

Page 87: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em PRODUÇÃO

● Entrada: Versão para Deploy

○ pegar binário no repositório;

○ verificar propriedades do binário (pode fazer deploy?);

○ executar deploy em Produção;

○ atualizar propriedades do binário.

Page 88: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Deploy em PRODUÇÃO

● Entrada: Versão para Deploy

○ pegar binário no repositório;

○ verificar propriedades do binário (pode fazer deploy?);

○ executar deploy em Produção;

○ atualizar propriedades do binário.

● Saída: Servidores e propriedades do binário atualizados

Page 89: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 90: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 91: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Resultados

Page 92: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Resultados

• Deploys por camadas (Tomcat, Apache, Varnish, Solr, Serviços);

Page 93: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Resultados

• Deploys por camadas (Tomcat, Apache, Varnish, Solr, Serviços);

• Deploy em qualquer horário;

Page 94: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Resultados

• Deploys por camadas (Tomcat, Apache, Varnish, Solr, Serviços);

• Deploy em qualquer horário;

• 90 pipelines em 1 ano;

Page 95: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Resultados

• Deploys por camadas (Tomcat, Apache, Varnish, Solr, Serviços);

• Deploy em qualquer horário;

• 90 pipelines em 1 ano;

Page 96: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Resultados

• Deploys por camadas (Tomcat, Apache, Varnish, Solr, Serviços);

• Deploy em qualquer horário;

• 90 pipelines em 1 ano;

• Devs fazendo Deploy em PRODUÇÃO (pelo Jenkins, é claro) \o/;

Page 97: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Resultados

• Deploys por camadas (Tomcat, Apache, Varnish, Solr, Serviços);

• Deploy em qualquer horário;

• 90 pipelines em 1 ano;

• Devs fazendo Deploy em PRODUÇÃO (pelo Jenkins, é claro) \o/;

• Redução do tempo de entrega

Page 98: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Alguns Resultados

• Deploys por camadas (Tomcat, Apache, Varnish, Solr, Serviços);

• Deploy em qualquer horário;

• 90 pipelines em 1 ano;

• Devs fazendo Deploy em PRODUÇÃO (pelo Jenkins, é claro) \o/;

• Redução do tempo de entrega (15 dias para 2 horas).

Page 99: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Ainda existem Desafios

Page 100: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Ainda existem Desafios

• Derrubar os mitos;

Page 101: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Ainda existem Desafios

• Derrubar os mitos;

• Testes Unitários e TDD;

Page 102: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Ainda existem Desafios

• Derrubar os mitos;

• Testes Unitários e TDD;

• DevOps;

Page 103: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Ainda existem Desafios

• Derrubar os mitos;

• Testes Unitários e TDD;

• DevOps;

• Mobile;

Page 104: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Ainda existem Desafios

• Derrubar os mitos;

• Testes Unitários e TDD;

• DevOps;

• Mobile;

• Disseminar o conhecimento sobre Entrega Contínua;

Page 105: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Ainda existem Desafios

• Derrubar os mitos;

• Testes Unitários e TDD;

• DevOps;

• Mobile;

• Disseminar o conhecimento sobre Entrega Contínua;

• Pipelines de alguns projetos antigos.

Page 106: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Ainda existem Desafios

• Derrubar os mitos;

• Testes Unitários e TDD;

• DevOps;

• Mobile;

• Disseminar o conhecimento sobre Entrega Contínua;

• Pipelines de alguns projetos antigos.

Page 107: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Próximos Passos

Page 108: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Próximos Passos

Page 109: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Próximos Passos• Incluir Banco de Dados no Pipeline;

Page 110: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Próximos Passos• Incluir Banco de Dados no Pipeline;

• Criar pipeline do legado;

Page 111: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Próximos Passos• Incluir Banco de Dados no Pipeline;

• Criar pipeline do legado;

• Pipeline pra mobile;

Page 112: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Próximos Passos• Incluir Banco de Dados no Pipeline;

• Criar pipeline do legado;

• Pipeline pra mobile;

• DevOps;

Page 113: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Próximos Passos• Incluir Banco de Dados no Pipeline;

• Criar pipeline do legado;

• Pipeline pra mobile;

• DevOps;

• Evoluir Dashboard de Métricas;

Page 114: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Próximos Passos• Incluir Banco de Dados no Pipeline;

• Criar pipeline do legado;

• Pipeline pra mobile;

• DevOps;

• Evoluir Dashboard de Métricas;

• Testes Automatizados de Segurança;

Page 115: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Próximos Passos• Incluir Banco de Dados no Pipeline;

• Criar pipeline do legado;

• Pipeline pra mobile;

• DevOps;

• Evoluir Dashboard de Métricas;

• Testes Automatizados de Segurança;

• Testes unitários de Javascript no Pipeline.

Page 116: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Referências

Page 117: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Referências

Page 118: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
Page 119: [Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas

Contatos

➔ testedesoftware.com

➔ rtstreinamentos.com.br

➔ medium.com/@samantacicilia

➔ Linkedin: Samanta Cicilia

➔ Twitter: @samantacicilia

➔ Slideshare: pt.slideshare.net/samantacicilia/

➔ Email: [email protected]

➔ Email: [email protected]