---
# System prepended metadata

title: DevOps Abordagem inicial
tags: [DevOps, IGTI]

---

# DevOps Abordagem inicial
###### tags: `DevOps` `IGTI`
Origem: Velocity 09 John Allspaw and Paul Hammond
10 Deploys por dia flicker

### Pilares

Essencia colaborativa,
Originado de infraestrutura ágil.


## Overview

Benefícios 5 x menos chances de falha
440 x mais rápido entre commit e deploy(Subir do gitlab para uma nova versão)
46 x deploys mais frequentes
44% mais tempo com novas funcionalidades

## Desafios
DevOps Requires Culture Change
Work with fullstack figure

### Partes

#### Dev
Aumentar o valor para o negócio
Agilidade para inovar
Requisitos funcionais(Aquilo que está na especificação)

#### Ops
Proteger valor para o negócio
Estabilidade do ambiente
Requisitos Não funcionais()

é uma jornada de diversas práticas
 ### Coolaboração + automação
 
#### Ciclo de Vida cascata 
Negócios/ Desenvolvimento e QA/ Operação
Conflito de entendimentos
Sobrecarga de Picos
Demora
Cascata funciona em alguns modelos(Engenharia por exemplo)

#### Ciclo de vida Ágil
Negócio, desenvolvimento, Testes // Operação // Cliente
Operação- Infraestrutura, segurança

#### Devops- Operações vem para o braço
Implantação, manutenção e telemetria vem para o braço
Conclusão
Evolução natural da agilidade com inclusão de práticas inovadoras

# Pilares devops

Integração continua, entrega contínua, implantação contínua: commits diários, Telemetria, experimentação, teste A/B, pipeline de implantação

A jornada devOps abraça diversas práticas

# DevOps CALMS
essência colaborativa
cultura de automação
práticas lean
monitoramento e compartilhamento
## Bem Pagow

### Cultura
- Respeito as pessoas
- Criar pontes entre Dev e Ops
- aceitar mudanças

### Automação
- Integração contínua
- Entegra contínua
- infra como código
- Pipeline de implantação
- Orquestração

### Lean 
- valor para o cliente
- lotes pequenos
- fluxo contínuo
- reduzir wip
- Lead time

### Medição 
- Telemetria
- Monitoramento
- melhorias

### Sharing
- Colaboração
- Feedback
- Comunicação
- Boa transparência

# Princípio das três maneiras
- Fluxo 
- FeedBack
- Aprendizado e experimentação

### 1° Maneira: Fluxo
Acelerar o fluxo dos desenvolvedores(Esquerda) para operações e clientes

1. Tornar o trabalho visível
2. Reduzir o tamanho dos lotes e intervalos
3. Aplicar teoria das restrições

5. Remover desperdícios
6. Reduzir o número de transferências (Handoff)
7. Incorporar qualidade na origem
8. Limitar o trabalho em andamento (WIP)
9. Infraestrutura como código e self Service
10. Integração, entrega e implatação contínua
11. Testes automatizados e TDD.

### 2° Maneira: Feedback
Rápido feedback em todos os estágios do fluxo de valor
(Direita para a esquerda)

1. Ver problemas quando ocorrem('Ir ao gemba')
2. Aglomerar quando problema aparece(Andon)
3. Qualidade próxima a fonte(menos aprovações)

5. Telemetriaself service e irradiadores de informação disponível para todos
6. Desenvolvimento por hipóteses e testes A/B
7. Equipes Dev e Ops compartilham o trabalho diário e plantões de suporte 27 * 7
8.  Revisão de código usando as técnicas: Programação em pares, sobre ombros, divulgação por email

### 3° Maneira: Aprendizado
Cultura de alta confiança que permite correr riscos e potencializar o aprendizado

1. Cultura Justa e segura para aprender com os erros
2. Injeção de falhas na produção para aumentar a resiliência

4. Converter descobertas locais em melhorias globais
5. Reservar tempo para melhorar o trabalho diário(Kata e blitz de melhoria)
6. Reunião post-mortem sem culpa
7. Instituir dias de jogos para ensaiar falhas
8. Difundir conhecimento usando testes automatizados como documentação


## Ferramentas

Subdivididos em partes interessantes
- Versionamento de código(GitLab flow)

- Automatização de banco de dados(ReadGate, Delphix,outros)

- Continuos integration- Integrar as alterações continuamente : 
https://blog.codemagic.io/ci-cd-for-flutter-video-tutorial/ 
![](https://i.imgur.com/MH6ZsoP.png)

- Testing(JUnit,Mocha,Cucumber,Gatling,Selenium, Teste Unitário)
- Configuration(Terraform)

- Deployment
Para testes
![](https://i.imgur.com/c2ixILd.png)
![](https://i.imgur.com/gjeCp91.png)

- colaboration(Jira, trello)

- Analitics
![](https://i.imgur.com/P6FB7oI.png)
versões
![](https://i.imgur.com/MO8X49i.png)

## Considerações finais
aberta a diálogos da equipe, Sugestões o que a gente tem ? o que falta? Firebase?

### Referencia
The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations
Gene Kim, Jez Humble, Patrick Debois, John Willis
IT Revolution Press; 1 edition (2016)








