Como se faz DevOps Organizando pessoas, dos silos aos times de plataforma
Leonardo Leite, Paulo Meirelles, Fabio KonConteúdo
Livro finalista do Prêmio Jabuti Acadêmico 2024.
Vimos o DevOps surgir como um movimento para melhorar a vida dos profissionais da indústria de software, promovendo a colaboração entre pessoas de desenvolvimento e de infraestrutura. Mas, afinal, do ponto de vista da organização dos profissionais, existe uma receita para se fazer DevOps? Como (re)organizar as atividades operacionais (como implantação, monitoração, tratamento de incidentes etc.) entre os profissionais de desenvolvimento e de infraestrutura? Considerando que diferentes alternativas de organização afetam de forma distinta o equilíbrio entre especialização e interação entre esses times, essa é uma questão que merece ser entendida mais a fundo.
Neste livro, Leonardo Leite, Paulo Meirelles e Fabio Kon discutem as diferentes formas de se fazer DevOps. Você entenderá as condições, razões para adotar ou evitar cada alternativa, bem como as causas e consequências de cada uma delas. Dentre essas alternativas, o livro detalha a organização em torno de times de plataforma, uma nova tendência surgida a partir do DevOps. Ao unir pesquisa científica*, relatos de experiências reais e dicas práticas, este conteúdo pode embasar discussões e decisões sobre a jornada DevOps na sua empresa, sendo um ótimo recurso para você aprofundar a sua compreensão sobre o esforço coletivo de produção de software.
* Este livro se baseia em uma pesquisa de doutorado desenvolvida na Universidade de São Paulo (USP), tendo recebido os seguintes prêmios: melhor tese de engenharia de software defendida em 2022 pelo concurso do CBSoft (Congresso Brasileiro de Software: Teoria e Prática) e segunda melhor tese de informática defendida em 2022 pelo concurso do CLEI (Centro Latinoamericano de Estudos em Informática).
Sumário
Parte 1: DevOps
- 1 O que é DevOps?
- 1.1 História do DevOps
- 1.2 Nossa definição de DevOps
- 1.3 E o operador, quem é?
- 1.4 Conceitos DevOps
- 2 Impactos do DevOps
- 2.1 Impactos para o corpo técnico
- 2.2 Impactos para gerentes
- 3 Desafios do DevOps
- 3.1 DevOps e arquitetura
- 3.2 Como medir a adoção do DevOps?
- 3.3 Ensino e aprendizagem de DevOps
- 4 Ferramentas DevOps
- 4.1 Ferramentas para compartilhamento de conhecimento
- 4.2 Ferramentas para gerenciamento de código-fonte
- 4.3 Ferramentas para o processo de build
- 4.4 Ferramentas para Integração Contínua
- 4.5 Ferramentas para automação de implantação
- 4.6 Ferramentas para monitoração
Parte 2: As diferentes formas de se organizar DevOps
- 5 Visão geral
- 6 Departamentos segregados
- 6.1 Características de departamentos segregados
- 6.2 Consequências de departamentos segregados
- 7 Departamentos que colaboram
- 7.1 Características de departamentos que colaboram
- 7.2 Opções de departamentos que colaboram
- 7.3 Condições para departamentos que colaboram
- 7.4 Causas de departamentos que colaboram
- 7.5 Consequências de departamentos que colaboram
- 7.6 Contingência para departamentos que colaboram
- 8 Departamentos únicos
- 8.1 Características de departamentos únicos
- 8.2 Opções de departamentos únicos
- 8.3 Condição para departamentos únicos
- 8.4 Causas de departamentos únicos
- 8.5 Razões para evitar departamentos únicos
- 8.6 Consequência de departamentos únicos
- 8.7 Contingência para departamentos únicos
- 9 Departamentos mediados por API
- 9.1 Características de departamentos mediados por API
- 9.2 Opções de departamentos mediados por API
- 9.3 Condições para departamentos mediados por API
- 9.4 Causas de departamentos mediados por API
- 9.5 Consequências de departamentos mediados por API
- 9.6 Contingência para departamentos mediados por API
- 10 Equipes facilitadoras
- 10.1 Time de consultoria
- 10.2 Provedor do pipeline de implantação
- 10.3 Comitê de coordenação
- 11 Estruturas organizacionais para além do DevOps
- 11.1 História da organização na indústria
- 11.2 Sistemas complexos e o dinamismo das estruturas
- 11.3 Cultura: o mais importante?
- 12 Conclusões
- 13 Apêndice — Nossa abordagem científica
- 14 Referências bibliográficas
Autores
Leonardo Leite
Leonardo Leite é mestre e doutor em Ciência da Computação pela Universidade de São Paulo (USP). Desde 2014 é desenvolvedor de software no Serviço Federal de Processamento de Dados (Serpro), no qual apoiou com sucesso a implantação de práticas de DevOps, como a adoção de testes automatizados, pipelines de implantação, entrega contínua e monitoramento. Em sua pesquisa de mestrado, estudou a implantação automatizada de composições de serviços. A automação de implantação é uma das principais preocupações técnicas do DevOps. Leonardo também contribui para o projeto de software livre Radar Parlamentar, no qual aplicou técnicas de DevOps, especialmente a implantação contínua.
Paulo Meirelles
Paulo Meirelles obteve seu título de doutorado em Ciência da Computação pela Universidade de São Paulo (USP) em 2013. Sua trajetória como docente é não convencional, passando pela Universidade de Brasília (UnB), Universidade Federal de São Paulo (UNIFESP) e Universidade Federal do ABC (UFABC). Desde 2023, é professor do Departamento de Ciência da Computação do IME-USP. Ao longo de sua carreira, coordenou projetos de desenvolvimento de software, aplicando de forma bem-sucedida as práticas DevOps. Além disso, mantém uma forte relação e histórico de colaboração com a comunidade de software livre, e a maior parte de suas pesquisas em engenharia de software tem o software livre como alvo.
Fabio Kon
Fabio Kon graduou-se em Música pela Universidade Estadual Paulista (Unesp) e em Ciência da Computação pelo Instituto de Matemática e Estatística da USP (IME-USP). Posteriormente, obteve seu doutorado em Ciência da Computação pela Universidade de Illinois em Urbana-Champaign. Atualmente, é professor titular do IME-USP, onde leciona, orienta alunos e desenvolve pesquisas em engenharia de software, métodos ágeis, sistemas distribuídos, ciência de dados e cidades inteligentes. É coordenador do Instituto Nacional de C&T sobre a Internet do Futuro para Cidades Inteligentes.
Dados do produto
- Número de páginas:
- 185
- ISBN:
- 978-85-5519-360-6
- Data publicação:
- 01/2024