0

Fibonacci, User Story Points e Frutas

Um time de profissionais com alguma experiência em desenvolvimento de software tem plenas condições de planejar sprints em algumas horas ou dias, a única premissa é desapegar dos detalhes e discutir apenas a complexidade, o suficiente para comparar e inferir o seu tamanho.

É claro que precisamos ter antes um tanto de auto-conhecimento e clareza no fluxo de trabalho necessário, responsabilidades, DoR e DoD, o restante é básico, como profissionalismo, empatia, senso de pertença e evitar erros conhecidos.

Na chincha, o tipo de estimativa é irrelevante, quer seja T-Shirt Size, User Story Points, Dias Ideais ou Jujubas, … a técnica usada para estimar não muda em nada a quantidade de software que uma equipe é capaz de construir em uma sprint de 10 dias.

Independente de ter sido estimado com tamanho M ou ter 5 pontos, ser 4 dias ideais ou precisar de 7 jujubas, não mudará o fato mais importante que é saber se ele junto de algumas outras histórias cabem ou não em um sprint de 10 dias úteis.

User Story Points

User Story Points usa a série de Fibonacci, uma sequência de números inteiros, começando por 1 e 1, com os subsequentes correspondendo à soma dos dois anteriores [1, 1, 2, 3, 5, 8, 13, 21, …], que em estimativas de software é usual fixar um teto, com frequencia 13 ou 21.

O uso desta série para estimativas de histórias tem o objetivo de desapegar dos detalhes e nos preocuparmos apenas com aspectos que determinem a mudança de patamar. Desta forma, quanto maior a incerteza, maior a história e maior a distância entre os números da escala.

Salada de frutas

Vejamos uma boa analogia sobre a arte de estimar usando Fibonacci e o estabelecimento de referências e comparações. Para visualizar o que estou afirmando proponho um exercício com a imagem abaixo, uma mesa com vários tipos de frutas.

Se o nosso projeto é desenhar e colorir frutas, posso estimar a partir do tamanho em área, perímetro, volume, mas existe também a existência de detalhes, número de cores, a abstração disso tudo podemos chamar de complexidade.

Complexidade diz respeito ao todo, shape, diâmetro, cores, mas se antigamente estimávamos listando cada um e todos estes detalhes, em metologias ágeis uma breve discussão sobre suas peculiaridades é suficiente para perceber se é mais ou menos complexo que outros.

Após discutir sobre as frutas, é possível estabelecer o que seria a menor fruta em sua complexidade geral, para desenhar, pintar e entregar. Feito isso, vamos estimando comparativamente cada uma das outras.

Na prática, não há uma regra óbvia, cada time poderá estabelecer uma base e comparação para a sua estimativa, semelhante mas não necessariamente igual. Mesmo assim, se realizada de forma adequada e consciente, responsável, é provável que tudo dê certo.

Usando pontos sob o paradigma de complexidade relativa, a estimativa não é pelo tamanho da fruta, nem número de côres, mas pela complexidade comparativa, na percepção de esforço que teremos quando tivermos que desenha-las e colori-las.

Talvez o limão fosse o tamanho 1, será nossa referência de unidade, porque é liso, todo amarelo, o morango é menor, mas mais difícil de desenhar e colorir, por isso o 3, o abacaxi se equivale a abóbora grandona, bem maior, mas com shape menos complexo.

Isso não é muito diferente de software, as principais informações são as integrações, excepcionalidades inerentes a regras de negócio, sofisticação diferenciada, não queremos saber detalhes daquilo que é comuns, apenas do incomum.

Parafraseando Pareto e Juran, entre tantos detalhes triviais em cada tela de um sistema, haverá poucos detalhes vitais que as diferenciem em complexidade … uma percepção que se apura a cada experiência, porque afinal, estimativa se aprende estimando.

Já participei de projetos em que o time tinha alçada e decidiu não mais estimar, apenas discutir, entender e decidir quais caberiam em cada sprint. conforme prioridade e valor. Não é muito diferente dos outros tipos de estimativas, porque no final queremos apreender o que cabe ou não.

Mas por hora não entrarei muito nesta discussão, porque números, métricas, PxR e outras matemáticas ainda são necessárias para a maioria aprender, crescer e aperfeiçoar-se como profissionais … com números tudo fica um tanto mais explícito.

0

O medo pode ser um aliado ou seu maior inimigo

O medo pode ser um aliado, como aquele medo que transmutamos em atenção e coragem para nos mover adiante, mas também pode ser um procrastinador, gerador de uma zona de conforto disfuncional, situações em que nos resignamos ou paralisamos frente a ele. Na regra o ser humano é movido mais pelo medo que pela convicção, mais pela pressão que pela paixão.

