criando um ambiente ágil! lições aprendidas em xp, scrum e lean development

23
3º. Encontro do Grupo de Usuários de Métodos Ágeis 3º. Encontro do Grupo de Usuários de Métodos Ágeis SENAC SENAC - Porto Alegre, 05/05/2007 Porto Alegre, 05/05/2007 Criando um ambiente ágil! Criando um ambiente ágil! Criando um ambiente ágil! Criando um ambiente ágil! Porto Alegre, 29/09/2004 Lições aprendidas em XP, Scrum e Lean Development Lições aprendidas em XP, Scrum e Lean Development Lições aprendidas em XP, Scrum e Lean Development Lições aprendidas em XP, Scrum e Lean Development Daniel Wildt Daniel Wildt FACENSA / java.net / XP FACENSA / java.net / XP-RS GUMA / DUG RS GUMA / DUG-RS / DevMedia RS / DevMedia Daniel Wildt Daniel Wildt FACENSA / java.net / XP FACENSA / java.net / XP-RS GUMA / DUG RS GUMA / DUG-RS / DevMedia RS / DevMedia Copyright © 2006 Daniel Wildt Copyright © 2006 Daniel Wildt [Slide 1] [Slide 1]

Upload: daniel-wildt

Post on 28-Nov-2014

4.755 views

Category:

Technology


2 download

DESCRIPTION

Palestra falando sobre alguns problemas vivenciados por Daniel Wildt no uso de Métodos Ágeis e algumas dicas sobre práticas e princípios de Métodos Ágeis.

TRANSCRIPT

Page 1: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

3º. Encontro do Grupo de Usuários de Métodos Ágeis3º. Encontro do Grupo de Usuários de Métodos ÁgeisSENAC SENAC -- Porto Alegre, 05/05/2007Porto Alegre, 05/05/2007

Criando um ambiente ágil!Criando um ambiente ágil!Criando um ambiente ágil!Criando um ambiente ágil!

Porto Alegre, 29/09/2004

ggLições aprendidas em XP, Scrum e Lean DevelopmentLições aprendidas em XP, Scrum e Lean Development

ggLições aprendidas em XP, Scrum e Lean DevelopmentLições aprendidas em XP, Scrum e Lean Development

Daniel WildtDaniel WildtFACENSA / java.net / XPFACENSA / java.net / XP--RS GUMA / DUGRS GUMA / DUG--RS / DevMediaRS / DevMedia

Daniel WildtDaniel WildtFACENSA / java.net / XPFACENSA / java.net / XP--RS GUMA / DUGRS GUMA / DUG--RS / DevMediaRS / DevMedia

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 1][Slide 1]

Page 2: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Agenda

• Motivações para este evento!• Lição e discussão, modo de apresentação

• Apresentar uma frase/imagem (obrigatório), rir (opcional) e discutir com a platéia (obrigatório)

• Referências• Apoios• Perguntas

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 2][Slide 2]

Page 3: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Motivações para este evento!

• Boas práticas só aparecem se ocorre a prática!• Aprender com o erro dos outros sempre é mais

engraçado e saudável!• Somos um grupo com excelentes pensadores!• Mais importante do que errar é tirar lições para o

futuro!• Toyota!

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 3][Slide 3]

Page 4: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Quem veio antes? Galinha, ovo? Não! TOYOTA!

• Taichii Ohno e Shigeo Shingo responsáveis por termos• Taichii Ohno e Shigeo Shingo, responsáveis por termos como:• Just In Time Production• Stop the Line Culture (Jidoka Autonomation)• Stop the Line Culture (Jidoka, Autonomation)• Zero Inspection (mistake-proof)

• Toyota Production System (TPS), hoje conhecido como Lean Thinking Lean Enterprise Lean Manufacturing entreLean Thinking, Lean Enterprise, Lean Manufacturing, entre outros.• Remover desperdício

F li t• Foco no cliente• Agregar valor a linha

• Muda, Mura e MuriM é l id d d d ã• Mura é regularidade da produção

• Muri trata da sobrecarga• Muda trata o despercício. Os 7 Desperdícios do Lean:

E T t S b E t M i t õ• Espera, Transporte, Sobrecarga, Estoque, Movimentações, Defeitos e super produção.

• Melhoria Contínua: Kaizen

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 4][Slide 4]

• Melhoria Contínua: Kaizen

Page 5: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Métodos ágeis não resolvem todos os problemas!

Não existe bala de prata!

Não existe nenhum lugar dizendo que você é impedido de usar Scrum dentro de algum modelo de software como CMMI, MPS.BR, UP ou algo do tipo!

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 5][Slide 5]

como CMMI, MPS.BR, UP ou algo do tipo!

Page 6: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Comunicação é a origem dos problemas!

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 6][Slide 6]

Page 7: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Planejar é necessário! Em métodos ágeis existe Planejamento!!

Planejar release, iteração e o dia. Motivação e realidade sempre!p

Velocidade do time (Burn down de horas) e backlog são variáveis que sempre devem ser avaliadas!variáveis que sempre devem ser avaliadas!

Tipos? Release (baseado no backlog), Sprint (prioridades do backlog) e Daily (Scrum Meeting)

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 7][Slide 7]

do backlog) e Daily (Scrum Meeting).

Page 8: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Correção de queima de horas

Adicionar mais recursos em um projeto atrasado não p jresolve o problema!

Manter o ritmo da equipe é necessário!Manter o ritmo da equipe é necessário!

