Você está na página 1de 15

O QUE É NECESSÁRIO

PARA IMPLEMENTAR
UMA ABORDAGEM

DEVOPS
SUMÁRIO

03
INTRODUÇÃO

05
PRINCIPIOS PARA IMPLEMENTAÇÃO

10
ADAPTANDO PROCESSOS
AO DEVOPS

13
CONCLUSÃO

14
SOBRE O MULT

15
MAIS CONTEÚDOS

2
Você já ouviu falar de DevOps? Não há apenas
uma definição da palavra DevOps. Existem
muitas!! Podemos inferir que DevOps habilita a sua
organização a responder mais rapidamente aos seus
clientes, sejam eles internos ou externos, sem deixar
de lado a qualidade. Entretanto, você não “faz DevOps”
porque DevOps não é um processo prático por assim
dizer. DevOps é uma abordagem, uma prática de
negócio que usa tecnologia para habilitar entregas
de software com rapidez com qualidade. Seja
a sua empresa de TI ou não, você também pode se
beneficiar ao adotar essa abordagem.
3
Não basta apenas dizer que você está implementan-
do DevOps se apenas a sua área de tecnologia está
correndo atrás disso. Para implementarmos uma
abordagem DevOps é necessário suporte do topo.
Desde o CEO, passando pelas diretorias e gerência
devem apoiar o uso dessa abordagem para atingir os
objetivos escolhidos.

Quando falamos de DevOps, falamos também sobre


cultura de colaboração, pois ela é o ingrediente
necessário para implementação de uma abordagem
DevOps eficaz. Portanto, se você não tem uma cultura
DevOps que prega principalmente a colaboração,
toda a sua tentativa de automação de processos será
em vão.

Se partirmos para uma definição prática sobre o que


é DevOps, podemos dizer que DevOps é a junção de
pessoas, processos e práticas para atingirmos um
objetivo de negócio.

4
Se olharmos para o DevOps de um ponto de vista 1. Foco no usuário final
técnico, podemos dizer que trata-se de um conjunto (seja ele interno ou externo)
de práticas de desenvolvimento de software em que
os times de desenvolvimento e operações trabalham Com este princípio em mente as equipes deverão
juntos, de forma colaborativa, entendendo como uma manter sempre o foco no usuário e em como a aplica-
determinada aplicação funciona para, desta forma, ção executa com o mínimo de impacto para o usuário
melhorar o modo de construção e execução de uma final.
aplicação. Todo este processo técnico deve ser rápido Este princípio requer que as equipes envolvidas
e iterativo sem que haja perda na qualidade. no processo de criação e/ou manutenção daquele
Existem alguns princípios que devemos ter em mente determinado software pensem no processo como
ao se implementar uma abordagem DevOps. Vamos um todo, de ponta a ponta. Não se pode ter silos de
considerá-los a seguir: informação pois como já vimos anteriormente, as
equipes têm que trabalhar de forma colaborativa e
conjunta.

5
2. Colaboração
Conforme falamos no ponto 1, iremos frisar novamen-
te: silos são proibidos! Sabe aquele colaborador
que armazena todas as informações do projeto em Para que haja uma cultura de
alguma planilha do Excel ou em um Bloco de Notas colaboração efetiva, faz-se necessário
só dele e não compartilha a informação com o resto agir com uma transparência que nos
da companhia? Informação deve ser compartilha- permite mais visibilidade do trabalho
da entre todas as equipes para que elas fiquem “na que está sendo feito, portanto, é
mesma página”. essencial que todo saibam agir
Não deve existir a cultura da culpa. Se a aplicação com clareza, honestidade
falhou, é responsabilidade de todos, não apenas da e responsabilidade.
equipe de Operações. Há apenas um único time. A
responsabilidade da aplicação é compartilhada por
todos que trabalham na empresa. Desde o CEO até
o Analista de Suporte.