Uma das maiores bases para este entendimento é a Teoria da Dissonância Cognitiva, sobre ela já escrevi vários posts e já fiz várias palestras, trata-se de defesas psíquicas, quando nosso consciente angustiado com algo é ajudado pelo nosso inconsciente para transferir, projetar, negar, racionalizar ou reprimir, ao invés de encarar o problema, justificamos e nos escondemos atras dele.

Na sua vida pessoal é possível procrastinar mudanças, alternativas, oportunidades, riscos, a vida é sua e faça o que achar melhor, mas no trabalho cada vez há menos espaço para profissionais que são reativos, que só se justificam, que se resignam, … como me disse o guru Luiz Cláudio Parzianello em 2011, “vivemos uma época de mudanças, quem não muda, dança!”.

planos

As empresas não querem mais meros “apontadores de erros” ou “justificadores”, elas querem pessoas que ao perceberem problemas ou desafios, gerem planos de ação, propostas para tentativas de solução ou mitigação. Ficar no seu quadrado fazendo a sua parte e explicando os motivos nos outros quadrados que justificam porque não deu certo é muito vintage … resiliência no século XXI não é suportar a pressão, mas agir para coletivamente atenuá-la até zero.

Mas, atenção ao usar Agile, a mudança ou a falta dela como desculpa para sua zona de conforto não vai isentá-lo das consequências, o foco de todos nós precisa ser REALISMO e KAIZEN, em BABY STEPS, mudando o que é possível mudar em nós mesmos e no time, ao mesmo tempo que atendemos e surpreendemos, porque o restante é consequência, não pré-requisito.

Empresas não existem, o que existem são pessoas e o agente de mudanças é cada um de nós, mas é preciso ter estratégia, tática e realismo!

É preciso que individual e coletivamente se estabeleçam motivações de lócus internos, é preciso estabelecer uma estratégia de olhos no futuro, mas com realismo e pés no chão, mudança em ambientes organizacionais ocorrem em pequenos passos. Vivemos sistemas sócio-técnicos, a solução não está no método ou na estratégia, a solução está em cada um, nas pessoas, em você!

15/07/16 – A responsabilidade é nossa, não culpe o cliente
10/07/16 – Refleti e tenho tarefas … para os outros fazerem 😦

02/12/16 – Quem você é, um Atrasador ou Acelerador?
11/04/17 – Seu objetivo é o método ou o valor gerado por ele?
01/12/17 – NÃO entregar valor NÃO é opção em uma sprint

Desculpa aí, se você acha que está em uma cruzada contra o status quo e falta de compromisso com os princípios ágeis, sempre apontando múltiplos motivos e justificativas, sendo um formador de opinião de que assim não dá e tal, reclamando no cafezinho … VOCÊ É O QUE MENOS ENTENDEU E O MAIOR PROBLEMA PARA QUE AS COISAS REALMENTE COMECEM A ACONTECER!

4

Um blog 100% dedicado a Team Building Games

A algum tempo vinha pensando em lançar um blog com todos os jogos que eu usei ou uso em quebra-gelos, aquecimentos e Agile Games, pois o projeto saiu da cabeça e materializou-se em um MVP, um tema wordpress para portfólios que acredito que faz a sua parte \o/

Todos as ilustrações são da Luisa Audy e já temos 100 Team Building Games detalhados ou linkados para suas páginas de origem. A quem acessar, por ser um experimento, deixe seus comentários, sugestões, críticas ou mesmo compartilhe outros jogos que gostaria de ver por lá.

jogos

Se o feedback for positivo e agregar o valor que espero estar contribuindo para quem busca jogos, detalharei melhor os que lá estão e acrescentarei novos com a mesma frequência com que posto por aqui textos sobre Agile e vida em equipe, em organizações e boas práticas.

Se não for de interesse, vou eliminá-lo e manter tudo concentrado por aqui no meu blog de conteúdo e parto para outras ideias … então, por favor, registre seu feedback e, se gostar, compartilhe o blog de jogos para fazer chegar e verificarmos se seu formato interessa.

https://jogos360graus.wordpress.com/

1

NÃO entregar valor NÃO é opção em uma sprint

A cada dia em um projeto SCRUM é preciso relembrar Pareto (80 x 20), bem como buscar inspiração na técnica de caminho crítico. Desde o release plan, product backlog e sprint backlog, daily e pós-daily, review e retrô, o discurso de valor é legal, mas só vale se entregarmos valor.

