SlideShare une entreprise Scribd logo
1  sur  34
Télécharger pour lire hors ligne
Continuous Delivery
Do zero à entrega contínua de software de valor
2 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Sócio da especificacoes.com - Consultoria de ALM - e Sócio-Diretor de
Negócios na esx - empresa focada na entrega contínua de software de valor
através de desenvolvimento de software ágil.
Teve uma carreira em TI passando pelas áreas de desenvolvimento, testes,
requisitos, operação, consultoria de TI e negócio e consultoria em ALM.
Atuou em diversos projetos de clientes de grande porte e complexidade.
Engenheiro de Software formado pela Universidade Federal de Uberlândia, é
MCP (Microsoft Certified Professional) e certificado Scrum Master pela
Scrum.org.
Felipe Rezende – Sócio da esx
felipe.rezende@esx.com.br
@felipersb
3 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
EVOLUÇÃO DAS APLICAÇÕES
4 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
EVOLUÇÃO DAS APLICAÇÕES
MAINFRAME
5 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
EVOLUÇÃO DAS APLICAÇÕES
CLIENT/SERVER
6 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
EVOLUÇÃO DAS APLICAÇÕES
WEB
7 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
EVOLUÇÃO DAS APLICAÇÕES
WEB 2.0 ...
8 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
EVOLUÇÃO DAS APLICAÇÕES
WEB 2.0 ...
9 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
DINAMISMO DOS NEGÓCIOS
10 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Continuous Delivery - Business
Continuous Deployment - TI
Continuous Integration - Dev
CONTINUOUS DELIVERY
11 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Vou contar a história de um time.
Um time normal, de pessoas normais, sem super-heróis!
Um time que só estava afim de fazer algo diferente.
Vou contar o percurso que este time percorreu para sair do zero até alcançar o estado de entrega contínua de software
de valor.
12 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Definição da plataforma de ALM
Estruturação dos fontes no repositório
Continuous Delivery – Nível 100
Gestão de Fontes / SCM
13 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Extreme Go Horse
EGH
Continuous Delivery – Nível 100
Metodologia
14 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Continuous Delivery – Nível 100
Geração manual de builds ( F5 )
Deployment manual
Build Deploy Operate
15 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
La Garantia Soy Yo
Continuous Delivery – Nível 100
Qualidade
16 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Definidação da estratégia de branch
Release Branch
Definição de políticas de checkin
Code Analysis, Code Metrics, Rastreabilidade, Comentários
Continuous Delivery – Nível 200
Gestão de Fontes / SCM
17 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Processo Ágil
SCRUM
Continuous Delivery – Nível 200
Metodologia
18 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Automação de Build
Build noturno
Continuous Delivery – Nível 200
Build Deploy Operate
19 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Descoberta das métricas de qualidade
Nível de cobertura por testes automatizados, análise estática de código, complexidade
ciclomática, profundidade de herança, acoplamento de classes, linhas de código
Início da escrita de testes unitários
Definição da 1ª meta do nível de cobertura de testes
Criação de planos e casos de testes funcionais
Cobertura dos principais cenários de negócio
Continuous Delivery – Nível 200
Qualidade
20 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Continuous Integration
Todo mundo “comitando” na baseline todo dia
Continuous Delivery – Nível 300
Gestão de Fontes / SCM
21 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Processo ágil fluido
Sistemas Complexos Adaptativos
Múltiplas causas por efeito, efeitos opostos, atraso entre causa e efeito
Mais pensamento estatístico / probabilístico, menos pensamento determinístico
Continuous Delivery – Nível 300
Metodologia
22 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Continuous Integration
Gatilho da automação de build
Continuous Delivery – Nível 300
Build Deploy Operate
23 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Avaliação contínua das métricas de qualidade
Maintainability Index, nível de cobertura de testes automatizados
Automação dos casos de testes
Testes de interface automatizados
Continuous Delivery – Nível 300
Qualidade
24 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Gestão madura dos fontes
Continuous Delivery – Nível 400
Gestão de Fontes / SCM
25 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Kanban
Mais gestão de throughput e leadtime, menos gestão de ocupação
Utilização de conceitos como
liquidez, gargalo, sistema puxado, classes de serviços, depreciação,
custo de atraso, LRM (last responsible moment), MTTR (main time to repair)
Management 3.0
energize, empower, align constraints, develop competences, grow, improve
Continuous Delivery – Nível 400
Metodologia
26 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Continuous Deployment
Distribuição automatizada para ambientes de homologação através
da integração contínua
Build Test Deploy
Gerenciamento automático dos ambientes de teste
One-click Deploy
para ambiente de produção
Continuous Delivery – Nível 400
Build Deploy Operate
27 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Continuous Feedback
TDD, Pair Programming, Code Review, User Feedback
Análise de Impacto
Continuous Delivery – Nível 400
Qualidade
28 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Políticas de branch definidas
Estratégia de branch: No Branch
Feature Flags
Off, on, staff, user-list
Users ramp-up
0-100%, A/B Test
Continuous Delivery – Nível 500
Gestão de Fontes / SCM
29 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
ShuHaRi
Desapego
Continuous Improvment
Build-Meassure-Learn, Kaizen
Felicidade
Happiness Index, Kudobox, Moving Motivators
Continuous Delivery – Nível 500
Metodologia
30 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Continuous Delivery
Distribuição automatizada para ambiente de produção através da
integração contínua
DevOps
Monitoramento de aplicações críticas em produção
Information Radiators
Dashboards e alertas
Continuous Delivery – Nível 500
Build Deploy Operate
31 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Definition of Ready + Definition of Done
Quality Enablement
Só comitta com teste unitário, funcional, regressão, code review,
definition of done, acceptance criteria
Eventual teste de carga
Continuous Delivery – Nível 500
Qualidade
32 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014
Continuous Delivery – Nível 500
Qualidade
“We don’t optimize for being right. We optimize for
quickly detecting when we’re wrong.”
Kellan Elliott-McCrea, CTO Etsy.com
www.esx.com.br
Quer experimentar fazer desse jeito?

