Há quem diga que a ITIL e o DevOps são compatíveis dentro do ambiente de TI. Também há quem diga que eles são conceitos completamente diferentes. E ainda existem aqueles que aceitam suas diferenças, mas afirmam que eles podem viver em harmonia dentro de um mesmo ambiente.

A discussão sobre ITIL e DevOps é muito mais comum e frequente do que você imagina, e existem diversos pontos de vista sobre ela. Apesar de muitos profissionais estarem vendo a ascensão do DevOps e outras práticas ágeis como uma grande ameaça a toda cultura em volta da ITIL e suas fundações, vamos tentar lhe mostrar que não é bem assim.

ITIL

ITIL, que antigamente era apenas um acrônimo para Information Technology Infrastructure Library (ou Biblioteca de Infraestrutura de Tecnologia de Informação, em português), consiste em um conjunto de práticas e processos de gerenciamento de serviços vitais de tecnologia da informação, como gerência de mudanças, incidentes, nível de serviço, entre outras.

Desde os anos 80, a ITIL percorreu um caminho de amadurecimento enquanto foi desenvolvida e utilizada ao redor do mundo. Apesar de estar há tanto tempo no mercado e ser a principal referência para gerência de processos e serviços relacionados à TI, o contexto atual da tecnologia de informação tem sofrido mudanças consideráveis devido às novas tendências e tecnologias que estão surgindo, como o DevOps.

DevOps

Em contraste ao ITIL, o DevOps é um conceito um tanto quanto recente. A primeira aparição do termo, que é a junção das palavras Development e Operations (desenvolvimento e operações, respectivamente), ocorreu na conferência Agile Toronto, em 2008, em uma palestra ministrada por Patrick Debois, e sua popularização ganhou força com uma série de eventos realizados na Bélgica, em 2009, chamados de “DevOps Day”.

DevOps pode ser definido como uma metodologia de desenvolvimento que facilita a integração entre desenvolvedores de softwares e profissionais da infraestrutura de TI — se você está na área, sabe o quão difícil é essa tarefa. A partir do DevOps, alcançamos os conceitos de “implementação contínua” (ou “entrega contínua”), uma vez que a metodologia sugere padronização de ambientes de desenvolvimento, automatização de processos de deploy de aplicações, entre outras práticas que já citamos aqui no blog.

Mas, afinal, qual o problema entre ITIL e DevOps?

A principal discussão quando se trata desse assunto é a comparação da velocidade e agilidade das práticas defendidas por cada lado. Ambas as metodologias têm como objetivo principal a entrega de um resultado de qualidade dentro da área de TI e suas necessidades. Enquanto a ITIL possui uma série de práticas consolidadas e processos documentados (mais de 25), é considerada lenta. Já o conceito de DevOps sugere práticas modernas e ágeis que não eram sequer consideradas possíveis quando a ITIL foi desenvolvida.

Muitos profissionais de TI se rendem ao DevOps devido à automatização e otimização do tempo em seus processos, formando sua principal diferença ao grupo de práticas da ITIL, que geralmente sugere um processo mais longo e burocrático, no fim das contas. Apesar de muito se ouvir que ITIL está estagnada e que seu último lançamento, em 2011 (ITIL V3), é considerado por muitos entusiastas do DevOps um manual de práticas atrasadas, é possível ver que aos poucos ele está convergindo em uma direção mais moderna, por citar práticas sobre melhoria contínua de serviço — mesmo que ainda presa num processo semelhante ao processo cascata.

ITIL e DevOps podem sim trabalhar juntas

ITIL e DevOps não se anulam dentro de um mesmo ambiente. É necessário que seja entendido que as duas metodologias trabalham em domínios diferentes dentro da empresa. A ITIL, além de ser aplicada nos mais diversos setores da TI de uma organização, junto da ITSM (Information Technology Service Management, ou Gerenciamento de Serviços de Tecnologia da Informação) ainda pode ser considerada “a melhor codificação dos processos de negócios que sustentam as operações de TI”, como afirma Gene Kim, pesquisador e autor de livros, entre eles o The Phoenix Project: A Novel About IT, DevOps, and Helping Your Business Win (O Projeto Fênix: Um Livro Sobre TI, DevOps e Ajudando na Vitória do Seu Negócio, em tradução livre).

Complementando a citação anterior, Gene Kim afirma que “

[A ITIL e ITSM] descrevem muitas das capacidades necessárias para que o setor de TI dê suporte a um fluxo de trabalho com o estilo DevOps”, e ainda completa esse pensamento ao pontuar que “o mais importante, é que os profissionais de ITSM são muito bem preparados para ajudar nas iniciativas do DevOps, e agregar valor ao negócio”. Assim, podemos compreender que ITIL e DevOps se completam, pois a primeira é um importante guia de práticas que serve como base para a implementação da segunda, ainda mais quando citamos o aproveitamento dos profissionais capacitados em trabalhar com ITIL devido à sua prática e experiência.

Partindo da posição de que ITIL e DevOps são diferentes — a primeira é conservadora e tradicional, porém lenta, já a segunda é recente e audaciosa, além de ter se mostrado eficiente e ágil —, não devemos afirmar que são opostas, mas sim que elas podem funcionar em um mesmo ambiente.

Essa afirmação é apoiada, por exemplo, pela TI bimodal, um conceito que vem ganhando cada vez mais espaço no mercado de TI e que prega que a gerência de tecnologia de informação deve operar com a união de dois modos distintos: o tradicional, voltado para estabilidade e mais cauteloso; e o rápido e flexível, que busca entregas mais rápidas para gerar vantagem competitiva.

Como podemos concluir, a comparação entre o ITIL e o DevOps nem sempre é justa. Apesar dos dois métodos estarem inseridos dentro da área de TI de uma empresa, auxiliando nos processos e práticas rotineiras, cada um deles tem seu espaço bem definido dentro dos processos empresariais, já que trabalham com coisas diferentes e podem muito bem ser aplicados ao mesmo tempo.

Quer entender um pouco mais sobre ITIL e DevOps? Não deixe de ler também as 10 coisas que você deveria saber sobre a ITIL e os 4 motivos para usar a cultura DevOps!