Quando cito Pareto em projetos, tem o estratégico pela necessidade do cliente e usuários, o tático na complexidade e capacidade, tem o operacional de cada dia, a nível de tecnologia, requisitos, funcionalidades, regras, … temos então nossa rede mental e caminho crítico.

Pareto: A regra dos 80/20 ou Lei dos poucos vitais para muitos triviais, afirma que aproximadamente 80% dos efeitos vêm de 20% das causas. Um dos ícone do Lean, a lenda Joseph Moses Juran, sugeriu este princípio e o nomeou em homenagem a Vilfredo Pareto e seus estudos.

Áreas de Convergência/Divergência: O caminho crítico é uma sequencia de atividades que representa o caminho mais longo de um projeto. Área de Convergência é quando várias atividades devem concluir para outra iniciar, Área de Divergência é quando uma é pré-requisito de várias.

Assim como um bom gerente de projetos, uma equipe ágil lida diariamente com a possibilidade de tomada de decisões relacionadas a riscos, rede, fragmentação, inclusão e exclusão de atividades, paralelismo e sequenciamento, recursos essenciais para auto-organização e sucesso.

Em uma liberdade poética, trago uma rede e seu caminho crítico propostas pela UniversoProjeto para discutir conceitos de caminho crítico, não representa a estratégia de histórias e tarefas em uma sprint mas é didática quanto a caminho crítico e áreas de convergência e divergência:

Em Agile, cada história possui sua rede no sprint, gerando um desafio tático diário ao time, como na abstração que montei logo abaixo … a entrega do mínimo valor (vitais) de qualquer história não pode ser comprometida em função de entregas triviais de outras histórias:

Diariamente, a cada novo fonte, objeto, classe ou método é preciso perceber o caminho crítico e lembrar de evitar triviais antes de vitais, valorizando eliminar gargalos e garantir entregas antecipadas, parciais, essa é a nossa missão: Entregar valor!

As vezes usamos de dissonância cognitiva para justificar o porque não vai ser possível, esquecendo de se utilizar de uma visão holística, onde o todo é composto de partes … equipes ágeis de alta performance esforçam-se em entendê-las e tomam decisões para garantir entregas e valor.

Acredite, adaptar-se não é resignar-se a inevitabilidade das mudanças, é diariamente mitigar, contornar, fracionar, eliminar ou reduzir áreas de convergências e divergência, focar na essência, de forma que a adaptação não seja a negação do valor, mas a confirmação dele.

Cada SPRINT é um pacto por valor a ser entregue

Planejado na inception e materializado no product backlog, a sprint backlog é um pacto gerado pelo time entorno do mix de domínio, conhecimento, expertises e percepções de todos, levando em condição valor, prioridade, complexidade, riscos e oportunidades.

A cada Daily e pós-Daily, nossa missão é repactuar o sucesso de nossas entregas, mitigando riscos, sempre focados no mínimo entregável de valor suficiente, sempre investindo no vital e questionando o trivial, justificando assim o porque do método ágil que praticamos.

Na medida que o sprint avança, a responsabilidade e necessidade de planos de ação e responsabilidade na aplicação de árvores de decisões vais tornando-se cada vez mais premente. No 1° dia, 2° e 3° temos mais opções, a partir do 4° e do 7° temos menor margem para manobras.

Estudo de caso: Em um cenário adverso, no segundo dia foi discutido opções e assumidos certos riscos, no quarto dia já é preciso concentrar esforços e no sétimo dia muitas vezes temos que tomar decisões difíceis, mas responsáveis frente ao compromisso de entrega de valor.

Para ser mais claro, quando falamos no sprint planning sobre compromisso com a excelência combinada, características funcionais otimizadas, regras, automações, camadas, etc, isto NÃO pode ser mais importante que a entrega, validação com o cliente, fluxo e cadência.

Se decisões tiverem que ser tomadas, ok, vamos depois discutir o porque foi preciso, vamos aprender com elas, vamos nos esforçar por melhorar nos próximos sprints, vamos incluir a discussão sobre o resgate e refatoramento do gap entre o que foi previsto versus o que foi feito.

Falando em valor e sprints, cuidado com o que promete, pois és responsável por quem cativas e NÃO entregar o máximo de valor a cada sprint NÃO é opção! O desafio e a solução todos terem este princípio em mente, sem stress, mas antenados ao máximo de entregas de valor.

Nossa linguagem ubiqua foca em valor para o cliente, se você mesmo assim não abre mão de atrasos por excelência técnica, em detrimento de valor antecipado, validação e aprendizado – PDCL – Desculpa, mas talvez seja uma linguagem ambigua e não ubiqua.