Contenu connexe

En vedette

Promesses et réalités du marketing dans les réseaux sociaux
Promesses et réalités du marketing dans les réseaux sociauxPromesses et réalités du marketing dans les réseaux sociaux
Promesses et réalités du marketing dans les réseaux sociauxLa French Tech Rennes St Malo
 
Amina thema ombudsmann aktuell
Amina thema ombudsmann aktuellAmina thema ombudsmann aktuell
Amina thema ombudsmann aktuellICV
 
PräSentation Forschungsdialog Graz Polt
PräSentation Forschungsdialog Graz PoltPräSentation Forschungsdialog Graz Polt
PräSentation Forschungsdialog Graz PoltWolfgang_Polt
 
Wheelchair Ramps I Foldable Ramp Catalogue
Wheelchair Ramps  I Foldable Ramp CatalogueWheelchair Ramps  I Foldable Ramp Catalogue
Wheelchair Ramps I Foldable Ramp CatalogueMelis BÜYÜKSAN
 
Potenziale und Erlösmodelle im Mobile Gaming
Potenziale und Erlösmodelle im Mobile GamingPotenziale und Erlösmodelle im Mobile Gaming
Potenziale und Erlösmodelle im Mobile GamingDavid Hiltscher
 
A Virtual R&D Organization
A Virtual R&D OrganizationA Virtual R&D Organization
A Virtual R&D OrganizationMichael Barger
 
Portfolio alexis colin
Portfolio alexis colinPortfolio alexis colin
Portfolio alexis colinalexiscolin
 
Aquitem - R&D Zefid pour aec le 4 02 2011
Aquitem - R&D Zefid pour aec le 4 02 2011Aquitem - R&D Zefid pour aec le 4 02 2011
Aquitem - R&D Zefid pour aec le 4 02 2011Philbx
 
Súper junior
Súper juniorSúper junior
Súper juniorchamyy14
 
