Target Teal

O que são Metodologias Ágeis?

Metodologias Ágeis

O momento de transformação no mundo do trabalho que estamos vivendo teve uma origem. Obviamente não foi no departamento de inovação de alguma empresa. Também não foi no escritório de gestão de projetos (PMO). Tudo começou com as metodologias ágeis de desenvolvimento de software.

O que são Metodologias Ágeis?

As metodologias ágeis são abordagens para o desenvolvimento de produtos que estão alinhadas com os valores e princípios descritos no Manifesto Ágil para Desenvolvimento de Software, assinado em 2001 em Utah. Participaram desse evento 17 desenvolvedores, que apesar de estarem testando abordagens e métodos diferentes, compartilhavam dos mesmos fundamentos. As metodologias ágeis em geral defendem o planejamento adaptativo, times auto-organizados e multidisciplinares, melhoria contínua e o desenvolvimento evolucionário. Se olharmos a forma como o desenvolvimento de software se dá em diversas empresas, veremos o oposto disso.

O Manifesto

O Manifesto é composto por 4 sentenças e 12 princípios. Aqui vamos analisar as 4 sentenças iniciais para entendê-lo melhor.

Essas frases são dispostas no formato X mais que Y, de modo a tornar claro o que é prioritário. Não significa que o Y seja totalmente irrelevante, mas apenas que o X deve ser considerado primeiro.

Indivíduos e interações mais que processos e ferramentas

As metodologias ágeis valorizam as interações entre os indivíduos que fazem parte de um projeto, considerando a qualidade desses relacionamentos e a motivação intrínseca das pessoas cruciais.

Os adeptos do Ágil entendem que o foco excessivo em processos e ferramentas leva à desumanização do trabalho, piorando por consequência a qualidade das interações. Como o trabalho de desenvolvimento de software é complexo e exige criatividade, esses aspectos não podem ser sacrificados.

Processos de trabalho muito prescritivos também prejudicam a capacidade de adaptação à mudanças. Tem até um adjetivo especial para isso: engessado.

Software em funcionamento mais que documentação abrangente

Uma vez um agilista (praticante de metodologias ágeis) me contou que colocou o prelúdio inteiro do Star Wars – Episódio V dentro de um documento de requisitos. Ele trabalhava no departamento de tecnologia do estado de Washington. Passaram-se 5 anos e ninguém nunca falou nada. Detalhe importante: havia o nome dele registrado no documento.

Grandes corporações tornaram-se especialistas em escrever documentos extensos de requisitos, detalhando em profundidade como o software deveria funcionar. Pena que toda essa documentação não serve para absolutamente nada.

As metodologias ágeis colocam essa prática em cheque, destacando no Manifesto que o software em funcionamento (o produto final) é o que realmente importa. Se você precisar escrever documentação, trate de fazer isso o mínimo possível.

Colaboração com o cliente mais que negociação de contratos

Uma prática também comum no mundo corporativo é prender o seu cliente em um grande contrato que especifica escopo, tempo e custo. Você detalha todo o projeto de antemão (fingindo que isso é possível) e espera para entregar o software depois de 1 ano. Então o seu cliente é obrigado a pagar a conta.

O problema é que daqui a um ano, talvez esse produto nem tenha mais valor. O mercado mudou. O cenário sociopolítico também. Novas leis tornaram o produto inviável. Afinal, o mundo é VUCA.

As metodologias ágeis contestam essa prática, colocando a colaboração com o cliente em primeiro lugar. Não deixe de fazer um contrato. Mas opte por modelos mais flexíveis, onde você entrega o produto de forma incremental e evolutiva, se adaptando também às mudanças e preocupando-se em de fato gerar vantagem competitiva para o seu cliente.

Responder a mudanças mais que seguir um plano

A gestão de projetos tradicional é baseada em um grande pressuposto que não é (e talvez nunca foi) verdadeiro: o de que podemos prever e planejar com exatidão um projeto tão complexo como um de software em um horizonte longo de tempo (meses, anos).

E os PMPs (Project Management Professionals, certificado do PMI) vão reforçar: Se o seu plano falhou, é porque ele foi mal feito! Planeje mais!

O foco excessivo no planejamento faz com que as mudanças sejam evitadas, pois alterações no plano geram muito retrabalho. É necessário gerar nova documentação. Os diagramas precisam ser alterados. O cronograma, o plano de testes, o gerenciamento de riscos… A lista é grande.

As metodologias ágeis abraçam as mudanças, optando por ciclos de planejamento e desenvolvimento menores, em geral de 15 dias ou menos. Mais tempo é gasto nas atividades que geram valor diretamente (construção do software) e em interações diretas com o cliente.

Quais são as metodologias ágeis existentes?

Para ser ágil, você não precisa seguir uma metodologia existente. No entanto, alguns contornos iniciais ajudam bastante, especialmente se você estiver começando. A seguir apresentaremos um resumo das duas mais largamente utilizadas: Scrum e Kanban.

Scrum

O Scrum é um framework para desenvolvimento e sustentação de produtos criado por Ken Schwaber e Jeff Sutherland. O Guia do Scrum define alguns papéis, artefatos e eventos que compõem o método.

No Scrum, um projeto de software é dividido em Sprints, que são ciclos de 1 a 4 semanas em que todas as atividades (do planejamento à entrega) do desenvolvimento são conduzidas. O resultado de cada Sprint é um incremento do produto, ou seja, uma fatia funcional de software que o cliente já pode utilizar.

O Scrum é especialmente interessante para times que dedicam atenção exclusiva ao desenvolvimento de um produto complexo.

Kanban

O Kanban é um método para gestão do trabalho, onde um conjunto de cartões é colocado em circulação em um sistema que equilibra demanda e capacidade de entrega.

Acesse aqui o nosso guia sobre o método Kanban!

Esses cartões representam unidades de trabalho que geralmente entregam algum valor para o cliente final. Para facilitar o entendimento, podemos considerar essas unidades como funcionalidades de um sistema de software.

O fluxo de trabalho é mapeado, onde diferentes etapas são representadas através de colunas, como no quadro abaixo:

Além das etapas definidas, um sistema Kanban possui limites de trabalho em progresso, que determinam a quantidade máxima de trabalho que pode manter-se em execução ou parada em alguma etapa do processo.

O Kanban busca reduzir o desperdício e encurtar os ciclos de feedback. O objetivo final é entregar software funcionando para o cliente no menor tempo possível e com uma certa previsibilidade.

As metodologias ágeis de desenvolvimento de software foram essenciais para o surgimento de muitas outras tecnologias sociais e práticas do futuro do trabalho que falamos aqui na Target Teal. O manifesto traz as bases para movimentos posteriores, como o Management 3.0, A Startup Enxuta, o Manifesto das Organizações Responsivas e a própria Holacracia.

Quer saber mais como levar metodologias ágeis para a sua empresa? Vamos marcar um café e conversar!☕

Sair da versão mobile