Se leu até aqui, tenho certeza que vai curtir ler esse outro, garantcho:  https://jorgeaudy.com/2014/11/04/divida-tecnica-um-mal-necessario-mas-nao-e-um-carma/

2

Keep Talking and Nobody Explodes

Nesta sexta, dia 24 as 19:00 tem Oficina de Retrospectiva com Keep Talking and Nobody Explodes. Ana Carolina Hermann e a Isa Giongo esperam vocês com uma dinâmica de retrospectiva muito disruptiva, utilizando Keep Talking and Nobody Explodes. Um jogo cooperativo em que a equipe precisa desarmar uma bomba. É um jogo pedagógico para todos, em qualquer contexto e o objetivo é aprendizado conjunto.

24/11 – 19h as 20h – Pr 99A (Tecnopuc), 5° andar, DBServer, vagas limitadas

Inscrições: https://goo.gl/bAiKZs

0

Rapport é relacionamento, base de um Time de Alta Performance

“Rapport é um conceito da psicologia, uma técnica usada para criar uma ligação de sintonia e empatia com outra pessoa. Empatia e relacionamento positivo é fator crítico de sucesso de um time, através da existência de uma relação convergente e harmônica no trabalho. Isto não quer dizer unanimidade ou igualdade, mas equidade e sinergia.

O estabelecimento de uma relação positiva no inter-pessoal de um grupo sócio-técnico de alto nível impõe equilíbrio entre influência, convicção e propósito. Muitos profissionais são ainda muito individualistas, competem por motivos fúteis, privam-se de uma visão do todo, alguns falam de agilidade, mas não abrem mão de uma visão passional do seu entorno.

Rapport

A psicologia chama de Rapport um “estado que ocorre quando duas pessoas sentem-se capazes de se conectar entre si a partir de interesses compartilhados, valores e outros fatores pessoais”, devendo se valer da atenção mútua, positividade e continuo contato, correspondência de ritmo, posturas e espelhamento, corporal e emocional.

O exercício de coaching utiliza os princípios da técnica de Rapport para estabelecer um relacionamento de confiança entre Coach e Coachee. Segundo o IBC este foco promove três comportamentos durante o coaching – coordenação, positividade e atenção mútuas – essenciais para a geração de sintonia e convergência às ações e resultados desejados.

Espelhamento

Li vários artigos sobre espelhamento e quanto mais eu lia, mais entendia o que não estava escrito, agilidade é estabelecer uma relação harmoniosa, envolvendo um mesmo parâmetro para nossos relacionamentos inter-pessoais, verbal e não verbal. Praticá-lo no nível adequado com nossos parceiros nos coloca em outro patamar enquanto pessoas – tem a ver com respeito, empatia, humildade e propósito.

Artigos relatam espelhamento como movimentar-se e falar de forma parecida com o outro, não é fazer igual, mas entrar em sintonia, em harmonia, mesmo divergindo em ideias e opiniões. Artigos citam postura, respiração, energia e ritmo, entre outras disciplinas trabalhadas de forma consciente até serem internalizadas, aprimorando nossa buscar por equilíbrio e harmonia com nossos interlocutores.

It’s Not All About “ME” (Robin Dreeke)

No livro de Dreeke há 10 disciplinas que nos ajudam a estabelecer Rapport, em Agile vivemos grupos sócio-técnicos e aprender a lidar com pessoas é tão importante quanto lidar com tecnologia. Uma impressão não literal dos 10 pontos definidos por Dreeke seria:

1)  Establish artificial time constraints

Limitação de tempo, ao iniciar estabeleça o tempo disponível, do todo ou para a etapa. Ao iniciar uma reunião, evento, conversa, debate, estabelecer uma perspectiva de tempo é tão importante quanto uma meta ou objetivo;

2) Make Sure Your Body Language is In Sync

Parecer é tão importante quanto ser, então evite demonstrações antagônicas, sorria, evite posicionar-se acima ou abaixo dos outros, seja gentil e espelhe o cumprimento, evite ser muito mais ou menos intenso que o outro, ao apertar a mão retribua ao invés de impôr;

3) Speak Slowly

Cadência e intensidade da fala, o volume e força dizem muito, Dreeke sugere pausar, cadenciar, dando tempo para que as pessoas acompanhem a linha de raciocínio, assimilem o conteúdo. Muita força demonstra animação, mas pode demonstrar ansiedade ou descontrole;

4) Ask For Help

