top of page

Estimativas Ágeis: Um Guia para o Sucesso no Desenvolvimento de Software

Bruno Tarsis

Atualizado: 10 de set. de 2023

Nesta postagem do blog, desejo mostrar a importância das estimativas ágeis, e trazer a importância de que que as estimativas não são acordos rígidos, mas sim previsões que oferecem informações valiosas para o planejamento adequado. Entender que as estimativas ágeis podem mudar ao longo do projeto é fundamental para abraçar a flexibilidade que o desenvolvimento ágil oferece.


Neste texto, quero mostrar o mundo das estimativas ágeis, suas vantagens e como aprimorar sua utilização para maximizar o valor entregue aos clientes. Estimativas ágeis são um aspecto crucial para o sucesso de projetos de desenvolvimento de software, a habilidade de prever o esforço necessário para completar uma tarefa é fundamental para o planejamento e a gestão de projetos ágeis.


Mas qual seria a definição de estimativas ágeis? Eu diria que são um conjunto de técnicas e práticas que permitem às equipes de desenvolvimento de software prever o esforço necessário para concluir tarefas, sprints ou projetos inteiros em um ambiente ágil. Elas fornecem insights cruciais para o planejamento e a tomada de decisões informadas durante todo o ciclo de vida do projeto, no entanto, é uma tarefa complexa que exige conhecimento, colaboração e experiência.


E por exigir conhecimento, colaboração e experiência precisamos envolver várias perspectivas na criação de estimativas, pois se nos guiarmos apenas por especialistas individuais elas se tornarão falíveis, mas se as estimativas forem geradas dentro dos grupos de especialistas elas serão poderosas. Ao trabalhar em equipe, as estimativas são mais assertivas e refletem a sabedoria coletiva, minimizando o impacto de possíveis erros individuais.


Contudo, devo destacar a dificuldade de estimar tarefas desconhecidas ou poucos familiares, desta forma é importante reconhecer que estimativas para projetos inexplorados podem gerar incertezas e diversas dúvidas, mas com um direcionamento coerente sobre o que representam as estimativas é possível criar um fórum de discussão para que todos possam levantar esses pontos ainda não alinhados o que permitirá ajustes à medida que mais informações são obtidas no decorrer da jornada.


Assim precisamos realçar a importância do foco na direção certa, mesmo que as estimativas não sejam extremamente precisas. O objetivo é ter uma ideia geral do esforço necessário e ajustar conforme o projeto avança, em outras palavras é melhor ser aproximadamente certo do que precisamente errado.


O pensamento de que as estimativas são um meio e não um fim nos ajudam a gerar uma discussão entre as pessoas sobre o tema colocado em pauta, e observamos que elas representam o conhecimento atual da equipe e estão sujeitas a ajustes à medida que novas informações surgem. Flexibilidade é fundamental para lidar com a incerteza inerente ao desenvolvimento de software.


O propósito das estimativas não é obter números exatos, mas promover discussões produtivas dentro da equipe, o foco está na troca de conhecimento e na compreensão coletiva das tarefas a serem realizadas.


Contudo, mesmo tendo em mente de que as estimativas são previsões, precisamos nos ater ao fato de que impor estimativas ou usá-las como prazos rígidos pode criar pressão desnecessária e prejudicar as pessoas e o processo ágil. As estimativas devem ser usadas como uma ferramenta para entender o trabalho mesmo que as usamos como prazos, porém não como uma métrica para controlar a equipe, ou seja se forem impostas elas se tornarão irracionais.


Vantagens das estimativas ágeis:


As estimativas ágeis se baseiam na colaboração, na comunicação e na adaptação contínua, elas visam proporcionar um entendimento coletivo das tarefas, em vez de apenas produzir números precisos.


Por permitir a criação de um ambiente colaborativo, onde todos participam da discussão, é possível tomar decisões mais embasadas sobre o escopo, contribuindo assim com o planejamento e a priorização das atividades.


Embora as estimativas ágeis não sejam garantias absolutas, elas ajudam a reduzir incertezas e a aumentar a previsibilidade ao longo do projeto, nos ajudando assim com uma maior previsibilidade. Previsibilidade essa que possibilita realizarmos uma melhoria contínua, nos permitirá analisar as estimativas e o desempenho real do projeto, onde a equipe poderá identificar áreas de melhoria e implementar ações corretivas para futuros projetos.


