Gestão de projetos de software
Planeamento, dependências, riscos, estimação, velocidade, burndown e trabalho em curso.
A reserva completa exige regras acordadas, serviço, ecrã e integração. Fazer o ecrã depressa não antecipa a entrega se o serviço ainda o bloquear. Planear identifica estas dependências e estima quando o resultado pode ficar pronto.
Monitorizar é observar o que acontece; controlar é tomar medidas com base nessa observação. Um plano útil permite detetar um problema enquanto ainda podemos mudar o trabalho.
Âmbito, tarefas e dependências
O âmbito define o que entra e o que fica fora do projeto. Na primeira versão da aplicação queremos consultar salas, reservar e cancelar. Pagamentos e reservas de equipamento ficam fora.
Podemos decompor o trabalho em tarefas, identificar dependências, responsáveis, durações estimadas e marcos. Um marco é um ponto de verificação, como uma reserva completa demonstrada num dispositivo. Não é apenas “fim da semana”.
O caminho crítico é o caminho de maior duração numa rede de dependências e determina a menor duração do plano sob as hipóteses usadas. Considera estas tarefas:
| Tarefa | Duração | Só começa depois de |
|---|---|---|
| A, acordar regras | 2 dias | Nada |
| B, construir serviço | 4 dias | A |
| C, construir ecrã | 3 dias | A |
| D, integrar e validar | 2 dias | B e C |
Segue os traços mais grossos de A a B e D. Repara que D espera pelas duas tarefas, mas C pode terminar um dia mais tarde sem adiar D.
Calcula por passos. A começa no dia zero e termina no dia dois. B vai de dois a seis. C vai de dois a cinco. D só começa quando B e C terminam, por isso começa no dia seis e termina no dia oito.
O caminho A, B, D dura dias, e o caminho A, C, D dura dias; a duração mínima é oito dias, não a soma de todas as durações, 11. C tem folga de dia, e um atraso de dois dias em C cria um caminho de nove dias e torna-o crítico.
Riscos e reservas
Um risco é uma possibilidade incerta que pode afetar os objetivos. Um problema já ocorrido é uma situação a resolver, não apenas um risco futuro.
Para cada risco, regista a causa, a consequência, sinais de ocorrência, uma resposta e quem o acompanha. Se a API de salas puder limitar pedidos, fazemos uma experiência, medimos o limite e planeamos uma alternativa.
A exposição simplificada é , com probabilidade e impacto . Uma probabilidade de 0,25 de causar oito dias adicionais dá dois dias de exposição esperada. Isso ajuda a comparar riscos, mas não garante que o atraso será dois dias. Um evento raro e grave pode exigir atenção mesmo quando o valor médio é baixo.
Estimar
Uma estimativa é uma previsão baseada em informação e hipóteses. Pode usar analogia com trabalho anterior, julgamento de especialistas, decomposição em tarefas ou modelos calibrados com dados. Indica o que inclui e qual é a incerteza.
Pontos de história exprimem tamanho relativo, considerando esforço, complexidade e incerteza segundo a convenção da equipa. No projeto, a escala usada é uma Fibonacci modificada: 1, 2, 3, 5, 8, 13, 20, 40 e 100. Não são horas universais. Uma equipa pode usar uma história conhecida como referência e comparar as restantes.
No planning poker, as pessoas estimam individualmente antes de revelar os valores. Quando aparecem 3 e 8 pontos, discutem as hipóteses. Uma pessoa pode estar a contar apenas o ecrã, enquanto outra inclui a integração e os erros de rede. O resultado útil é esclarecer o trabalho, não escolher uma média sem conversa. As tarefas do Sprint podem estimar-se em horas para acompanhar o dia a dia; os pontos alimentam a velocidade. Não converts pontos em horas por uma taxa fixa: cada nível responde a uma pergunta diferente.
Uma história demasiado grande deve ser dividida em resultados úteis. “Fazer todos os ecrãs” não é a mesma divisão que “consultar disponibilidade de uma sala”: a segunda pode atravessar ecrã, regras e dados, entregando uma capacidade verificável.
Velocidade e previsão
A velocidade é a quantidade de trabalho concluído por iteração, medida na unidade usada pela equipa. Se só contam itens Done, trabalho quase concluído não acrescenta pontos.
Em três Sprints comparáveis, a equipa concluiu 18, 22 e 20 pontos. A média é
Um backlog de 100 pontos sugere cinco Sprints à velocidade média, e usando os extremos observados a previsão simples varia entre e Sprints.
Não é um intervalo estatístico de confiança: pressupõe capacidade, critérios de conclusão, estimativas e âmbito comparáveis. Férias, novas dependências e alterações de âmbito exigem atualizar a previsão. Não compares a produtividade de equipas pelas suas velocidades, pois podem atribuir valores diferentes ao mesmo trabalho.
Ler um burndown
Um burndown mostra o trabalho restante ao longo do tempo, e a linha ideal linear é uma referência, não uma lei sobre o ritmo de execução. Num Sprint de dez dias com 40 pontos, a referência linear no fim do dia cinco é 20; se restarem 26, precisamos primeiro de saber se o âmbito e as estimativas mudaram.
| Situação no dia cinco | Conta do trabalho concluído | Resultado |
|---|---|---|
| Âmbito e estimativas estáveis | 14 pontos | |
| Entraram 10 pontos, sem outras mudanças | 24 pontos |
O mesmo valor restante pode corresponder a progressos diferentes. No primeiro caso, estamos seis pontos acima da referência, mas isso não demonstra que cortar seis chega para terminar.
Restam 26 pontos e cinco dias, o que exigiria uma média de pontos concluídos por dia. Se a equipa repetisse os 14 pontos concluídos nos primeiros cinco dias, sobrariam . Também esta extrapolação é uma hipótese: as histórias terminam em blocos e os bloqueios ou a capacidade podem mudar.
A decisão começa por olhar para itens, bloqueios, capacidade restante e Sprint Goal. Os Developers e o Product Owner podem ajustar o âmbito preservando o objetivo e a qualidade. Um burnup, que mostra trabalho concluído e âmbito total, ajuda a distinguir progresso de crescimento do âmbito.
Trabalho em curso
O WIP, work in progress, é o trabalho começado e ainda não concluído. Abrir muitos itens pode atrasar o momento em que algum fica utilizável, mesmo sem mudar a quantidade total de trabalho.
A simulação considera quatro itens de três unidades cada, todos disponíveis no início. A equipa executa uma unidade por dia e alterna entre os itens em curso. Quando termina um item, começa o seguinte se ainda houver trabalho. Não há dependências, diferenças de tamanho ou custo de alternância.
Cada célula é um dia. As células preenchidas marcam trabalho; o contorno duplo marca a conclusão.
Primeiro item: dia 3. Conclusão média desde o início: 7,5 dias. Último item: dia 12.
Com limite um, A termina no dia 3, B no 6, C no 9 e D no 12. Com limite quatro, a equipa dá a primeira unidade a cada item nos dias 1 a 4, a segunda nos dias 5 a 8 e a terceira nos dias 9 a 12.
| Limite | Dias de conclusão de A, B, C e D | Primeiro resultado | Conclusão média desde o início |
|---|---|---|---|
| 1 | 3, 6, 9, 12 | Dia 3 | dias |
| 4 | 9, 10, 11, 12 | Dia 9 | dias |
O último item termina no dia 12 nos dois casos, mas o foco disponibiliza o primeiro resultado mais cedo. A média conta dias desde o início da simulação. Não é o tempo médio entre começar e terminar cada item, porque com limite um alguns só começam mais tarde.
O modelo isola a alternância; não demonstra que todas as equipas devam trabalhar num único item. Trabalho bloqueado ou competências distintas podem justificar outro limite. No projeto, o quadro sugere um limite igual ao número de membros ou pares da equipa.
Gestão clássica e ágil
A gestão preditiva detalha antecipadamente o trabalho conhecido e controla os desvios. A gestão ágil usa objetivos, prioridades e planos de curto prazo revistos com evidência. Ambas precisam de riscos, recursos e decisões honestas.
Uma data fixa pode exigir variar o âmbito. Um requisito obrigatório pode exigir mais tempo ou outra solução. A equipa deve tornar essas escolhas explícitas, em vez de esconder o desvio em estimativas artificialmente baixas.
Exercícios
Quando termina o plano?
A dura dois dias. B dura quatro e começa após A. C dura três e começa após A. D dura dois e começa após B e C. Com recursos distintos para B e C, calcula a duração mínima, o caminho crítico e a folga de C. Que duração resulta se C se atrasar dois dias? E se, sem esse atraso, uma única pessoa executar B e C, sem poder sobrepor trabalho?
Pista
Mais uma pista
Solução
O plano dura oito dias. A termina no dia dois. B vai de dois a seis e C vai de dois a cinco. D espera por ambas, vai de seis a oito. A, B, D dura oito e A, C, D dura sete, por isso A, B, D é o caminho crítico com folga zero. C tem um dia de folga. Um atraso de dois dias em C faz C terminar no dia sete; D passa a sete–nove, e A, C, D torna-se crítico. No último cenário, B e C precisam de sete dias consecutivos depois de A. D espera pelo fim das duas, logo a duração é 2 + 4 + 3 + 2 = 11 dias, em qualquer ordem entre B e C.
Confere a tua resposta:
- Obtive oito dias e o caminho crítico A, B, D com recursos distintos.
- Calculei um dia de folga em C e nove dias se C atrasar dois.
- Obtive onze dias se uma única pessoa executar B e C sem sobreposição.
- Explicitei que o plano depende da disponibilidade de recursos.
Erros frequentes
No primeiro cenário, não somes 11 dias: B e C têm recursos distintos e podem correr em paralelo. No último, a pessoa partilhada impede essa sobreposição. Não escolhas o caminho mais curto, porque D espera pelos dois.
Uma previsão com hipóteses
Uma equipa concluiu 18, 22 e 20 pontos em Sprints comparáveis. Com a média observada, quantos Sprints completos sugere um backlog de 90 pontos? Arredonda para cima.
Pista
Solução
18 + 22 + 20 = 60. 60 / 3 = 20 pontos por Sprint. 90 / 20 = 4,5, por isso a previsão simples é cinco Sprints completos. Pressupõe Sprints comparáveis em âmbito, estimativas, critérios Done e capacidade. Não é garantia de prazo nem permite comparar equipas.
Erros frequentes
Não arredondes 4,5 para quatro. Não compares esta velocidade com outra equipa que usa outra escala.
O que diz a linha?
Um Sprint de dez dias começou com 40 pontos, sem alteração de âmbito nem de estimativas. Ao fim de cinco dias restam 26. A equipa diz: temos obrigatoriamente de cortar seis pontos. Avalia a conclusão.
Pista
O desvio compara duas linhas no dia cinco. Não mede diretamente o futuro.
Solução
A referência linear é 20 e o desvio é seis. Concluídos são 40 - 26 = 14. Isso não prova o corte necessário. Pelo ritmo observado, a projeção simples conclui mais 14 e deixa 12 por concluir; mas histórias terminam em blocos e o âmbito pode mudar. A decisão exige analisar itens, bloqueios e Sprint Goal. Um burnup ajudaria a separar progresso de crescimento de âmbito.
Confere a tua resposta:
- Calculei seis pontos acima da referência ideal.
- Distingui desvio da linha de previsão de conclusão.
- Propus observar bloqueios, âmbito e capacidade antes de ajustar.
Erros frequentes
Não transformes uma linha ideal em ritmo obrigatório. Cortar seis pode continuar a deixar trabalho por fazer.