• Pular para navegação primária
  • Skip to main content
  • Pular para sidebar primária
  • Pular Rodapé
Kalendae

Kalendae

Referência em Governança!

  • Nossos Serviços
    • Application Services
    • Cloud, Infrastructure & Security
    • Co-sourcing
    • Consulting
    • Professional Services
    • Training
  • Quem Somos
  • Blog
  • Materiais Gratuitos
  • Parceiros
  • Contato
Search

SRE: entenda sobre o Site Reliability Engineering

Você está em: Home / Inovação / SRE: entenda sobre o Site Reliability Engineering

outubro 4, 2019 By Developer 4 Comentários

Você sabia que existe uma estimativa de que 40% a 90% do custo total de um sistema de software incidem após o seu lançamento? Isso acontece porque a manutenção do software, necessária para manter o ambiente estável, é bastante complexa e requer múltiplas habilidades da equipe. É aí que entra em ação o Site Reliability Engineering (SRE).

O propósito do SRE é agregar confiabilidade ao sistema, o qual, não apenas em tese, deve ser utilizado por todos. Quando efetivamente confiável, o software está pronto para suportar a adição de novas funcionalidades, por exemplo, tornando-o mais útil e rentável para o fabricante.

Para que você compreenda os principais pontos acerca dessa metodologia de gerenciamento de TI, este conteúdo apresenta em mais detalhes os princípios do SRE, os benefícios para o desenvolvimento de sistemas, as funções dos envolvidos na abordagem e as melhores práticas. Vamos continuar?

Princípios fundamentais do SRE (Site Reliability Engineering)

De acordo com Benjamin Treynor Sloss, fundador do Google SRE, o conceito “é o que ocorre quando você pede a um engenheiro de software para projetar uma equipe de operações”. Isto é, mais precisamente, montar um time de engenharia dedicado a assegurar a confiabilidade e a agilidade dos serviços online ininterruptamente.

O Google é a referência primária quando o assunto é SRE. Nele, Sloss teve a experiência de projetar e liderar um time operacional composto por sete engenheiros de software. Em consequência do seu aprendizado, o vice-presidente de engenharia da empresa elaborou a metodologia, embasando-a em um conjunto de princípios fundamentais. Veja, abaixo, quais são elas:

  • abraçar o risco;
  • ter objetivos do nível de serviço;
  • eliminar trabalho desnecessário;
  • monitorar sistemas distribuídos;
  • automatizar processos;
  • ter engenharia de lançamentos;
  • buscar a simplicidade.

Entretanto, cabe frisar que os princípios são colocados em prática a partir de múltiplas ações. Por exemplo, “abraçar o risco” significa gerenciá-lo para manter a confiabilidade em um nível aceitável, o qual permita à organização investir em inovações e, ao mesmo tempo, mitigar impactos negativos ao consumidor.

Por sua vez, a simplicidade se resume a dar estabilidade a um sistema reduzindo mudanças no código-fonte, ou seja: menos códigos inseridos, menos bugs gerados. Conforme prega a filosofia Unix, “faça com que cada programa faça uma coisa bem. Para fazer um novo trabalho, construa novamente, em vez de complicar programas antigos, adicionando novos recursos”.

Benefícios do SRE para o desenvolvimento de sistemas

Os benefícios de adotar o SRE não são poucos. Afinal, a empresa trabalha diretamente na melhora da experiência do usuário e agrega estabilidade ao sistema com mais facilidade. Além disso, há outras vantagens em destaque:

  • gerenciamento de incidentes;
  • otimização do produto desde o desenvolvimento;
  • cumprimento de SLA com menos esforços;
  • agilidade na entrega de serviço;
  • aumento da eficiência operacional.

Como podemos constatar acima, os benefícios promovidos pelas práticas de SRE não podem ser ignorados. Contudo, a metodologia tem de ser muito bem aplicada para que eles se manifestem. A seguir, separamos três dicas que vão levá-lo ao êxito.

Melhores práticas para ter sucesso com o SRE

A aplicação de melhores práticas é sempre bem-vinda na melhoria de um processo de TI, não é mesmo? Quer saber o que a sua empresa pode fazer para implementar o SRE e ter sucesso? Elencamos, abaixo, três hábitos comuns de um time vencedor.

Adotar a filosofia KISS

A filosofia KISS (Keep It Simple, ou Mantenha Simples, em português), criada por Eric Steven Raymond, autor do livro “The Art of Unix Programming”, é excelente referência para todos os integrantes de um time de SRE. Entre as regras nela empregadas que se aplicam à metodologia, destacam-se:

  • composição: projete os programas para serem conectados com outros programas;
  • silêncio: quando um programa não tem nada de surpreendente a dizer, ele não deve dizer nada;
  • simplicidade: projete para a simplicidade, adicione complexidade apenas onde é necessário;
  • robustez: ela é filha da transparência e da simplicidade.