Também é possível um melhor gerenciamento das atividades, pois com estimativas confiáveis, é possível otimizar a distribuição das demandas, evitando assim sobrecargas ou ociosidade. Ou seja, é possível avaliarmos a capacidade das equipes que poderão analisar sua capacidade e produtividade ao longo do tempo, além do aprendizado proveniente das estimativas anteriores que darão base de melhoria para as estimativas futuras.


Mais uma vantagem das estimativas ágeis é a possibilidade em termo feedback contínuo, ou seja, a equipe obtém feedback valioso sobre a eficiência do trabalho e possíveis ajustes das suas estratégias conforme necessário.


Dicas para melhorar as estimativas ágeis:

  1. Envolva a equipe: A colaboração é fundamental para estimativas ágeis precisas inclua toda a equipe no processo de estimativa para obter uma visão holística das tarefas e dos possíveis obstáculos.

  2. Aprenda com a experiência: Use dados históricos de projetos anteriores para aprimorar as estimativas futuras - o aprendizado contínuo é essencial para o crescimento da equipe.

  3. Reavalie regularmente: Estimativas não são estáticas, elas devem ser reavaliadas e atualizadas conforme novas informações e mudanças no projeto surgem.

  4. Use técnicas ágeis de estimativa: Elas podem aprimorar a precisão e a confiabilidade das estimativas.


Exemplos de estimativas:

  • Matriz Esforço x Complexidade

A importância de realizar uma estimativa considerando a complexidade e o esforço das atividades é fundamental para o planejamento e o gerenciamento eficaz dos projetos ágeis. Quando a equipe ágil realiza estimativas cuidadosas, levando em conta a natureza das tarefas, eles colhem uma série de benefícios essenciais:

  1. Planejamento eficiente: Estimar a complexidade e o esforço das atividades ajuda a equipe a criar um plano realista para a entrega do projeto. Eles podem identificar as tarefas mais complexas e/ou com maior esforço, permitindo a criação de estratégias para enfrentá-las.

  2. Distribuição equilibrada de tarefas: Ao considerar a complexidade e o esforço, a equipe pode distribuir as atividades de forma mais equilibrada entre os membros. Isso evita que alguns membros fiquem sobrecarregados com tarefas complexas, enquanto outros têm pouco desafio.

  3. Priorização eficiente: Estimar a complexidade e o esforço ajuda a equipe a priorizar as tarefas com base na sua importância e dificuldade. Isso possibilita que o trabalho de maior valor ou de maior complexidade seja tratado com a devida atenção.

  4. Antecipação de riscos: Ao considerar a complexidade das atividades, a equipe pode identificar riscos potenciais e preparar-se para lidar com eles. Isso aumenta a probabilidade de que o projeto seja bem-sucedido, pois eles estão cientes dos possíveis desafios.

  5. Estimativas mais realistas: Levar em conta a complexidade e o esforço torna as estimativas mais realistas e confiáveis. Isso ajuda a equipe a definir expectativas mais precisas para o cliente e stakeholders do projeto.

  6. Transparência e comunicação: Estimativas baseadas na complexidade e no esforço facilitam a comunicação com os stakeholders. Isso torna o processo mais transparente e auxilia no entendimento das decisões tomadas pela equipe.

