Ágil: a maior questão ideológica em TI

imagem

Em 2001, um grupo de tecnólogos e programadores que compartilharam teorias não triviais sobre como o desenvolvimento de software deve ser gerenciado se reuniu na estação de esqui de Snowbird para escrever alguns desses conceitos por escrito. Foi assim que nasceu o Manifesto Ágil - um documento enganosamente simples, projetado para revisar o dogma do desenvolvimento de software. O desenvolvimento de software no estilo ágil evoluiu para um novo padrão na organização do trabalho dos programadores em uma organização. Empresas como Facebook , Amazon , Apple , Google e Netflix criaram seus processos de desenvolvimento interno de acordo com as disposições básicas deste manifesto. Dada a magnitude do Agile e sua ressonância pública entre os proponentes, é fácil ver que o Agile é a mais influente de todas as interpretações formalizadas do desenvolvimento de software. No entanto, o Agile é uma ideologia. O sistema normativo de valores e crenças, quase a ponto de absorver o negócio de desenvolvimento de software. Assim, a indústria de software hoje oferece uma oportunidade interessante para avaliar como os objetivos nominais de uma determinada ideologia são consistentes com sua implementação na prática.

Em essência, o Agile foi um tumulto contra o domínio corporativo no desenvolvimento de software. Pela primeira vez, reconheceu-se que o desenvolvimento de software é um processo complexo e muitas vezes misterioso que deve ser protegido da burocratização corporativa. Mudança, reinvenção, flexibilidade, dinamismo - esses são os fios vermelhos que passam pelo manifesto Agile. Eles provaram ser infinitamente atraentes: de acordo com um estudo global , cerca de 97% de todas as organizações, de uma forma ou de outra, praticam os princípios do Agile. Graças a essa ampla distribuição, o Agile alcançou a nominalização total na teoria do gerenciamento de desenvolvimento de software: hoje o termo "ágil" se refere à ideologia, métodos de trabalho e até mesmo os sistemas usados ​​para desenvolver software em uma organização moderna. O Agile vai além das equipes de programadores e é cada vez mais praticado em outras equipes responsáveis ​​por, por exemplo, finanças ou gerenciamento de recursos humanos. O Agile, interpretado como uma teoria universal do gerenciamento, provou ser extremamente acessível e popular - apesar da escassez de evidências empíricas de sua eficácia e utilidade.

Curiosamente, o manifesto Agile não tenta articular métodos, regras, processos, sistemas ou estruturas de trabalho específicos que ajudem a desenvolver software no estilo Agile. Isso não é surpreendente: afinal, o manifesto Agile nunca afirmou ter uma descrição detalhada de como atingir os objetivos desse manifesto. Um borrão tão claro não diminuiu a popularidade do Agile: de fato, o rápido crescimento da demanda por métodos e ferramentas específicos do Agile levou ao surgimento de uma meta-indústria baseada nos recursos do Agile. Esse interesse estimulou a introdução do Agile, a penetração em novas indústrias da ideologia do Agile e seus derivados. As metodologias Agile mais claramente definidas (por exemplo, Scrum e Kanban - ou seja, descrições detalhadas dos processos que devem ser seguidos para implementar os princípios do manifesto Agile) e plataformas de software especializadas projetadas especificamente para dar suporte ao desenvolvimento Agile provaram ser as mais distintas. A empresa de tecnologia australiana Atlassian vende uma gama de produtos projetados para suportar processos de desenvolvimento de software no estilo ágil; Destacam-se Confluence e Jira, que de fato se tornaram padrões da indústria. Para aqueles que não cozinharam na comunidade de tecnologia, esses produtos parecem bastante misteriosos. Vários artigos explicativos apareceram antes de Atlassian entrar nas listas da NASDAQ imediatamente depois. Os artigos pretendiam explicar exatamente o que a Atlassian vende e por que a empresa alcançou uma capitalização de mercado tão alta.

Como os produtos de software Atlassian, o vocabulário que descreve os processos Agile e os métodos de trabalho diário também se tornou cada vez mais impenetrável para os não iniciados. Praticantes ágeis falam sobre sprints, quadros Kanban, diagramas de tarefas, velocidades, histórias de usuários, épicos e retrospectivas - o significado de todas essas palavras geralmente muda dependendo do contexto, e esses termos podem ser afiliados a uma ou mais metodologias ágeis claramente definidas. É de admirar que, à medida que a metodologia Agile se torne mais complexa, haja um crescente grupo de consultores especializados que ajudem a entender tudo isso. A Bain & Company tem aproximadamente 1.000 profissionais ágeis à sua disposição. Esse talvez seja o indicador mais confiável que mostra como a indústria de consultoria Agile se tornou lucrativa. No entanto, se o manifesto Agile é tão simples quanto parece à primeira vista, por que existem tantos consultores? Quão tangivelmente os serviços de algum deles afetam a qualidade e a eficácia do trabalho em uma empresa de tecnologia típica?