Informativo Jacaranda Roncarly
Informativo Jacaranda RoncarlyInformativo Jacaranda Roncarly
Informativo Jacaranda RoncarlyRoncarly Silva
 
o meu maoir projecto sou eu
o meu maoir projecto sou euo meu maoir projecto sou eu
o meu maoir projecto sou eunabilaingles
 
Presentación Proyecto Ramp Peru DifusióN Lima
Presentación Proyecto Ramp Peru DifusióN LimaPresentación Proyecto Ramp Peru DifusióN Lima
Presentación Proyecto Ramp Peru DifusióN Limaguestac6b8d
 
Menschen statt Maschinen - warum der Journalismus sich ändern muss
Menschen statt Maschinen - warum der Journalismus sich ändern mussMenschen statt Maschinen - warum der Journalismus sich ändern muss
Menschen statt Maschinen - warum der Journalismus sich ändern mussJan Eggers
 
H³-HABILIDADES DO HIP HOP
H³-HABILIDADES DO HIP HOPH³-HABILIDADES DO HIP HOP
H³-HABILIDADES DO HIP HOPguestc52276a
 

En vedette (20)

Beyoncé
BeyoncéBeyoncé
Beyoncé
 
Promesses et réalités du marketing dans les réseaux sociaux
Promesses et réalités du marketing dans les réseaux sociauxPromesses et réalités du marketing dans les réseaux sociaux
Promesses et réalités du marketing dans les réseaux sociaux
 
Amina thema ombudsmann aktuell
Amina thema ombudsmann aktuellAmina thema ombudsmann aktuell
Amina thema ombudsmann aktuell
 
PräSentation Forschungsdialog Graz Polt
PräSentation Forschungsdialog Graz PoltPräSentation Forschungsdialog Graz Polt
PräSentation Forschungsdialog Graz Polt
 
Veranstaltungsausblick auf Samstag.pdf
Veranstaltungsausblick auf Samstag.pdfVeranstaltungsausblick auf Samstag.pdf
Veranstaltungsausblick auf Samstag.pdf
 
Csl 3 lacs
Csl 3 lacsCsl 3 lacs
Csl 3 lacs
 
Wheelchair Ramps I Foldable Ramp Catalogue
Wheelchair Ramps  I Foldable Ramp CatalogueWheelchair Ramps  I Foldable Ramp Catalogue
Wheelchair Ramps I Foldable Ramp Catalogue
 
Potenziale und Erlösmodelle im Mobile Gaming
Potenziale und Erlösmodelle im Mobile GamingPotenziale und Erlösmodelle im Mobile Gaming
Potenziale und Erlösmodelle im Mobile Gaming
 
A Virtual R&D Organization
A Virtual R&D OrganizationA Virtual R&D Organization
A Virtual R&D Organization
 
Portfolio alexis colin
Portfolio alexis colinPortfolio alexis colin
Portfolio alexis colin
 
Esprit N.0
Esprit N.0Esprit N.0
Esprit N.0
 
Aquitem - R&D Zefid pour aec le 4 02 2011
Aquitem - R&D Zefid pour aec le 4 02 2011Aquitem - R&D Zefid pour aec le 4 02 2011
Aquitem - R&D Zefid pour aec le 4 02 2011
 
Súper junior
Súper juniorSúper junior
Súper junior
 
Informativo Jacaranda Roncarly
Informativo Jacaranda RoncarlyInformativo Jacaranda Roncarly
Informativo Jacaranda Roncarly
 
Generos
GenerosGeneros
Generos
 
o meu maoir projecto sou eu
o meu maoir projecto sou euo meu maoir projecto sou eu
o meu maoir projecto sou eu
 
Presentación Proyecto Ramp Peru DifusióN Lima
Presentación Proyecto Ramp Peru DifusióN LimaPresentación Proyecto Ramp Peru DifusióN Lima
Presentación Proyecto Ramp Peru DifusióN Lima
 
Menschen statt Maschinen - warum der Journalismus sich ändern muss
Menschen statt Maschinen - warum der Journalismus sich ändern mussMenschen statt Maschinen - warum der Journalismus sich ändern muss
Menschen statt Maschinen - warum der Journalismus sich ändern muss
 
