© 2013 ibm corporation walter farias – [email protected] ibm client technical professional...
TRANSCRIPT
© 2013 IBM Corporation
Walter Farias – [email protected] Client Technical Professional
DevOpsEntrega contínua de inovação orientada à software
© 2013 IBM Corporation
Accelerating Product and Service Innovation | Rational
O que é DEVOPS?
“DevOps é uma metodologia de desenvolvimento de software que explora a comunicação, colaboração e integração entre desenvolvedores de software e profissionais de TI.”
O termo “DEVOPS" foi popularizado através de uma série de eventos intitulados "DevOps Days", começando em 2009 na Bélgica. Desde então, ocorreram conferências "DevOps Days" na Índia, EUA, Brasil, Austrália, Alemanha e Suécia.
© 2012 IBM Corporation
Clientes
Inovação rápida e contínua
Negócio (LoB)
Requisitos
Desenvolvimento e Teste
Código e Testes
1ºGap
Desafios na entregaHoje as necessidades de negócio e também técnicas estão exigindo mais do que as abordagens tradicionais de entrega podem suportar.
Pessoas
Processos
Informação
Operações
Serviços para o Negócio
2ºGap
© 2012 IBM Corporation
DevOps
Endereçado por…Endereçado por…
Agile
Solucionando os GAPs no ciclo de entregas de software
Clientes
Inovação rápida e contínua
Negócio (LoB)
Requisitos
Desenvolvimento e Teste
Código e Testes
1ºGap
Operações
Serviços para o Negócio
2ºGap
© 2012 IBM Corporation
Comunicação Caça ao Culpado Pouca Colaboração Não existe visão integrada do
atendimento da demanda
O Problema
OperaçõesDesenvolvimento
Várias tarefas manuais Retrabalho Diferentes Processos Diferentes Ferramentas
© 2012 IBM Corporation
O Problema
DESENV OPERAÇÕES
X
© 2012 IBM Corporation
Um conjunto de princípios e valores que visam facilitar a colaboração entre disciplinas para…
1.Possibilitar a rápida evolução da implantação de serviços para o negócio 2.Reduzir riscos e custos e aumentar a qualidade em todo o portfólio
DevOps é…
Pessoas
Processos
Informação
7
© 2012 IBM Corporation
Colaboração entre disciplinas
Desenvolver e testar em um ambiente próximo ao de produção
Implantar frequentemente usando processos repetitiveis e confiáveis
Monitorar continuamente e validar características operacionais de qualidade
DevOps: Princípios e Valores
Pessoas
Processos
Informação
8
© 2012 IBM Corporation
Application Release
Automation
Environment Provisioning
Quality Management
Test Automation
Monitoração Contínua
Source Control Management
Open Lifecycles Integration Platform
Continuous Delivery
Delivery Pipeline
Release ContínuaTestes ContínuoDesenvolvimento Colaborativo
Capacidades DevOps
Service Virtualization
Application Performance Monitoring
Change Management
Build Automation
© 2012 IBM Corporation
Infrastructureas Code
Alavancando uma infraestrutura programável
10
© 2012 IBM Corporation
Infrastructureas Code
Source Control Management
Source Artifacts
.jsp
.java
.html
chef recipes
.sh
Alavancando uma infraestrutura programável
11
Infraestrutura como Código
© 2012 IBM Corporation
A esteira de entregas
Implantar
Ambiente de execução do sistema
Repositório deControle de fontes
Artefatos fontes
.jsp
.java
.html
chef recipes
.sh
Artefatos entregáveis
Build, Empacota, Testes unitáriosBinários Configuração da plataforma
Biblioteca
12
© 2012 IBM Corporation
DevOps Lifecycle
Operations/ProductionDevelopment/TestCustomers Business Owners
Continuous Innovation, Feedback and Improvements
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
Ao aplicar os princípios lean e ágeis em todo o ciclo de vida da entrega de software, DevOps ajuda as organizações a ter uma relação diferenciada com seus clientes, entregando funcionalidades mais rápido para o mercado e ganhando uma incrível capacidade de inovar.
DevOps Lifecycle
Operations/ProductionDevelopment/TestCustomers Business Owners
Continuous Innovation, Feedback and Improvements
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
DevOps Lifecycle
Operations/ProductionDevelopment/TestCustomers Business Owners
Continuous Innovation, Feedback and Improvements
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
DevOps Lifecycle
Operations/ProductionDevelopment/TestCustomers Business Owners
Continuous Innovation, Feedback and Improvements
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
DevOps Lifecycle
Operations/ProductionDevelopment/TestCustomers Business Owners
Continuous Innovation, Feedback and Improvements
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
DevOps Lifecycle
Operations/ProductionDevelopment/TestCustomers Business Owners
Continuous Innovation, Feedback and Improvements
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
DevOps Lifecycle
Operations/ProductionDevelopment/TestCustomers Business Owners
Continuous Innovation, Feedback and Improvements
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
IBM DEVOPSDevOps - Capacidade de entrega contínua de software.
Permite que as organizações aproveitem melhor as oportunidades de mercado, respondendo mais rapidamente ao feedback dos clientes, e balanceando velocidade, custo, qualidade e risco.
DevOps Lifecycle
Operations/ProductionDevelopment/TestCustomers Business Owners
Continuous Innovation, Feedback and Improvements
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
Ciclo de Vida de DevOps
Operações/ProduçãoDesenv/TesteClientes Linha de Negócio
Inovação, Feedback e Melhorias Contínuas
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
© 2012 IBM Corporation
Entrega de Software está no centro das tendências tecnológicas de ponta
Força de trabalho moderna espera por constante atualização de software para se conectar com sistemas de empresas.
Grande conjunto de interessados (stakeholders) colaboram para entregar inovação e valor contínuos.
Compreensão de novos produtos através de interpretação mais eficiente de quantidades massivas de dados.
Demanda por aplicações requer ambientes escaláveis e mais rápidos para desenv e teste, assim como para produção.
Requisitos de Indústrias demandam por respostas à regulações e padrões, com rastreabilidade e qualidade.
Componente de software em produtos mais inteligentes conduzindo a aumento de valor e de diferenciação.
© 2012 IBM Corporation
Uma iniciativa da indústria para facilitar a integração de ferramentas de entrega de software.
Open Services for LifecycleCollaboration
Open interfaces.
Open possibilities.
OSLC – Open Services Lifecycle Collaboration
open-services.net
© 2012 IBM Corporation
Collaborative Lifecycle Management
Delivery Pipeline
OSLC
ConfigurationAutomation
OSLC
Continuous Integration
OSLC
Quality Management
OSLC
Provisioning Automation
OSLC
Infra
Pull configurations
Track work
Trigger deployment Deploy
service
Track quality
Track work
Trigger Delivery
Update configurations
Pull changes
Futuro : Entregas Contínuas
Change Management
OSLC
OSLC
Requirement Management
Trigger tests
Service Simulation & Testing
OSLC
Configure endpoints
Start stubs
Application Monitoring
OSLC
Monitor application
Configure agents
Link defect
Track incident
Incident Management
OSLC
Deployment Design
OSLC
Generate automation
© 2012 IBM Corporation
Formas de implementar DevOps em Cloud
17
Cloud : • JazzHub• CLM AAMS• RD&T AAMS
Bluemix: • DevOps Services
© 2012 IBM Corporation
Walter [email protected]
© 2012 IBM Corporation
Referências
19
Problema: • Comunicação entre Desenvolvimento
e Operações• Várias ferramentas para o time (3
ferramentas)• Baixa produtividade• Copy/Paste de dados de
ferramenta para ferramenta
Benefícios: • Ferramenta simples e compartilhada entre
Desenvolvimento e Operações• Melhora da colaboração entre os times• Melhora da produtividade (Sem Copy/Paste)• Melhora das métricas
Problema: • Integrar as atividades de Build e Deploy com o
ciclo de desenvolvimento• Rastreabilidade entre as atividades de Build e
Deploy com correção de defeitos e execução de testes.
• Definir os processos: Integração Contínua, Entrega Contínua e Liberação Contínua
• Melhorar colaboração entre os times de desenvolvimento e operações
• Unificar ferramentas de desenvolvimento
Benefícios: • Padronização• Melhoria da Produtividade• Integração e Rastreabilidade com o ciclo da aplicação• Quebra das barreiras• Antecipação de erros• Rastreabilidade entre: Build, Deploy, Defeitos, Teste e
Requisitos.