Apesar do vocabulário, ferramentas especializadas e uma enorme quantidade de recursos disponíveis para quem deseja praticar o desenvolvimento de software no estilo Agile em sua empresa, muitas vezes é difícil rastrear a precisão com que o Agile é implementado na prática - ou seja, ele combina com o espírito e a letra registrados pelos autores no manifesto Ágil O manifesto ágil é intencional e inevitavelmente tornado abstrato. Talvez isso tenha causado uma distorção gradual da metodologia Agile e, como conseqüência, toda a cultura de gerenciamento na indústria de software como tal. Algo colossal foi construído sobre fundamentos aparentemente simples - um mecanismo que decepcionou extremamente aqueles que lançaram as bases para sua primeira iteração. Além disso, devido à longa popularidade do Agile, os especialistas que não possuem uma qualificação formal do Agile começaram a perder a concorrência entre colegas que são supostamente versados ​​profissionalmente no Agile. Muitos bônus de carreira aguardam aqueles que pretendem entender o dispositivo Agilr e sabem como usá-lo. Tal realidade estimula o conformismo e afoga qualquer tentativa de duvidar do domínio do Agile ou de fazer uma pergunta sobre sua eficácia.

Andy Hunt, um dos autores fundadores do manifesto Agile, reclama que, devido à formulação abstrata do Manifesto original, surgiram e se espalharam inúmeras regras que são usadas fora do contexto e supostamente formam a base do desenvolvimento no estilo Agile. Com o tempo, essas regras são codificadas na forma de metodologias especializadas que precisam ser seguidas sem pensar, enquanto esquecem as diretrizes originais do Manifesto. Em outras palavras, a ideologia ágil se mostrou extremamente difícil de estudar, aprender e praticar. Portanto, alguns personagens dependem de regras ou heurísticas definidas rigidamente que são apresentadas como ágeis e continuam substituindo essas regras (geralmente retiradas do contexto) por práticas ágeis que são consistentes com os objetivos do manifesto. Na maioria das organizações, não há refinamento gradual do processo de desenvolvimento; em vez disso, os gerentes cometem erros, acreditando que o processo não permite mudanças, recusam a melhoria passo a passo do produto e se esforçam para arrancar três skins dos desenvolvedores, operando principalmente com cânones retirados do teto e rigidamente fixados. As organizações que falham em obter qualquer benefício real do Agile (e existem muitos) gravitam naturalmente para monitorar a implementação de um determinado processo Agile, ignorando os resultados mais desfocados, mas mais importantes do processo - ou seja, a entrega de software viável.

O auge de Scrum e Kanban é, na melhor das hipóteses, uma tentativa de formalizar e espalhar a ideologia ágil. Na pior das hipóteses, todas essas metodologias nada mais são do que uma burocracia adicional, gerando novas regras e métricas irracionais que os desenvolvedores devem seguir. Tudo isso é imposto por razões muitas vezes não totalmente suportadas empiricamente. Gerentes medíocres, consultores, desenvolvedores e até organizações inteiras em tais condições prosperam: fica mais fácil se concentrar nas regras nominais da ideologia e gradualmente isso se torna mais prioritário do que alcançar objetivos reais. Basicamente, no setor de desenvolvimento de software, há uma mania com a medição da “contribuição” e “retorno” do Agile no nível de funcionários individuais. Tal mania levou à negligência da ética Agile original, uma mudança nas prioridades para a coleta de estatísticas para cada funcionário, enquanto na verdade é necessário melhorar gradualmente os processos no nível de toda a organização.

A maior ironia dessa degeneração é que a filosofia Agile original foi projetada para libertar o programador médio da tirania da microgerenciamento e da supervisão burocrática desnecessária. Em vez disso, a própria essência dessa ideologia em sua forma atual já é difícil de reconhecer para quem a criou. De maneira mais geral, o destino do Agile como metodologia de software é um exemplo amargo de como uma ideologia lacônica e abstrata é gradualmente distorcida e distorcida à medida que sua influência cresce, e são feitas mais e mais tentativas para colocá-lo em prática.

Source: https://habr.com/ru/post/pt448668/


All Articles