H³-HABILIDADES DO HIP HOP
H³-HABILIDADES DO HIP HOPH³-HABILIDADES DO HIP HOP
H³-HABILIDADES DO HIP HOP
 
Empresa deportiva
Empresa deportivaEmpresa deportiva
Empresa deportiva
 

Plus de DevCamp Campinas

Dylan Butler & Oliver Hager - Building a cross platform cryptocurrency app
Dylan Butler & Oliver Hager - Building a cross platform cryptocurrency appDylan Butler & Oliver Hager - Building a cross platform cryptocurrency app
Dylan Butler & Oliver Hager - Building a cross platform cryptocurrency appDevCamp Campinas
 
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...DevCamp Campinas
 
Gabriel Pacheco e Felipe Cardoso - Nextel + React Native: Lições aprendidas a...
Gabriel Pacheco e Felipe Cardoso - Nextel + React Native: Lições aprendidas a...Gabriel Pacheco e Felipe Cardoso - Nextel + React Native: Lições aprendidas a...
Gabriel Pacheco e Felipe Cardoso - Nextel + React Native: Lições aprendidas a...DevCamp Campinas
 
Everton Gago - Ciência de Dados: O melhor caminho para alinhar o produto com ...
Everton Gago - Ciência de Dados: O melhor caminho para alinhar o produto com ...Everton Gago - Ciência de Dados: O melhor caminho para alinhar o produto com ...
Everton Gago - Ciência de Dados: O melhor caminho para alinhar o produto com ...DevCamp Campinas
 
Eiti Kimura - Analisador de dados automatizado utilizando machine learning
Eiti Kimura - Analisador de dados automatizado utilizando machine learningEiti Kimura - Analisador de dados automatizado utilizando machine learning
Eiti Kimura - Analisador de dados automatizado utilizando machine learningDevCamp Campinas
 
