O que é DevOps? Introdução à abordagem pela IBM
-
Upload
felipe-freire -
Category
Technology
-
view
390 -
download
1
Transcript of O que é DevOps? Introdução à abordagem pela IBM
1
Apresentado por:
© IBM Corporation
O que é DevOps? Como acelerar a entrega de software sem perder qualidade Felipe Freire
Especialista DevOps [email protected]
twitter.com/pfelipebr
4 © IBM Corporation
Agenda
§ ‘Lean’ DevOps
§ DevOps no mundo real (e híbrido)
§ Resolvendo gargalos com o DevOps
§ Criando uma cultura de DevOps
§ Próximos passos
5 © IBM Corporation
Desenvolvimento Tradicional: Dev X Ops
Muro da confusão __
Preciso de mudanças
O ambiente tem que ser estável
6 © IBM Corporation
Desenvolvimento Terminei!
Build pronto para deployment.
7 © IBM Corporation
Deployments realizados por outras equipes (Ops)
9 © IBM Corporation
DevOps abordagem: Aplicar princípios Lean aceleram o feedback e reduzem o tempo para obter resultados
People
Process
Negócio
Clientes
1
3
2
1. Ideias em produção rapidamente 2. Pessoas utilizando 3. Feedback
Utilizar o feedback ao longo da esteira de entregas para melhorar continuamente: I. Aplicações entregues II. Ambientes entregues III. Processo de entrega de aplicações e ambientes
10 © IBM Corporation
DevOps não é apenas uma dessas coisas… são todas!
Pessoas
Processos Ferramentas
11 © IBM Corporation
O aprendizado tardio é a causa das falhas no desenvolvimento tradicional (waterfall)
Feedback: Meses ou anos para descobrir se uma idéia atende à necessidade de negócio
Idéia
Desenvolvimento
Teste Integrado
Implantação
Feedback: Semanas ou meses para validar se o código atende aos requisitos originais
Requisito
12 12 © IBM Corporation
Lean & Agile estão no centro da abordagem de DevOps da IBM
– Equilibrar eficiência e eficácia para
– entregar corretamente as coisas certas
Reduzir trabalho
Eliminar gargalos e desperdício
Tempo de resposta curto
Pequenos blocos de trabalho
Feedback contínuo
LEAN
AGILE
Eficiência
Eficácia
13 © IBM Corporation
Medindo o sucesso de DevOps A oportunidade escondida de uma fábrica
80%
20%
50% 50%
Desperdício Produtivo
Fator escondido = valor adicional criado se você elimina o desperdício e redireciona os recursos para inovação
Transformação DevOps
• Implantações 30X mais frequentes • Ciclos de entrega 200X menores • 60X menos falhas • 168X mais rápidos
https://puppetlabs.com/blog/2015-state-devops-report-here
14 © IBM Corporation
Uma forma melhor de trabalhar Mantendo os talentos da empresa e possibilitando o crescimento
Conceitos-chave de DevOps
• Tudo contínuo • Alinhamento de objetivos • Responsabilidade de ponta-a-ponta • Automação, automação, automação • Se algo é difícil, faça repetitivamente • Pequenos blocos de trabalho, e liberação
progressiva de funcionalidades • Minimizar os riscos de engenharia – a importância
da resiliência • Minimizar os riscos de negócio – pequenas falhas e
rápidas • Valorize a melhoria da equipe
15 © IBM Corporation
Mapeie seu fluxo de valor Resolvendo gargalos com DevOps
16 © IBM Corporation
Gargalos na sua esteira de entregas Resolvendo o congestionamento na entrega de software
1 por min 1 por min
4 por min 1 por min
4 por min 4 por min
17 © IBM Corporation
Mapeando sua esteira de entregas
Idéia / Melhoria / Requisito / Correção
Produção
Desenv. Build QA Testes Int. Homolog Prod
PMO
Analista
Desenvolvedor
Clientes Negócio
Engenheiro de build
Time Qualidade
Testador Integração
Testador / Usuário Operações
Repositório de artefatos
Analista de Implantação
Gerente de Releases
Repositório de fontes
Implantar
Feedback
Infrastructure as Code/ Cloud Patterns
Feedback
Cliente
Métricas e Painéis de Indicadores
Tarefas
Artefatos
Gargalo: um único processo rígido para qualquer desenvolvimento
Solução: Transformação ágil com variantes do processo baseadas em risco
Gargalo: Provisionamento de ambientes por chamados
Solução: Auto-serviço baseado e cloud para o desenvolvedor
Gargalo: Implantações ao final de semana que falham
Solução: Implantações frequentes de pequenos blocos Gargalo: Descoberta tardia de
fragilidade na arquitetura
Solução: ‘Shift Left’ trazendo testes de integração para o ínicio
18 © IBM Corporation
Excesso de tarefas manuais
19 © IBM Corporation
Idéia, construção, aprendizado
19
Código fonte
versionado
Integraçãocontínua
Provisionamento ambiente produtivo
Implantar em Produção
Sem intervenção
humana
Foco na VELOCIDADE
• Testes con)nuos (automa.zados) com ampla cobertura: acessibilidade, GVT, FVT, SVT, PVT, etc….
Decisão de negócio: quando
implantar?
A obrigação da engenharia é estar pronto para implantar
Provision Test
Environment Provision
Test Environment
Provision Test
Environment Testes e
resultados
Feedback
Provisionamento ambientes de
testes Provisionamento
ambientes de testes
Provisionamento ambientes de
testes
20 © IBM Corporation
Má prática: Caça ao culpado
21 © IBM Corporation
Falhe rapidamente
• Incentive a experimentação • Crie uma cultura de colaboração • Celebre o aprendizado em
experimentos que falharam • Resiliência é necessária – o que
insufla confiança
“Se você não está cometendo erros, não está tentando o seu melhor”
✔
22 © IBM Corporation
Feedback? Sim e com frequência!
É a caixinha cheia de areia no canto do meu escritório
23 © IBM Corporation
Má cultura da empresa Indicadores de performance da equipe
Patológico Burocrátivo Performático A informação está escondida A informação pode ser ignorada As informações são
perseguidas O mensageiro é morto O mensageiro é tolerado Mensageiros são treinados
Fuga de responsabilidade A responsabilidade é compartimentada
Responsabilidades compartilhadas
Ultrapassar as barreiras entre equipes é proibido
Ultrapassar as barreiras entre equipes é desencorajado
Ultrapassar as barreiras entre equipes é recompensado
As falhas são escondidas A organização é justa e piedosa Falhas causam investigação
Novas ideias são massacradas Novas ideias criam problemas Novas ideias são benvindas
24 © IBM Corporation
Planejamento e acompanhamento de projetos
• Comprometa-se com entregas focadas no usuário e não funcionalidades
• Correção de curso – baseado em aprendizado e validação contínua
• Fortaleça o alinhamento
✔
• Use painéis com informações em tempo real e elimine reuniões
• Apenas a definição de pronto e “não pronto”
• Assuma que seus times são talentosos, querem contribuir e
buscam o sucesso – evite micro gerenciamento desnecessário
• Pergunte aos times: “o que você quer aprender?”
• Sucesso é aprendizado validado
• Sucesso técnico não é a mesma coisa que sucesso para o negócio
• Estar em conformidade com o plano não é sucesso
Veja o artigo “Achieving Failure” do Eric Ries (link)
25 © IBM Corporation
Ambientes Diferentes
Desenvolvimento
Homologação
Produção
26 © IBM Corporation
O que implantar?
Onde implantar? (máquinas físicas, virtuais ou cloud)
Como implantar?
Blueprints da Aplicação
Padronização em todas as etapas ✔
27 © IBM Corporation
• Capacidade de negócios compartimentada
• Equipes multi-funcionais
• Comunicação somente via API
• Usar mensageria para remover
dependências peer-to-peer
• Comunicação REST
• Dados descentralizados
• Projetado para falhas
• Design evolucionario com arquitetura
plugável
• Possibilitar entrega contínua
Micro serviços
A Cloud está mudando a arquitetura das aplicações
28 © IBM Corporation
As equipes e os sistemas estão se tornando híbridos
Iterações rápidas
Cloud
Iterações lentas
Atrás do firewall
Alinhamento Planejamento e sincronização contínuos
Testes contínuos Implantações e monitoração contínua
Plan Develop Build Test Deploy Production
Plan Develop Build Test Deploy Production
29 © IBM Corporation
O desenvolvimento pode ser híbrido
Versionamento
Integração contínua
Automação de Testes e
virtualização
Esteira de entregas
Configuração de Ambientes
Monitoração
Cloud
Repositório de ativos
Configure:
Codifica Deploy Homolog. Build Empacota Testes SCM
• Applications • Middleware • Databases
Produção
30 © IBM Corporation
Ambientes de entregas podem ser híbridos
Configure: • Applications • Middleware • Databases
Codifica SCM Deploy Homolog. Produção Build Empacota Testes
Cloud Versionamento
Integração contínua
Automação de Testes e
virtualização
Esteira de entregas
Configuração de Ambientes
Monitoração
Repositório de ativos
31 31 © IBM Corporation
DevOps – Pontos Principais
1. DevOps é sobre transformar desenvolvimento e entrega de aplicativos, a fim de acelerar a inovação digital. Então, DevOps é um tema tanto para papeis de negócios e TI na organização.
2. Você não compra DevOps, você pratica DevOps. DevOps é uma abordagem, uma mentalidade - uma combinação de cultura, processos e tecnologia (incluindo infra-estrutura, ferramentas e serviços).
3. DevOps é não somente sobre a transição entre Desenvolvimento e Operações. DevOps é sobre como aplicar os princípios lean e ágil no ciclo de vida da entrega de aplicativos (negócio-desenvolvimento-teste-implantar-operar) para conseguir a entrega contínua de inovação digital.
Mapeie seu pipeline de entregas e ache os gargalos!
32 © IBM Corporation
Próximos passos Onde conseguir mais informações?
33 © IBM Corporation
Você está muito ocupado para melhorar?
Não, obrigado
Estamos ocupados
34 © IBM Corporation
Por onde começar?
1
Workshop de avaliação da cadeia de valor
§ Assess current state & determine bottlenecks
§ Define operational framework – organization, process, technology
§ Define actionable, prioritized roadmap with pilots
2 Construa e faça Pilotos § Build / create the DevOps framework
§ Address gaps between current state and end state
§ Conduct pilots
3 Otimize e expanda § Optimize framework
§ Onboard next set of applications
§ Continue to monitor and measure impact
Aqui
35 © IBM Corporation
Voice of the IT – Senior Application Development Executive
Listen: Steve Farley @ IBM Innovate 2014 (start @ 1:09:40) Carmen DeArdo @ DevOps Enterprise Summit 2014 (start @ 11:30) Steve Farley and Carmen DeArdo on Agile and DevOps @ Nationwide
Steve Farley, VP Application Development Center, Nationwide Insurance
Carmen DeArdo, Director, Build Technology Leader, Nationwide Insurance
36 36 © IBM Corporation
Livros da série “For Dummies” de DevOps: http://ibm.co/devopsfordummies http://ibm.co/agilefordummies http://ibm.co/ServiceVirtualizationForDummies http://ibm.co/ARDfordummies DevOps Self Assessment http://ibm.co/1ItcSBF IBM DevOps Page: http://ibm.com/DevOps IBM DevOps YouTube Playlist: http://bit.ly/1fiDOtl
Links e recursos Continue sua abordagem DevOps
37 © IBM Corporation
© Copyright IBM Corporation 2015. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.
Obrigado!
Felipe Freire [email protected]
twitter.com/pfelipebr