Assertividade em pedir, atender ou receber são princípios de todas as relações humanas, exercitamos argumentação e negociação todos os dias e quanto mais empáticos formos, maior a probabilidade de estabelecer conexões e fazer acontecer;

5) Suspend Your Ego

Conter seu ego, tem a ver com ser um bom ouvinte, permitir-se ouvir, compreender, estabelecer pontos de contato, evitando ser auto-suficiente a ponto de colocar suas necessidades a frente de tudo o mais, impondo sua vontade;

6) Validate Others

Saber ouvir, com transparência e não impôr seu pensamento, genuinamente entender a posição e opinião, argumentos e embasamento do outro, é a melhor forma de debater e convergir positivamente para a melhor opção, sem sermos tendenciosos;

7) Ask: How? When? Why?

Aproveite as informações que estão lhe fornecendo para enriquecer de forma genuína seu posicionamento, use perguntas abertas para entendê-las, mesclar diferentes pontos de vistas enriquece qualquer debate ou tomada de decisão;

8) Quid Pro Quo

Reciprocidade, qualquer interação humana tende a estabelecer uma relação, melhor com empatia e vínculo, quando nos esforçamos em dar e receber, as pessoas sentem-se mais acolhidas e instigadas – entrega, doação, bilateralidade;

9) Give A Gift

Altruismo, evitando não valorizar o esforço e conquistas dos outros, evitando julgar e diminuir pequenas vitórias, a percepção e valorização do esforço em fazer certo, em correr riscos, em tentar fazer, nos faz ir além, algo como altruísmo recíproco;

10) Managing Your Own Expectations

Gerenciar expectativas, é fundamental manter expectativas o mais realistas possíveis, gerenciá-las garantem que cada meta ou objetivo, pessoal ou coletivo, sejam conscientes, factíveis mas desafiadoras, nos motivando a persegui-las.

0

Tem o 5W2H, Managing Dojo, Learning 3.0, mas não esqueçam do A3 Report

É fundamental ter diferentes técnicas que orientem e organizem discussões para resolução de problemas, aproveitamento de oportunidades, desafios de inovação e superação. Eu chamo de Toolbox 360º, lancei um livro e um jogo de tabuleiro com este objetivo, provocar profissionais a refletirem sobre o mix de técnicas que domina e lança mão conforme necessidade.

Tenha e amplie sua toolbox permanentemente, lembre-se da alegoria da caverna de Platão e do ditado popular, porque para alguém que só conhece o martelo, todo problema parecerá um prego:

O uso de técnicas de gestão visual, mapas mentais, 5w2h, managing dojo, learning 3.0, entre outras, conta também com a dinâmica Lean conhecida como A3 Report. Trata-se do instanciamento dos princípios básicos do Lean – fracionar, descentralizar, antecipar mais valor, alta performance, eliminar desperdícios, aprender e melhorar continuamente, ver o todo, …

PDCA – Estabelecido um desafio, o tema da discussão, direcionamos a discussão a resultados, iniciando pelo entendimento, efeitos e causas, alternativas e plano de ação, como monitorar sua evolução e resultados, de forma iterativo-incremental, aprendendo e melhorando a cada ciclo.

Plan – Qual o desafio e sua relevância, valor; histórico, se algo já foi feito e se há contingenciamento; se possível incluindo algo explícito e visual como dados diagramáticos, números; com exercício de análise causal, 5W2H, CSD, Ishikawa ou Pareto;

Do – Frente as causas e efeitos analisados, qual o plano de ação, contando com aquelas informações necessárias para entendimento mínimo ne planejamento, como tempo, recursos e responsável, qual o resultado esperado a cada passo e final;

Chek – Quais as métricas e indicadores a serem utilizados para monitoramento e controle, com que frequência serão medidos, preferencialmente de forma auto-organizada pelo próprio time; favorecendo percepção de riscos e correções de rumo;

Act ou Learn – Aproximando participantes e stakeholders, com comunicação explícita e assertiva frente a objetivos de valor, com gestão do conhecimento (tácito-explícito) e conversão em aprendizado e correções para um novo ciclo de sucesso;

Ao procurar na internet por A3 report, explicitamente recebemos centenas de páginas sobre o uso desta técnica e assemelhadas, não só no contexto Lean fabril, mas até mesmo em referências ágeis como na Scrum Inc em um exercício sobre a não entrega de valor por sprint:

Uma página me chamou a atenção, com múltiplos exemplos e boa didática, impossível ler este post do Edson Miranda da Silva e não entender a técnica em sua plenitude – https://qualityway.wordpress.com/2017/05/04/a3-passo-a-passo-com-exemplos-reais-por-edson-miranda-da-silva/