Bárbara Silveira e Giovanna Victorino - Desenvolva também para TVs (AppleTV e...
Bárbara Silveira e Giovanna Victorino - Desenvolva também para TVs (AppleTV e...Bárbara Silveira e Giovanna Victorino - Desenvolva também para TVs (AppleTV e...
Bárbara Silveira e Giovanna Victorino - Desenvolva também para TVs (AppleTV e...DevCamp Campinas
 
Leonardo Zamariola - High Order Functions e Functional Interfaces
Leonardo Zamariola - High Order Functions e Functional InterfacesLeonardo Zamariola - High Order Functions e Functional Interfaces
Leonardo Zamariola - High Order Functions e Functional InterfacesDevCamp Campinas
 
Lara Rejane - Gestão ágil de pessoas
Lara Rejane - Gestão ágil de pessoasLara Rejane - Gestão ágil de pessoas
Lara Rejane - Gestão ágil de pessoasDevCamp Campinas
 
Eduardo Merighi - Escalabilidade tecnológica de uma fintech: como a Neon faz?
Eduardo Merighi - Escalabilidade tecnológica de uma fintech: como a Neon faz?Eduardo Merighi - Escalabilidade tecnológica de uma fintech: como a Neon faz?
Eduardo Merighi - Escalabilidade tecnológica de uma fintech: como a Neon faz?DevCamp Campinas
 
Erick Zanardo - Desenvolvimento de Jogos em Flutter
Erick Zanardo - Desenvolvimento de Jogos em FlutterErick Zanardo - Desenvolvimento de Jogos em Flutter
Erick Zanardo - Desenvolvimento de Jogos em FlutterDevCamp Campinas
 
Davi Silva e Izabela Amaral - Oferecendo soluções de negócio mais assertivas ...
Davi Silva e Izabela Amaral - Oferecendo soluções de negócio mais assertivas ...Davi Silva e Izabela Amaral - Oferecendo soluções de negócio mais assertivas ...
Davi Silva e Izabela Amaral - Oferecendo soluções de negócio mais assertivas ...DevCamp Campinas
 
Andre Fossa - Reinventando a Nextel: como a transformação digital ajudou a qu...
Andre Fossa - Reinventando a Nextel: como a transformação digital ajudou a qu...Andre Fossa - Reinventando a Nextel: como a transformação digital ajudou a qu...
Andre Fossa - Reinventando a Nextel: como a transformação digital ajudou a qu...DevCamp Campinas
 
Alceu Bravo - Intraempreendedorismo – desafios da inovação para quem tem base...
Alceu Bravo - Intraempreendedorismo – desafios da inovação para quem tem base...Alceu Bravo - Intraempreendedorismo – desafios da inovação para quem tem base...
Alceu Bravo - Intraempreendedorismo – desafios da inovação para quem tem base...DevCamp Campinas
 
Fábio Lima Santos - Desenhando aplicações que evoluem
Fábio Lima Santos - Desenhando aplicações que evoluemFábio Lima Santos - Desenhando aplicações que evoluem
Fábio Lima Santos - Desenhando aplicações que evoluemDevCamp Campinas
 
João Emilio Santos Bento da Silva - Estratégia de APIs
João Emilio Santos Bento da Silva - Estratégia de APIsJoão Emilio Santos Bento da Silva - Estratégia de APIs
João Emilio Santos Bento da Silva - Estratégia de APIsDevCamp Campinas
 
José Guedes - Como encaramos quando as coisas dão errado
José Guedes - Como encaramos quando as coisas dão erradoJosé Guedes - Como encaramos quando as coisas dão errado
José Guedes - Como encaramos quando as coisas dão erradoDevCamp Campinas
 
Rafael Calsaverini - Inteligência Artificial para recrutar pessoas – Tecnolog...
Rafael Calsaverini - Inteligência Artificial para recrutar pessoas – Tecnolog...Rafael Calsaverini - Inteligência Artificial para recrutar pessoas – Tecnolog...
Rafael Calsaverini - Inteligência Artificial para recrutar pessoas – Tecnolog...DevCamp Campinas
 
Isac Sacchi e Souza - Migrando uma infraestrutura mutável para imutável e Kub...
Isac Sacchi e Souza - Migrando uma infraestrutura mutável para imutável e Kub...Isac Sacchi e Souza - Migrando uma infraestrutura mutável para imutável e Kub...
Isac Sacchi e Souza - Migrando uma infraestrutura mutável para imutável e Kub...DevCamp Campinas
 
Ingrid Barth - Blockchain, Criptomoedas e a nova maneira de entender o dinheiro
Ingrid Barth - Blockchain, Criptomoedas e a nova maneira de entender o dinheiroIngrid Barth - Blockchain, Criptomoedas e a nova maneira de entender o dinheiro
Ingrid Barth - Blockchain, Criptomoedas e a nova maneira de entender o dinheiroDevCamp Campinas
 
Igor Hjelmstrom Ribeiro - Bitcoin: desafios de segurança frente à ataques de...
Igor Hjelmstrom Ribeiro -  Bitcoin: desafios de segurança frente à ataques de...Igor Hjelmstrom Ribeiro -  Bitcoin: desafios de segurança frente à ataques de...
Igor Hjelmstrom Ribeiro - Bitcoin: desafios de segurança frente à ataques de...DevCamp Campinas
 

Plus de DevCamp Campinas (20)

Dylan Butler & Oliver Hager - Building a cross platform cryptocurrency app
Dylan Butler & Oliver Hager - Building a cross platform cryptocurrency appDylan Butler & Oliver Hager - Building a cross platform cryptocurrency app
Dylan Butler & Oliver Hager - Building a cross platform cryptocurrency app
 
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
Thaissa Bueno - Implantando modelos Deep Learning em cluster Kubernetes com G...
 
Gabriel Pacheco e Felipe Cardoso - Nextel + React Native: Lições aprendidas a...
Gabriel Pacheco e Felipe Cardoso - Nextel + React Native: Lições aprendidas a...Gabriel Pacheco e Felipe Cardoso - Nextel + React Native: Lições aprendidas a...
Gabriel Pacheco e Felipe Cardoso - Nextel + React Native: Lições aprendidas a...
 
Everton Gago - Ciência de Dados: O melhor caminho para alinhar o produto com ...
Everton Gago - Ciência de Dados: O melhor caminho para alinhar o produto com ...Everton Gago - Ciência de Dados: O melhor caminho para alinhar o produto com ...
Everton Gago - Ciência de Dados: O melhor caminho para alinhar o produto com ...
 
Eiti Kimura - Analisador de dados automatizado utilizando machine learning
Eiti Kimura - Analisador de dados automatizado utilizando machine learningEiti Kimura - Analisador de dados automatizado utilizando machine learning
Eiti Kimura - Analisador de dados automatizado utilizando machine learning
 
Bárbara Silveira e Giovanna Victorino - Desenvolva também para TVs (AppleTV e...
Bárbara Silveira e Giovanna Victorino - Desenvolva também para TVs (AppleTV e...Bárbara Silveira e Giovanna Victorino - Desenvolva também para TVs (AppleTV e...
Bárbara Silveira e Giovanna Victorino - Desenvolva também para TVs (AppleTV e...
 
Leonardo Zamariola - High Order Functions e Functional Interfaces
Leonardo Zamariola - High Order Functions e Functional InterfacesLeonardo Zamariola - High Order Functions e Functional Interfaces
Leonardo Zamariola - High Order Functions e Functional Interfaces
 
Lara Rejane - Gestão ágil de pessoas
Lara Rejane - Gestão ágil de pessoasLara Rejane - Gestão ágil de pessoas
Lara Rejane - Gestão ágil de pessoas
 
Eduardo Merighi - Escalabilidade tecnológica de uma fintech: como a Neon faz?
Eduardo Merighi - Escalabilidade tecnológica de uma fintech: como a Neon faz?Eduardo Merighi - Escalabilidade tecnológica de uma fintech: como a Neon faz?
Eduardo Merighi - Escalabilidade tecnológica de uma fintech: como a Neon faz?
 
Erick Zanardo - Desenvolvimento de Jogos em Flutter
Erick Zanardo - Desenvolvimento de Jogos em FlutterErick Zanardo - Desenvolvimento de Jogos em Flutter
Erick Zanardo - Desenvolvimento de Jogos em Flutter
 
Davi Silva e Izabela Amaral - Oferecendo soluções de negócio mais assertivas ...
Davi Silva e Izabela Amaral - Oferecendo soluções de negócio mais assertivas ...Davi Silva e Izabela Amaral - Oferecendo soluções de negócio mais assertivas ...
Davi Silva e Izabela Amaral - Oferecendo soluções de negócio mais assertivas ...
 
Andre Fossa - Reinventando a Nextel: como a transformação digital ajudou a qu...
Andre Fossa - Reinventando a Nextel: como a transformação digital ajudou a qu...Andre Fossa - Reinventando a Nextel: como a transformação digital ajudou a qu...
Andre Fossa - Reinventando a Nextel: como a transformação digital ajudou a qu...
 
Alceu Bravo - Intraempreendedorismo – desafios da inovação para quem tem base...
Alceu Bravo - Intraempreendedorismo – desafios da inovação para quem tem base...Alceu Bravo - Intraempreendedorismo – desafios da inovação para quem tem base...
Alceu Bravo - Intraempreendedorismo – desafios da inovação para quem tem base...
 
Fábio Lima Santos - Desenhando aplicações que evoluem
Fábio Lima Santos - Desenhando aplicações que evoluemFábio Lima Santos - Desenhando aplicações que evoluem
Fábio Lima Santos - Desenhando aplicações que evoluem
 
João Emilio Santos Bento da Silva - Estratégia de APIs
João Emilio Santos Bento da Silva - Estratégia de APIsJoão Emilio Santos Bento da Silva - Estratégia de APIs
João Emilio Santos Bento da Silva - Estratégia de APIs
 
José Guedes - Como encaramos quando as coisas dão errado
José Guedes - Como encaramos quando as coisas dão erradoJosé Guedes - Como encaramos quando as coisas dão errado
José Guedes - Como encaramos quando as coisas dão errado
 
Rafael Calsaverini - Inteligência Artificial para recrutar pessoas – Tecnolog...
Rafael Calsaverini - Inteligência Artificial para recrutar pessoas – Tecnolog...Rafael Calsaverini - Inteligência Artificial para recrutar pessoas – Tecnolog...
Rafael Calsaverini - Inteligência Artificial para recrutar pessoas – Tecnolog...
 
Isac Sacchi e Souza - Migrando uma infraestrutura mutável para imutável e Kub...
Isac Sacchi e Souza - Migrando uma infraestrutura mutável para imutável e Kub...Isac Sacchi e Souza - Migrando uma infraestrutura mutável para imutável e Kub...
Isac Sacchi e Souza - Migrando uma infraestrutura mutável para imutável e Kub...
 
Ingrid Barth - Blockchain, Criptomoedas e a nova maneira de entender o dinheiro
Ingrid Barth - Blockchain, Criptomoedas e a nova maneira de entender o dinheiroIngrid Barth - Blockchain, Criptomoedas e a nova maneira de entender o dinheiro
Ingrid Barth - Blockchain, Criptomoedas e a nova maneira de entender o dinheiro
 
Igor Hjelmstrom Ribeiro - Bitcoin: desafios de segurança frente à ataques de...
Igor Hjelmstrom Ribeiro -  Bitcoin: desafios de segurança frente à ataques de...Igor Hjelmstrom Ribeiro -  Bitcoin: desafios de segurança frente à ataques de...
Igor Hjelmstrom Ribeiro - Bitcoin: desafios de segurança frente à ataques de...
 

DevCamp 2014 - Continuous Delivery - Felipe Rezende

  • 1. Continuous Delivery Do zero à entrega contínua de software de valor
  • 2. 2 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Sócio da especificacoes.com - Consultoria de ALM - e Sócio-Diretor de Negócios na esx - empresa focada na entrega contínua de software de valor através de desenvolvimento de software ágil. Teve uma carreira em TI passando pelas áreas de desenvolvimento, testes, requisitos, operação, consultoria de TI e negócio e consultoria em ALM. Atuou em diversos projetos de clientes de grande porte e complexidade. Engenheiro de Software formado pela Universidade Federal de Uberlândia, é MCP (Microsoft Certified Professional) e certificado Scrum Master pela Scrum.org. Felipe Rezende – Sócio da esx felipe.rezende@esx.com.br @felipersb
  • 3. 3 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 EVOLUÇÃO DAS APLICAÇÕES
  • 4. 4 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 EVOLUÇÃO DAS APLICAÇÕES MAINFRAME
  • 5. 5 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 EVOLUÇÃO DAS APLICAÇÕES CLIENT/SERVER
  • 6. 6 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 EVOLUÇÃO DAS APLICAÇÕES WEB
  • 7. 7 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 EVOLUÇÃO DAS APLICAÇÕES WEB 2.0 ...
  • 8. 8 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 EVOLUÇÃO DAS APLICAÇÕES WEB 2.0 ...
  • 9. 9 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 DINAMISMO DOS NEGÓCIOS
  • 10. 10 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Continuous Delivery - Business Continuous Deployment - TI Continuous Integration - Dev CONTINUOUS DELIVERY
  • 11. 11 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Vou contar a história de um time. Um time normal, de pessoas normais, sem super-heróis! Um time que só estava afim de fazer algo diferente. Vou contar o percurso que este time percorreu para sair do zero até alcançar o estado de entrega contínua de software de valor.
  • 12. 12 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Definição da plataforma de ALM Estruturação dos fontes no repositório Continuous Delivery – Nível 100 Gestão de Fontes / SCM
  • 13. 13 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Extreme Go Horse EGH Continuous Delivery – Nível 100 Metodologia
  • 14. 14 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Continuous Delivery – Nível 100 Geração manual de builds ( F5 ) Deployment manual Build Deploy Operate
  • 15. 15 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 La Garantia Soy Yo Continuous Delivery – Nível 100 Qualidade
  • 16. 16 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Definidação da estratégia de branch Release Branch Definição de políticas de checkin Code Analysis, Code Metrics, Rastreabilidade, Comentários Continuous Delivery – Nível 200 Gestão de Fontes / SCM
  • 17. 17 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Processo Ágil SCRUM Continuous Delivery – Nível 200 Metodologia
  • 18. 18 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Automação de Build Build noturno Continuous Delivery – Nível 200 Build Deploy Operate
  • 19. 19 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Descoberta das métricas de qualidade Nível de cobertura por testes automatizados, análise estática de código, complexidade ciclomática, profundidade de herança, acoplamento de classes, linhas de código Início da escrita de testes unitários Definição da 1ª meta do nível de cobertura de testes Criação de planos e casos de testes funcionais Cobertura dos principais cenários de negócio Continuous Delivery – Nível 200 Qualidade
  • 20. 20 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Continuous Integration Todo mundo “comitando” na baseline todo dia Continuous Delivery – Nível 300 Gestão de Fontes / SCM
  • 21. 21 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Processo ágil fluido Sistemas Complexos Adaptativos Múltiplas causas por efeito, efeitos opostos, atraso entre causa e efeito Mais pensamento estatístico / probabilístico, menos pensamento determinístico Continuous Delivery – Nível 300 Metodologia
  • 22. 22 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Continuous Integration Gatilho da automação de build Continuous Delivery – Nível 300 Build Deploy Operate
  • 23. 23 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Avaliação contínua das métricas de qualidade Maintainability Index, nível de cobertura de testes automatizados Automação dos casos de testes Testes de interface automatizados Continuous Delivery – Nível 300 Qualidade
  • 24. 24 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Gestão madura dos fontes Continuous Delivery – Nível 400 Gestão de Fontes / SCM
  • 25. 25 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Kanban Mais gestão de throughput e leadtime, menos gestão de ocupação Utilização de conceitos como liquidez, gargalo, sistema puxado, classes de serviços, depreciação, custo de atraso, LRM (last responsible moment), MTTR (main time to repair) Management 3.0 energize, empower, align constraints, develop competences, grow, improve Continuous Delivery – Nível 400 Metodologia
  • 26. 26 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Continuous Deployment Distribuição automatizada para ambientes de homologação através da integração contínua Build Test Deploy Gerenciamento automático dos ambientes de teste One-click Deploy para ambiente de produção Continuous Delivery – Nível 400 Build Deploy Operate
  • 27. 27 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Continuous Feedback TDD, Pair Programming, Code Review, User Feedback Análise de Impacto Continuous Delivery – Nível 400 Qualidade
  • 28. 28 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Políticas de branch definidas Estratégia de branch: No Branch Feature Flags Off, on, staff, user-list Users ramp-up 0-100%, A/B Test Continuous Delivery – Nível 500 Gestão de Fontes / SCM
  • 29. 29 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 ShuHaRi Desapego Continuous Improvment Build-Meassure-Learn, Kaizen Felicidade Happiness Index, Kudobox, Moving Motivators Continuous Delivery – Nível 500 Metodologia
  • 30. 30 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Continuous Delivery Distribuição automatizada para ambiente de produção através da integração contínua DevOps Monitoramento de aplicações críticas em produção Information Radiators Dashboards e alertas Continuous Delivery – Nível 500 Build Deploy Operate
  • 31. 31 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Definition of Ready + Definition of Done Quality Enablement Só comitta com teste unitário, funcional, regressão, code review, definition of done, acceptance criteria Eventual teste de carga Continuous Delivery – Nível 500 Qualidade
  • 32. 32 | Continuous Delivery – do zero à entrega contínua de software de valor – Felipe Rezende – DevCamp 2014 Continuous Delivery – Nível 500 Qualidade
  • 33. “We don’t optimize for being right. We optimize for quickly detecting when we’re wrong.” Kellan Elliott-McCrea, CTO Etsy.com