Além da filosofia KISS, há muitas outras escritas por grandes nomes da programação que são condizentes com os objetivos do SRE. Exemplos: as notas para programação na linguagem C, por Rob Pike, e a já mencionada filosofia Unix.

Evitar acúmulo de funções

Dentro do SRE, existe uma questão muito séria: as interrupções. A capacidade de lidar com interrupções é a virtude que a equipe deve ter para manter o sistema em um estado funcional. A complexa carga operacional de TI, como ocorre no desenvolvimento de software, não é tolerante a interrupções, pois elas geram:

  • acumulo de problemas;
  • lentidão de processos;
  • atraso na solução de problemas;
  • perda de dinheiro.

Portanto, assim como o engenheiro SRE tem de evitar distrações e se concentrar apenas no plantão da equipe, o próprio deve assegurar que os profissionais mais bem capacitados estão assumindo as funções adequadas. Isso ajuda a reduzir chamadas desnecessárias e falhas operacionais que dão origem a requisições.

Realizar testes de software

Quantificar a confiança do software é uma das responsabilidades mais importantes do engenheiro em projetos SRE. Nesse contexto, embora a realização de testes não traduza confiabilidade, uma série de resultados insatisfatórios denota ausência dela. Além disso, os testes ajudam a identificar e a solucionar problemas rapidamente.

De acordo com Alex Perry e Max Luebbe, ambos engenheiros especialistas em SRE, os testes tradicionais são divididos em três categorias: de unidade, de integração e de sistema.

Na base da pirâmide estão os testes de unidade, voltados a partes isoladas do software, como classes ou funções. Os testes de integração servem para analisar o desempenho dos elementos quando montados em componentes maiores. Já os testes de sistema são de larga escala. Aqui, são executados: testes de regressão, performance, estresse etc.

O conteúdo que você acaba de ler foi elaborado com objetivo de mostrar que, muitas vezes, os altos custos da TI estão ligados a questões que, felizmente, têm solução. No caso do SRE, é possível reduzir consideravelmente o impacto financeiro gerado pela manutenção e, ao mesmo tempo, desenvolver um produto confiável.

Se você gostou da publicação e deseja estar entre os primeiros a receber as novidades, aproveite para assinar a nossa newsletter. Ao cadastrar-se, os próximos conteúdos e materiais serão encaminhados a sua caixa de e-mail!

Arquivado em: Inovação

Reader Interactions

Comentários

  1. Valeska Fernandes diz

    fevereiro 3, 2020 em 17:22

    Boa leitura.

    Responder
  2. Humberto L Fadul diz

    fevereiro 15, 2021 em 09:14

    Gostei muito do que eu li!

    Responder
    • Alessandro zao diz

      julho 23, 2021 em 14:14

      Muito bom!

      Responder
  3. Giovanna diz

    novembro 8, 2021 em 23:50

    Excelente conteúdo

    Responder

Deixe um comentário Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Sidebar primária

Mulher fazendo o papel de scrum master movendo post-its em um painel Kanban

Fique por dentro das atualizações do mundo de TI!

Basta preencher o campo abaixo e se inscrever em nossa Newsletter!

Posts recentes

  • Conheça os principais desafios da adequação à LGPD! agosto 3, 2021
  • O que muda do COBIT 5 para o COBIT 2019? Entenda! julho 6, 2021
  • Serviços gerenciados de TI e outsourcing de TI: entenda as diferenças fevereiro 5, 2021
  • Entenda a importância da TIC para a segurança de dados da empresa junho 3, 2020
  • Saiba como a segurança de dados melhora a experiência do cliente maio 20, 2020

Categorias

  • Capacitação
  • Cloud
  • Gestão de TI
  • Inovação
  • Outsourcing
  • Processos de Negócio
  • Segurança da Informação
  • Uncategorized

Siga-nos nas redes sociais

  • Facebook
  • LinkedIn
Mesa com laptop aberto e ligado ao lado de um pé de plantas verdes e algumas miniaturas de esculturas medievais

Fale com um especialista!

Veja como podemos usar nossa experiência em gerenciamento para otimizar seu negócio.

Falar com um especialista!

Footer

Conheça nossas redes sociais

Veja o que a Kalendae anda fazendo no mercado :)

Fale conosco

Av. Giovanni Gronchi, 6195, 5º andar - Morumbi CEP 05724-003 - São Paulo - SP
Como chegar
+55 11 2842-0900
contato@kalendae.com.br
Seg,Ter,Qua,Qui,Sex o dia todo

Para onde quer ir?

  • Início
  • Materiais Gratuitos
  • Co-sourcing
  • Consultoria
  • Alocação de Profissionais
  • Treinamento
  • Quem Somos
  • Blog
  • Contato

Assine nossa Newsletter!

Fique por dentro das principais novidades do mercado de TI

Copyright © Kalendae Soluções em Gestão Ltda. Todos os direitos reservados