Crystal

13.627 visualizações

Publicada em

Trabalho sobre a família de metodologias Crystal.

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Crystal

  1. 1. http://www.imotion.com.br/imagens/data/media/83/10628cristais.jpg
  2. 2. Criada por Alistair Cockburn http://www.flickr.com/photos/guilhermechapiewski/4097110689/
  3. 3. Uma família de metodologias http://www.flickr.com/photos/chris_gin/2313273990/
  4. 4. Pessoas http://www.flickr.com/photos/suvcougar/1273657633/
  5. 7. Jogo Cooperativo
  6. 9. Prioridades
  7. 13. Comunicação Eficiência http://refcardz.dzone.com/refcardz/scrum
  8. 14. Comunicação Eficiência
  9. 15. Comunicação Custo da distância
  10. 33. Técnicas
  11. 35. http://www.flickr.com/photos/worldofarun/4271756652 Ajuste
  12. 36. http://assets.devx.com/articlefigs/17424.jpg
  13. 39. A família Crystal <ul><li>Coletaram exemplos de projetos de sucesso que utilizaram metodologias ágeis baseadas em comunicação e comunidade para criar uma família de metodologias que possa ser utilizada como ponto de partida em um processo de desenvolvimento de software. </li></ul><ul><li>Os membros da família dividem entre si: </li></ul><ul><ul><li>Valores e princípios </li></ul></ul><ul><ul><li>Mudanças &quot;on-the-fly“ </li></ul></ul><ul><li>Alistair considera pouco traumática a mudança de uma metodologia para outra: 4 pessoas trabalhando em um projeto pequeno que cresce ao ponto de necessitar de 20 pessoas não devem perguntar &quot;como preservamos nossas convenções primárias?&quot;, e sim &quot;qual é um bom caminho para 20 pessoas trabalharem juntas neste projeto?&quot; </li></ul><ul><li>Entre os valores, destacam-se: </li></ul><ul><ul><li>Foco em comunicação e pessoas: ferramentas, produtos e processos estão lá apenas para auxiliar as pessoas </li></ul></ul><ul><ul><li>Tolerância: reconhece a variedade da natureza humana. </li></ul></ul>
  14. 40. A família Crystal <ul><li>As duas principais regras em comum: </li></ul><ul><ul><li>deve-se usar entregas incrementais, de no máximo 4 meses (mas preferencialmente de um a três meses) ‏ </li></ul></ul><ul><ul><li>deve-se realizar &quot;workshops de reflexão&quot; antes e depois de cada iteração (se possível também fazendo um &quot;workshop&quot; no meio do processo) ‏ </li></ul></ul><ul><li>As duas técnicas base: </li></ul><ul><ul><li>técnicas de ajuste: utilizar workshops e entrevistas com os envolvidos para converter uma metodologia base em algo que possa servir de ponto de partida para o projeto </li></ul></ul><ul><ul><li>a técnica utilizada para administrar o &quot;workshop de reflexão&quot; </li></ul></ul><ul><li>Você deve ficar à vontade para trocar estas técnicas por outras se você enxerga uma maneira mais fácil de alcançar o mesmo objetivo, podendo “pegar emprestado” práticas de outras metodologias/processos como XP ou Scrum. </li></ul><ul><li>As diferenças báscias entre os membros da família Crystal são essencialmente estruturais. </li></ul>
  15. 41. http://www.flickr.com/photos/tropical-blizzard/4930032656 Crystal Clear
  16. 42. Papéis Necessários - padrinho - programador-arquiteto sênior - programador-arquiteto - usuário (parcial) ‏ Papéis Acumulados - coordenador - especialista de domínio - analista de requisitos Disposição Em um único ambiente (ou em salas adjacentes) ‏ Times Um único time de programadores-arquitetos Para Projetos D6: 3-10 pessoas C6 C10 D6 D10 E6 E10
  17. 43. <ul><li>Padrões </li></ul><ul><li>Entrega de incrementos de software regularmente (a cada 2 ou 3 meses) ‏ </li></ul><ul><li>Controle de progresso é feito através de “milestones” baseadas na entrega de software </li></ul><ul><li>Uso de testes automatizados em funcionalidades mais críticas </li></ul><ul><li>Envolvimento direto do usuário </li></ul><ul><li>Workshops de reflexão devem ser feitos no começo e no meio de cada incremento </li></ul>
  18. 44. <ul><li>Produtos </li></ul><ul><li>Sequência de release </li></ul><ul><li>Agendamento de entregas </li></ul><ul><li>Casos de uso ou descrição de funcionalidades </li></ul><ul><li>Rascunhos de design e notas, caso seja necessário </li></ul><ul><li>Modelo de objetos </li></ul><ul><li>Código “pronto” </li></ul><ul><li>Casos de teste </li></ul><ul><li>Manual do usuário </li></ul>
  19. 45. <ul><li>Definidos pelo time </li></ul><ul><li>Templates para os produtos </li></ul><ul><li>Padrões de design e codificação </li></ul><ul><li>Padrões para testes </li></ul><ul><li>Como será feita a documentação </li></ul><ul><li>Ferramentas mais importantes </li></ul><ul><li>Um sistema de versionamento e gerenciamento de configuração </li></ul><ul><li>Um quadro branco </li></ul>
  20. 46. Crystal Yellow http://lookingforlights.com/index.php?main_page=popup_image&pID=1923
  21. 47. Papéis Necessários - Padrinho - Líder de projeto - Sub-líder de times - Especialista de domínio - Programador-arquiteto sênior - Programador-arquiteto - Tester Disposição Em um único ambiente (ou em escritórios adjacentes) ‏ Times Um único time separados pelas atividades desempenhadas Para Projetos D20: 15-30 pessoas C20 C30 D20 D30 E20 E30
  22. 48. http://www.flickr.com/photos/wgyuri/501884430 Crystal Orange
  23. 49. Papéis Necessários - Padrinho - Especialista de domínio - Usuário especialista - Facilitador técnico - Analista de negócio - Gerente de projeto - Arquiteto - Líder de design - Programador-arquiteto senior - Programador-arquiteto - Designer de interface - Documentador (escritor técnico) ‏ - Tester Disposição Fisicamente o mais próximo possível (mesmo prédio)‏ Times Um único time separado pelas atividades desempenhadas - Planejamento de Sistema - Monitoramento de Sistema - Arquitetura - Tecnologia - Funcionalidades - Infra-estrutura - Teste Para Projetos D40: 30-50 pessoas C40 C50 D40 D50 E40 E50
  24. 50. Notas do criador sobre a família Crystal “ Projetos diferentes têm necessidades diferentes. Terrivelmente óbvio, exceto (talvez) para os metodologistas...” “ ... não é a minha intenção que você pegue estas descrições e as use sem alterá-las, mas sim que você as pegue, critique-as, adicione e subtraia detalhes até que ela atenda às suas necessidades. Modificação de metodologia é a essência do Crystal...” “ ... e no fim das contas, é melhor entregar um software funcionando aceitavelmente (agregando valor) do que não entregar um software perfeito.”
  25. 51. http://assets.devx.com/articlefigs/17426.jpg
  26. 52. http://www.flickr.com/photos/hemantnaidu/4101521324/ Shu     Ha      Ri
  27. 53. Scrum: auto-organização
  28. 54. Scrum: auto-organização XP: auto-disciplina  
  29. 55. Scrum: auto-organização XP: auto-disciplina   Crystal: auto-consciência
  30. 56. Para saber mais
  31. 59. <ul><ul><li>Alexandre Aquiles </li></ul></ul><ul><ul><li>Bruno Perillo </li></ul></ul><ul><ul><li>Martha Luiza Xisto </li></ul></ul><ul><ul><li>Rodrigo Normandia Souza </li></ul></ul><ul><ul><li>Túlio César Gaio </li></ul></ul><ul><ul><li>Willian Gaio </li></ul></ul>http://www.jornallivre.com.br/images_enviadas/historia-de-jacarei6-jpg.jpg
  32. 60. Perguntas?
  33. 61. Referências <ul><li>COCKBURN, Alistair. Agile Software Development: The Cooperative Game. 2 nd ed. Addison-Wesley Professional, 2006. </li></ul><ul><li>COCKBURN, Alistair. Crystal is about self-awareness . Recuperado de: http://alistair.cockburn.us/Crystal+is+about+self-awareness em 30 ago. de 2010. </li></ul><ul><li>COCKBURN, Alistair. Crystal (How to make a methodology fit). Recuperado de: http://alistair.cockburn.us/Crystalmethods180.ppt em 31 ago. de 2010. </li></ul><ul><li>COFFIN, Rod; LANE, Derek. A Practical Guide to Seven Agile Methodologies (Part 2). Recuperado de: http://www.devx.com/architect/Article/32836/1954 em 30 ago. de 2010. </li></ul>

×