Achar que a velocidade da equipe pode dobrar de uma semana para a outra não tende a se tornar realidade

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 8][Slide 8]

semana para a outra não tende a se tornar realidade.

Page 9: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – O custo é fixo!

Custo da equipe?Custo da equipe?Número de pessoas da equipe x 8 horas de trabalho x dias úteis.

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 9][Slide 9]

Page 10: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Programação em pares é útil para aprendizado!

As pessoas vão aprender a fazer certo da primeira vez

i iê iA equipe troca experiências

O time se conhece melhor

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 10][Slide 10]

Page 11: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Aprenda os valores que as práticas trazem para a equipe e não as práticas

Não force práticas dentro da equipeNão force práticas dentro da equipe

Tudo o que existe nas metodologias ágeis requer uso de ã í ãcomunicação e princípios de produção enxuta!

O cliente deve ser um aliado!

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 11][Slide 11]

Page 12: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Defina o que é necessário. E em pequenas partes!

D fi i f it d t d j l d j t !Defina o que vai ser feito dentro da janela do projeto!

Tarefas menores aumentam a motivação da equipe!

Melhor ter 10 tarefas de 4 horas do que 1 tarefa de 40 horas!

Estabeleça prioridades e faça aquilo que é necessário.

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 12][Slide 12]

Não tente prever o futuro, e revise as previsões sempre.

Page 13: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Estabeleça com a equipe o que quer dizer “pronto”.

Pronto?

Pronto pode indicar que a codificação foi feita.

Pronto pode indicar que a codificação + teste foi feito.p q ç

Pronto pode indicar que a codificação + teste + integração + regressão foi feita e que a instalação da

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 13][Slide 13]

integração + regressão foi feita e que a instalação da funcionalidade pode ser realizada quando se desejar.

Page 14: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Atualize informações das tarefas diariamente! O gráfico de “burn down” não mente!

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 14][Slide 14]

Page 15: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Técnicas de comunicação são necessárias em um time. Você sabe se comunicar?

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 15][Slide 15]

Page 16: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Fazer teste de unidade não é o bastante!

JU itJUnitSelenium IDE

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 16][Slide 16]

Page 17: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Lição e discussão – Testar não é uma atividade isolada e não é feita em um momento específico do projeto!

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 17][Slide 17]

http://www.ambysoft.com/essays/floot.html

Page 18: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Referências

• Beck, Kent; Andres, Cynthia. Extreme Programming explained: embrace change. 2ª edição. Pearson Education, 2005.

• Poppendieck, Mary; Poppendieck, Tom. Implementing Lean Software Development: From concept to Cash. Pearson Educatoin, 2007.

• Schwaber, Ken. Agile Project Management With Scrum. Microsoft Press, 2004.

• Liker, Jeffrey. The Toyota Way. McGraw-Hill, 2004.• Koscianski, André; Soares, Michel dos Santos.

Qualidade de Software, São Paulo: Novatec, 2006.• Pressman, Roger S. Engenharia de Software. São

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 18][Slide 18]

Paulo: Makron, 2002.

Page 19: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Referências

Á• Manifesto Ágil. Disponível na www em http://www.agilemanifesto.org

• Tinkha, Andy; Kaner, Cem. Exploring Exploratory Testing. Disponível na www em http://www.testingeducation.org/a/explore.pdf

• Método FLOOT de Scott Ambler. Disponível na www em http://www.ambysoft.com/essays/floot.html

• Complexidade Ciclomática. Disponível na www em http://www.sei.cmu.edu/str/descriptions/cyclomatic_body.html

• Implementing Scrum (BLOG). Disponível na www em

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 19][Slide 19]

http://www.implementingscrum.com/cartoons/

Page 20: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Referências

• Qualidade em desenvolvimento Java para todos os gostos, por Daniel Wildt, apresentada no JustJava 2006. Disponível na Internet:• https://fuja.dev.java.net/files/documents/3136/449

51/FACENSA_JustJava2006.pdf• Métodos Ágeis em Sistemas de Gestão da

Qualidade• http://tech.groups.yahoo.com/group/XP-RS/files/

• Encontros > 3o. Encontro (16-10-2004)• XP-RS-16_10_2004.ppt

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 20][Slide 20]

Page 21: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

Apoios

• Surya Gestão Digital• http://www.suryatec.com.br

• FACENSA e Grupo de Estudos Java da FACENSA (FUJA)• FACENSA e Grupo de Estudos Java da FACENSA (FUJA)• http://www.facensa.com.br• http://fuja.dev.java.nethttp://fuja.dev.java.net

• Grupo de Usuários XP do RS• http://www.xp-rs.org• http://tech.groups.yahoo.com/group/xp-rs/

• SUCESU-RS• http://www rs sucesu org br/• http://www.rs.sucesu.org.br/• http://www.rs.sucesu.org.br/grupos_usuario/GUMA

• Java.NET//• http://www.java.net

• DevMedia• http://www.devmedia.com

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 21][Slide 21]

Page 22: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

PerguntasPerguntas

Daniel [email protected]

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 22][Slide 22]

Page 23: Criando um ambiente ágil! Lições aprendidas em XP, Scrum e Lean Development

http://www.rs.sucesu.org.br/grupos_usuario/GUMAhttp://tech.groups.yahoo.com/group/xp-rs/ p // g p y /g p/ p /

Obrigado!Obrigado!

Copyright © 2006 Daniel WildtCopyright © 2006 Daniel Wildt [Slide 23][Slide 23]