Muitos livros e artigos do Scrum dizem que um sprint com falha (quando a equipe falha em concluir alguns recursos do Sprint Backlog) não é algo tão ruim, acontece de tempos em tempos, e pode ser realmente útil se a equipe aprender com seus erros e melhora algo nos seguintes sprints. E a equipe não deve ser punida por não concluir o trabalho com o qual se comprometeu.
A maneira como você "castiga" esse tipo de comportamento é limitando a quantidade de trabalho que os que não terminaram podem realizar no próximo sprint. As chances de trabalhar em coisas legais estão desaparecendo. A recompensa por fazer um bom trabalho é mais trabalho.
Isso parece ótimo do ponto de vista do desenvolvedor, no entanto, digamos que temos uma empresa de software "Scrum-Addicts LLC" desenvolvendo algo para clientes sérios ("Money-Bags Corporation"):
Os gerentes do Scrum-Addicts sugerem criar um software para o Money-Bags Eles concordam com uma lista de recursos, e o Money-Bags pede uma data de envio Os gerentes do Scrum-Addicts consultam sua equipe de scrum, e a equipe diz que levará três semanas sprints longos para completar todos os recursos O gerente do Scrum-Addicts adiciona 1 semana para ser seguro, promete enviar o software em 1 mês e assina um contrato com a Money-Bags Após 4 sprints (prazo de entrega), a equipe Scrum pode fornecer apenas 80% de recursos (devido à inexperiência com o novo sistema, a necessidade de corrigir bugs críticos em recursos anteriores no ambiente de produção, etc ...) Como sugere o Scrum, neste momento, o produto é potencialmente entregável, mas o Money-Bags precisa de 100% de recursos, conforme mencionado no contrato. Então eles quebram o contrato e não pagam nada.
Os Scrum-Addicts estão à beira da falência porque não receberam dinheiro da Money-Bags, e os investidores ficaram decepcionados com os resultados e não estão mais dispostos a ajudar a empresa.
Se na segunda-feira eu apostar US $ 100 que chove na quinta-feira e não chove até sexta-feira, você estaria certo em levar meu dinheiro. Se, em vez de uma chance de apostar, o que você deseja é uma previsão do tempo, precisamos de um contrato que permita uma previsão atualizada na terça-feira.
Obviamente, nenhuma empresa de software quer estar no lugar dos Scrum-Addicts. O que não entendo sobre o Agile e o Scrum é como eles sugerem que as equipes devem lidar com o planejamento e os prazos para evitar a situação descrita acima.
Pense em por que MB quer pegar a bola e ir para casa. MB não exigiu que o trabalho fosse realizado em um mês desde o início. A SA prometeu 100% dos recursos críticos em um mês e não entregou. SA definiu o prazo não MB. A SA adicionou arbitrariamente uma semana ao prazo. Então, por que esse prazo é final?
Ocasionalmente, quando competem pelo software de trabalho, as empresas cedem à tentação de se exibir e prometer a lua. Profissionais estabelecem cuidadosamente se uma lua é necessária. Qual é a necessidade mais crítica do MoneyBags? 100% dos recursos ou um produto em funcionamento dentro de um mês? Eles sabem o que é realmente crítico? Existe algum evento próximo estabelecendo um prazo final?
Se eu fosse Scrum-Addicts negociando esse contrato, gostaria de saber muito mais sobre as necessidades comerciais da Money-Bags e estruturar o contrato para conceder tanta flexibilidade quanto a Money-Bags estiver confortável. Eu ensinaria a eles como o processo ágil funciona para que eles saibam o que esperar de nós.
Dessa forma, em vez de esperar que tudo funcione repentinamente perfeitamente em um mês, eles esperariam avaliar o primeiro produto em 1 a 2 semanas.
Então, para resumir, tenho 2 perguntas:
Quem é o culpado? Gerentes, porque é o seu trabalho para fazer o planejamento adequado
A equipe, porque o compromisso de fazer mais trabalho do que eles poderiam
Alguém
Qualquer um poderia ter parado com essa farsa antes de chegarmos um mês adiante.
Eu poderia até culpar a Money-Bags Corp por contratar uma equipe que obviamente representava fraudulentamente um processo em cascata como sendo ágil. O próprio contrato deixa claro que isso não é ágil. Planejar a execução em um mês não a torna ágil.
Se você insistir que é ágil, é ágil com apenas um sprint que dura um mês. O que, sim, eu não recomendaria, porque isso é novamente a mesma coisa que a cascata.
O que é para ser feito?
E quanto ágil? Entregar algo a cada corrida? Receber feedback antes do prazo? Semana longa sprints? Que tal renegociar o contrato draconiano no exato momento em que você suspeita que o prazo está em perigo, em vez de se esconder e orar? No mínimo, você pode parar de perder tempo em um projeto condenado e encontrar um cliente mais razoável.
Os gerentes devem mudar o prazo duas vezes (ou 3x) depois da estimativa da equipe original.
Os multiplicadores de prazo são tão úteis quanto ajustar o relógio com 15 minutos de antecedência, para que você nunca se atrase. Você só pode se enganar tanto tempo antes de perceber o que está fazendo.
As primeiras estimativas estão erradas. Tente capturar o quão errado. 5 semanas, mais ou menos algumas semanas, é uma expressão simples que permite expressar o quão incerta é a data de conclusão. Em vez de tentar adivinhar com precisão, você adivinha o quão selvagem é o seu palpite. Faça algum trabalho real e obtenha alguns dados reais. Depois, você pode começar a fazer estimativas com um intervalo mais restrito. Uma a duas semanas é bastante tempo para fazer isso.
Os membros da equipe devem ser incentivados a fazer todo o trabalho com o qual se comprometeram, não importando o quê (emitindo penalidades por sprints com falha)
Os membros da equipe devem ser incentivados. Falha, confirmada ou não. Em vez de construir qualquer consequência artificial, como punições ou até bônus (cenoura e pau), estudos mostraram que as pessoas que fazem trabalhos criativos, como a programação, respondem melhor se tiverem três coisas: Autonomia, Domínio e Propósito.
Daniel Pink tem uma palestra do TED sobre isso. A palestra é sobre motivação não ágil, mas eu vi facilmente como mapear esses pontos para ágil:
Autonomia - quero dirigir minha própria vida - deixe-me escolher o trabalho da lista de pendências.
Maestria - Quero melhorar algo que importa - Feedback do cliente.
Objetivo - quero fazer parte de algo maior que eu - uma equipe colaborativa.
A equipe deve abandonar o Scrum porque não se encaixa na política de prazos da empresa. O Scrum pode atingir um prazo com mais precisão do que a cascata. Dado um prazo, o scrum pode cumpri-lo. Ele pode atender a apenas 1 dos 47 recursos, dependendo do tempo, recurso e habilidade, mas pode atender.
Um projeto ágil pode ser elaborado de maneira tão extrema que, toda noite, quando a equipe volta para casa, está pronta para o envio. Isso parece bobagem, a menos que você pense no envio como pedindo ao cliente para testar e fornecer feedback. Quanto mais cedo isso acontecer, mais cedo você poderá fazer ajustes. Isso atinge todos os prazos possíveis. Apenas nem todos os recursos. Mas ele orienta você para os recursos que importam.
Todos devemos abandonar o desenvolvimento de software e ingressar em um mosteiro
Certo, como me trancar em um quarto longe da vida real vai me fazer escrever um código MENOS.
Editei esta resposta no tamanho certo. Se você estiver curioso, leia o histórico de edições.