Eu particularmente faço uso de um material repassado por um amigo de longa data chamado Robervan Hohenfeld (linkedin: https://www.linkedin.com/in/robervanhohenfeld/ ), também Agile Coach. Após uma longa conversa sobre o tema ele me apresentou essa matriz:


Matriz Esforço x Complexidade
Fonte: Marcelo L. Barros: Esforço e Complexidade: quando tamanho realmente importa

Desde então faço muito uso dela e indico seu uso para os times, pois eu consigo orientar as pessoas sobre a clareza das informações das atividades. É possível ajudar as pessoas, principalmente para aquelas atividades que é desconhecida por todos, sobre o que colocar em pauta nas discussões.


Explicando mais sobre a matriz:


Temos a coluna de Esforço, com uma numeração que nos indica em tempo relativo o quanto a pessoa levará para sua conclusão. A outra coluna representa a Complexidade, que nos apresentação uma numeração relativa com alguns questionamentos para serem levados em conta durante a discussão do time.


Após determinar os valores de cada coluna, basta multiplicarmos para achar o valor final e definir em qual posição ela ficará na matriz. Sendo que a área verde (localizada a esquerda da matriz) representa atividades relativamente "rápidas", a área amarela (localizada no meio da matriz) já representam atividades que necessitam de atenção por apresentar algum aspecto de risco.


Já a área vermelha (localizada a direita da matriz) representa atividades com alto grau de risco ou até mesmo demandas grandes e que podem ser "quebradas" pelo time em atividades menores.


Em resumo, realizar estimativas considerando a complexidade e o esforço das atividades é uma que ajuda a equipe a tomar decisões mais planejadas, antecipar possíveis desafios e mitigar alguns riscos.


  • Planning Poker:

A prática do Planning Poker é uma das técnicas mais populares para estimativas ágeis em projetos de desenvolvimento de software. Ela foi criada por James Grenning e popularizada por Mike Cohn em seu livro "Agile Estimating and Planning.".


O Planning Poker é uma atividade colaborativa e interativa realizada pela equipe ágil para estimar o esforço necessário para concluir as tarefas do backlog do produto. Essa prática é essencial e apresenta várias vantagens significativas para o sucesso do projeto:

  1. Colaboração e engajamento da equipe: Toda equipe é reunida para participar ativamente das estimativas, cada membro tem a oportunidade de expressar sua opinião e conhecimento sobre as tarefas. Isso promove um senso de pertencimento, engajamento e responsabilidade, pois cada integrante tem uma voz ativa no processo.

  2. Compreensão compartilhada das tarefas: Ao discutir e compartilhar diferentes perspectivas durante o Planning Poker, a equipe desenvolve uma compreensão compartilhada das tarefas e seus requisitos. Isso evita ambiguidades e melhora a definição das histórias de usuário e suas respectivas estimativas.

  3. Aproveitamento da sabedoria coletiva: O Planning Poker baseia-se na ideia de que a sabedoria coletiva da equipe é mais precisa do que a opinião individual. Ao combinar as percepções de diferentes membros da equipe, as estimativas se tornam mais realistas e confiáveis.

  4. Redução de uma única perspectiva e da pressão: A prática do Planning Poker ajuda a evitar o viés individual e a pressão para se conformar com as opiniões de outros membros da equipe. A votação anônima das estimativas evita influências externas e promove a objetividade.

  5. Adaptação a mudanças: Permite que as estimativas sejam atualizadas ao longo do projeto, à medida que novas informações são adquiridas e a compreensão das tarefas evolui. Isso se alinha perfeitamente com o princípio ágil de responder a mudanças ao invés de seguir um plano rígido.

  6. Foco na conversa e não nos números: No Planning Poker, o foco principal é nas discussões e no entendimento compartilhado das tarefas, e não em obter estimativas precisas. As cartas numéricas são apenas uma ferramenta para iniciar conversas significativas sobre as complexidades das tarefas.

  7. Estimativas rápidas: O uso de cartas com valores numéricos no Planning Poker (por exemplo, 1, 2, 3, 5, 8, 13) permite que a equipe faça estimativas rapidamente. A prática evita discussões intermináveis e ajuda a manter um ritmo eficiente durante o processo de estimativa.

Nos dois últimos tópicos mencionei sobre a utilização de cartas com uma escala de números, escala esta que tem como parâmetro a famosa sequência de Fibonacci, onde cada número corresponde à soma dos dois números anteriores.


Quando um time que acompanho usa a prática do Planning Poker com a escala Fibonacci, tenho o costume de mostrar a imagem abaixo para ajudar nas conversas do grupo enquanto definem um valor.

Escala de Fibonacci na prática
Fonte: Julee Everett, Fibonacci: A Beginner's Guide to Relative Sizing

O Planning Poker é uma prática inestimável para fomentar a colaboração, compreensão compartilhada, uso da sabedoria coletiva e redução da indução de uma única perspectiva, permitindo que a equipe obtenha estimativas com um grau elevado de alinhamento. Além disso, a agilidade da prática permite que as estimativas sejam adaptadas conforme a progressão do projeto.


  • Estimativa em T-Shirt

A estimativa ágil "T-Shirt Sizes" (ou "Estimativa em Tamanhos de Camiseta") é uma técnica simples e eficaz utilizada para estimar o tamanho relativo de tarefas ou histórias de usuário em um projeto de desenvolvimento de software. Nessa técnica, ao invés de atribuir valores numéricos específicos, a equipe utiliza tamanhos de camisetas (P, M, G, GG, etc.) para indicar o nível de complexidade ou esforço necessário para concluir uma tarefa. A importância dessa prática reside em diversos benefícios:

  1. Simplicidade e facilidade de compreensão: A abordagem das "T-Shirt Sizes" é fácil de entender, até mesmo para equipes com diferentes níveis de experiência. Os tamanhos de camisetas são representações visuais claras e intuitivas que facilitam a comunicação entre os membros da equipe.

  2. Rapidez na estimativa: Essa técnica permite que a equipe faça estimativas rápidas e focadas no entendimento geral da complexidade da tarefa, evitando a necessidade de gastar tempo detalhando valores numéricos específicos.

  3. Maior colaboração: A estimativa em T-Shirt Sizes promove discussões colaborativas entre os membros da equipe, levando a um entendimento compartilhado das tarefas e suas implicações.

  4. Evita precisão excessiva: Em projetos ágeis, estimativas extremamente precisas são frequentemente impraticáveis e podem gerar mais complexidade do que benefícios. A técnica de T-Shirt Sizes permite uma abordagem mais flexível e adaptável.

  5. Adaptação às mudanças: A estimativa em T-Shirt Sizes é altamente adequada para ambientes ágeis, onde as prioridades e requisitos do projeto podem mudar com frequência. A equipe pode rapidamente reavaliar e ajustar as estimativas à medida que novas informações surgem.

  6. Não reforça premissas erradas: Evita a armadilha de atribuir um grau de precisão falso às estimativas, permitindo que a equipe permaneça aberta a ajustes e melhorias contínuas.

  7. Estimativas relativas: A técnica de T-Shirt Sizes enfatiza a natureza relativa das estimativas, permitindo que a equipe priorize e planeje o trabalho de acordo com a complexidade relativa das tarefas.

  8. Foco nas diferenças de tamanho: A principal preocupação é identificar a relativa diferença de tamanho entre as tarefas, o que é mais importante do que obter valores numéricos exatos.

Como mencionado anteriormente, essa prática nos ajuda a identificar o tamanho relativo das atividades, mas para isso recomendo primeiro fazer um alinhamento com as pessoas do time para estabelecer algumas "regrinhas" como, por exemplo:

Estimando com T-Shirt
Fonte: Próprio autor

Na imagem acima, o entendimento gerado foi que para o tamanho P representariam as demandas com o tempo relativo a um dia, para o tamanho M o tempo relativo seriam para 5 dias e para o tamanho relativo das demandas classificadas como G ficariam 10 dias. Sendo assim, a estimativa para o conjunto do exemplo da figura acima seriam 16 dias, levando em consideração que cada história teria uma pessoa responsável.


Em resumo, ao utilizar essa técnica, as equipes podem priorizar o trabalho de forma eficaz e adaptar-se facilmente às mudanças do projeto, tornando a sua jornada mais suave e bem-sucedida.


As estimativas ágeis são ferramentas poderosas para o planejamento e execução de projetos de desenvolvimento de software. Ao aceitar que as estimativas são previsões, não compromissos fixos, e ao envolver todas as pessoas do time com suas respectivas perspectivas na criação delas, as equipes ágeis podem tomar decisões mais assertivas e maximizar suas chances de sucesso.


É importante compreendermos que estimativas não são números exatos, pois elas mudam de acordo com as novas informações que surgem, mas sim ferramentas para fomentar diálogos significativos dentro da equipe. Flexibilidade, colaboração e compreensão são essenciais para alcançar o sucesso em um ambiente ágil e maximizar o valor entregue ao cliente.


Com a combinação certa de conhecimento e prática, sua equipe estará pronta para enfrentar os desafios e prosperar no mundo ágil, e lembre sempre que estimativas não são compromissos, mas previsões que ajudam a tomar decisões informadas.


Então, mergulhe de cabeça na arte das estimativas ágeis e leve seus projetos para o próximo nível! Referências Bibliográficas

  1. BARROS, Marcelo L., Esforço e Complexidade: quando tamanho realmente importa, 18 fev. 2018. Disponível em: https://agilemomentum.wordpress.com/2018/02/18/esforco-e-complexidade-quando-tamanho-realmente-importa/ . Acesso em: 01/08/2023.

  2. EVERETT, Julee Everett, Fibonacci: A Beginner's Guide to Relative Sizing, 19 out. 2021. Disponível em: https://www.scrum.org/resources/blog/practical-fibonacci-beginners-guide-relative-sizing . Acesso em: 01/06/2023.

  3. COHN, Mike. Agile estimating and planning. 1 novembro 2005: Prentice Hall PTR, 01/11/2005. 330 p. ISBN 9780131479418.

Revisão: Fernanda Baqueiro

69 visualizações0 comentário

Posts Relacionados

Ver tudo

Comments

Rated 0 out of 5 stars.
No ratings yet

Add a rating
Post: Blog2_Post

©2020 por BTarsis Consultoria
Alameda Salvador - Caminho das Árvores, Salvador - BA, Brasil

Bruno Tarsis

Fernanda Baqueiro

bottom of page