A pedido, alguns esclarecimentos básicos sobre termos e timing e conteúdos:
Onde tudo começou? Agilidade não começou na TI, ela é uma releitura e adaptação dos princípios e conceitos criados no Japão na década de 50 do século XX, então conhecidos pelo termo “Lean” do Toyota Production System, origem dos conceitos Kaizen de melhoria contínua, Just-In-Time e Gemba para tema, hora e local exatos, kanban de gestão visual, também da auto-organização, da qualidade e zero defeitos, valorização das pessoas, foco no cliente e estabelecer uma linguagem ubiqua pela óptica do negócio.
Como chegou ao desenvolvimento de software? Foi em meados dos anos 80 que diferentes empresas começaram a praticar na TI diferentes metodologias inspiradas no “Lean Toyota”, 17 destes pioneiros se reuniram em 2001 e divulgaram o “Manifesto Ágil para desenvolvimento de software”, contendo os pontos em comum entre suas práticas. Ali estavam representados os métodos e técnicas relativos ao SCRUM, XP, Kanban, Crystal, FDD, ASD e DSDM.
Porque se chama Ágil? Foi uma opção dos protagonistas do Manifesto Ágil, na década de 90 estes mesmos métodos eram informalmente chamados de “Lightweight” ou Métodos Leves, em contraponto aos processos vigentes, considerados mais pesados e burocráticos. O termo Ágil condizia com seus princípios de antecipação de riscos e oportunidades, ciclos iterativo-incrementais de poucas semanas, adaptabilidade frente a mudança, etc.
Qual o método ágil mais utilizado hoje? Segundo as pesquisas anuais da VersionOne, já em sua oitava edição em 2014, nos dias de hoje o SCRUM representa mais de 60% da prática de métodos ágeis no mundo, mais ainda se contarmos quando usado em conjunto com o método Kanban e/ou XP. Mas é importante salientar que há um mix de técnicas e artefatos que acabaram sendo adotados por quase todas as empresas ágeis, como o quadro de tarefas, as User Stories, o conceito de mínimo produto viável, testes automatizados, etc.
Lean Toyota é o mesmo que Lean Software Development? Logo depois de ocorrido o famoso Manifesto Ágil de 2001, continuaram surgindo métodos e técnicas ditos ágeis. O “Lean Software Development” do casal Poppendieck é um método para desenvolvimento de software inspirado na cultura Lean Toyota, propositalmente batizado com o mesmo nome, 50 anos depois de seu famoso e revolucionário antecessor.
O Lean StartUp é um método ágil? Na esteira das metodologias ágeis vieram um grande número de frameworks, conceitos e técnicas, não são métodos ágeis para desenvolvimento de software, mas são complementares. Entre eles o Lean StartUp do Eric Ries com um pacote de técnicas para desenvolver o empreendedorismo, Gamestorming com práticas dirigidas a inovação, Business Model Generation por Alexander Osterwalder sobre novas formas de modelar negócios, o Design Thinking relacionado ao desenvolvimento criativo de ideias e soluções, entre outros tantos.
Ágil, SCRUM, XP e Kanban são sinônimos? Não são, podemos usar o termo Ágil para a cultura, princípios, modelo mental, mas cada método possui seu próprio framework, assemelhando-se dos demais nos conceitos e em algumas técnicas. Há uma dúzia de métodos que podem ser considerados ágeis, posto que seguem a essência dos princípios declarados no manifesto de 2001, a seguir alguns deles com datas e nomes de referência, todos signatários do manifesto, mais a honrosa adição dos Poppendieck:
. 1992 – Crystal Clear Method – Alistair Cockburn
. 1993 – Scrum – Jeff Shuterland, Ken Schwaber e Mike Beedle
. 1994 – Analysis Patterns, UML Distilled, Planning XP – Martin Fowler
. 1996 – XP – Kent Beck, Ward Cunningham e Ron Jeffries
. 1997 – DSDM (Dynamic Syst. Dev. Method) – Arie van Bennekum e outros
. 1997 – FDD – Feature-Driven Development – Jeff De Luca e Peter Coad
. 1997 – ASD – Adaptive SW Develop. – Jim Highsmith e Alistair Cockburn
. 1999 – The Pragmatic Programmer – Andrew Hunt e Dave Thomas
. 2003 – Lean Software Development – Mary e Tom Poppendieck
O SCRUM, Kanban e XP são iguais ou concorrentes? Não, cada macaco no seu galho, cada um destes três framework possuem características e focos peculiares, com alto grau de complementariedade. Tanto, que é comum uma equipe SCRUM usar o quadro de tarefas e recursos proposto pelo Kanban, equipes SCRUM usam o XP para o que diz respeito a engenharia ágil, empresas usam SCRUM para gestão de projetos ágeis mas optam pelo Kanban para gerir equipes focadas em manutenção.
31/12? Kudos!
Como dizem na terra da rainha, a long past due post! Aprendi muito: não tinha idéa de quão longe no passado chegava a raiz dessa filosofia, e sempre achei que o tal Lean Software era um re-empacotamento de Scrum e outras técnicas, meio como um oportunismo. Muito bom!
Não tenho certeza se entendi a pergunta “Alguns usam aleatoriamente Ágil, SCRUM, XP, Kanban?”. Parece meio truncada. Deduzi pelo restante do parágrafo que tencionava comentar sobre a intercambiedade que alguns usam ao referir-se à Scrum. Era isso?
E qual é a relação do “New New Product Development Game”, de Hirotaka Takeuchi e Ikujiro Nonaka (http://bit.ly/1HiSiWj), com isso tudo? Foi decorrente, precedente ou sucedâneo?
CurtirCurtir
Oi, tens razão, ao escrever quis dizer que algumas pessoas usam estes métodos como sinônimos e não é … vou reformular, obrigado!
O artigo new new do T&N de 1984 foi o primeiro texto que apresentou as bases do método e fez a ilação com a jogada Scrum do rugby. Eu os considero os pais do SCRUM, ao ler esse artigo da HBR é possível ver o método de ponta a ponta, que alguns anos depois foi aplicado na prática, ajustado e batizado de SCRUM pelos americanos Schwaber, Shuterland e Beedle. Em nenhum momento o Scrum Guide dá esse crédito, mas eu não tenho dúvida da precedência e relevância.
[ ]
CurtirCurtir
Obrigado pela resposta, Jorge! Feliz 2015!!
CurtirCurtir