6
3. Orientado a performance Isso interfere diretamente na velocidade de
desenvolvimento da aplicação pois se temos proces-
Performance deve ser um requisito e uma disciplina sos engessados aonde existam SLAs grandes de
quando implementamos uma abordagem DevOps. A disponibilidade de ambientes, isso afeta o ciclo de
aplicação deve estar “de pé” na maior parte do tempo. desenvolvimento como um todo.
A performance do seu software deve ser medida todo
o tempo. Todos no time tem que entender as implica- Você deve se preocupar aqui com acelerar o time-to-
ções que uma aplicação com performance ruim market do seu software. O deploy da sua aplicação
causa de impacto tanto para o usuário final quanto ou partes dela, deve ser feito todo dia, múltiplas vezes
para o negócio. O time deve entender que existe uma e a qualquer momento com o mínimo de impacto
correlação entre performance e custo. E por último para o seu usuário.
a performance deve ser gerenciada e planejada Com um bom processo de desenvolvimento definido
(capacity planning). e implementado na prática, você consegue transfor-
mar uma ideia em software produtivo em questão
4. Velocidade de desenvolvimento de horas ou dias ao invés de meses ou anos. Sem
esta definição, perde-se muito tempo em “apagar
A infraestrutura deve ser efêmera, dinâmica. Serve incêndios” e resolução de problemas de forma
para suportar a nossa aplicação. Para fazê-la funcio- manual. Isso tudo impacta os prazos e entrega do
nar de maneira que não impacte o usuário final. seu software.

7
5. Qualidade 6. Métricas (o que não pode ser medido,
não pode ser melhorado)
Toda sprint de desenvolvimento de software deve
produzir código de qualidade. Vimos no ponto As métricas da nossa aplicação devem ser conectadas
anterior que a velocidade e agilidade são quesitos com as métricas de negócio. Software deve ser um
muito importantes ao se implementar uma aborda- driver do negócio, aquilo que ajuda a empresa a ir na
gem DevOps. Porém a qualidade é um processo direção e nos objetivos que ela almeja alcançar.
contínuo durante todo o ciclo de desenvolvimento de
Monitoramento deve ser uma disciplina levada a
software (do conceito até o software em produção).
sério. Para darmos feedback a respeito dos processos
As mudanças no código da nossa aplicação devem ser precisamos de monitorá-los para identificar pontos
testadas e medidas o tempo todo. O impacto delas é de melhoria e corrigi-los.
entendido e não desencorajado.
A visibilidade causada pelo monitoramento nos ajuda
a ter velocidade e colaboração.

8
7. Automação
Tudo o que puder deve ser automatizado. Esse é o
“mantra” a ser seguido. Com os pontos anteriores
já postos em prática, podemos adotar e encorajar
uma cultura de experimentação.

Quando falamos de automação, falamos de repetição


de tarefas. Essa é a única forma de atingirmos a
maestria. Os processos devem ser arquitetados para
que se permitam uma repetição contínua.

Somente a automação de processos irá habilitar


a rapidez e consistência necessárias para que as
equipes foquem naquilo que mais importa: prover
valor ao usuário.

Aqui está incluso também Infraestrutura contro-


lada por Software, Integração Contínua e Deploy
Contínuo.

9
Adaptando processos Os processos organizacionais devem ser adapta-
dos para tirar vantagem da abordagem DevOps.
ao DevOps
No entanto devem ser observados conforme mencio-
Conforme podemos ler no trabalho The Challenges nados pelo autor, questões de cultura, mindset,
of adopting DevOps de Gustav Lindström: resistência a mudanças e até mesmo aspectos regula-
tórios durante o processo de adoção de DevOps.
“DevOps promise to offer flexibility and speed of
software delivery. However, organizational proces- Falamos acima sobre adaptação de Processos ao se
ses might not facilitate the advantage of DevOps. implementar uma abordagem DevOps. Um item
que tem muita importância durante essa jornada é
Adapting organizational processes such as softwa-
o Processo de Desenvolvimento.
re development methods to DevOps was mentioned
as a challenge in the journey towards DevOps. Um processo de desenvolvimento maduro e bem
feito é condição necessária para que a implementa-
In addition, organizational culture, mindset, resistan-
ção de uma abordagem DevOps seja bem sucedida.
ce to change, the type of industry and service,
regulatory requirements and team challenges are Ainda de acordo com o artigo, temos o seguinte
mentioned as other challenges that organizations trecho referente a processos de desenvolvimento de
might encounter during the adoption of DevOps.” software:

10
“...in large organizations, teams often use different O Instagram, popular rede social, conhecida por
types of software development methods, hence todos nós faz deploy do seu código de backend
challenging to implement DevOps or other modern numa média de 30-50 vezes por dia
initiatives because these teams need to collaborate,
Para alcançar esse número alto de releases por dia
communicate and coordinate software develo-
temos algumas estratégias a seguir, mas a princi-
pment and deployment activities which can be
pal é manter a release pequena. Releases menores
problematic.”
implicam em riscos diminuídos.
Note que há uma correlação extrema entre o proces-
so de desenvolvimento e a colaboração. Isso envolve O que fez a Amazon e o Instagram
também o processo de entrega (release) do software adotarem este ciclo de processo de
em questão.
desenvolvimento?
Conforme já mencionado em linhas anteriores, a
entrega de software deve ser feito múltiplas vezes
por dia e sem impacto ao usuário.

Por exemplo, os engenheiros da Amazon (amazon.


com) fazem uma média de um deploy a cada 11.7
segundos

11
Você precisa de um processo bem implementado para
se manter à frente dos seus competidores agilizando
Podemos citar algumas coisas como: a entrega de software para os seus usuários.
}} evitar que código ruim e sem qualidade
DevOps é o processo chave que você precisa
vá para produção
implementar em sua organização. Adote esta
}} liberdade de fazer o deploy (entrega) do metodologia em sua empresa para que você tenha
software assim que possível sem esperar ganhos enormes de produtividade e agilidade.
por janelas de release por exemplo
Já vimos anteriormente que Amazon, Instagram e
}} trabalhar de maneira ágil e realizar
outros players como Netflix fazem diversos deploys
mudanças necessárias em questão de
por dia. Esta é a razão pela qual esses players
segundos ou minutos
oferecem uma experiência de usuário tão persona-
}} responder a crescente demanda dos lizada e com qualidade.
usuários por mudanças em sua aplicação
Coman Hamilton, editor da JAXenter diz que o
}} adaptar rapidamente a sua aplicação a DevOps implementou novos padrões na área de
alguma mudança de processo seja ele legal TI.
ou de negócio
E hoje tais padrões estão disponíveis para que todos
nós os usemos. Por que não obter vantagem disso?

12
Ao escolher usar DevOps como abordagem você
estabilizará o seu ambiente de trabalho ao mesmo
CONCLUSÃO
tempo que mantém todos os envolvidos na “mesma Talvez você pense que o DevOps funciona apenas
página”. para empresas de TI e não vai ajudar empresas que
não são de TI. Na verdade não é bem assim.
DevOps é a abordagem que lhe permite economizar
tempo e dinheiro enquanto você constrói aplicações Pense no software que você usa há anos em sua
com qualidade. empresa que não é de TI.
}} Você está usando um software que direciona seus
negócios?
}} O seu software não está sendo atualizado com a
rapidez e agilidade que você deseja?

O DevOps é a resposta para essas perguntas.

Lembre-se: Empresas de destaque estão


utilizando abordagem DevOps hoje em dia.

13
CONHEÇA O GRUPO MULT
Somos um provedor de conhecimento em
tecnologia da informação que está desde 1998 no
mercado.
Nossa especialização em processos de negócio
e integração de dados nos posiciona como um
parceiro estratégico para implantação de arquite-
turas de tecnologias de missão crítica.
Enxergamos a ruptura do digital como um desafio
a ser cumprido, sem esquecer dos atuais ativos.

14
MAIS CONTEÚDOS
EXCLUSIVOS

ARTIGOS:

Como implementar DevOps em apenas 3 etapas

DevOps na TI: como ele ajuda sua empresa a reduzir custos

Como adotar um Mindset Devops

15

Você também pode gostar