Governança Ágil Clavius  Tales
sobre mim <ul><li>trabalho com desenvolvimento de  software  desde 1990
graduado em Ciências da Computação pela UFC (Universidade Federal do Ceará)
ex-certificado como PMP (Project Management Professional) pelo PMI (Project Management Institute)
Diretor de Desenvolvimento da Fortes Informática
ex-vice-presidente e conselheiro do Instituto Titan
membro-fundador do SPIN Ceará
membro-fundador, ex-coordenador e conselheiro do  CEJUG (Grupo de Usuários Java do Ceará)
membro-fundador e ex-diretor do PMI Ceará </li></ul>
sobre a Fortes Informática <ul><li>empresa de desenvolvimento de  software
foco em produtos
fundada em 1989
compõe do Grupo Fortes de Serviços (GFS)
200 colaboradores
60 desenvolvedores – várias equipes
foi avaliada no nível G do MPS.BR
pioneira nas regiões Norte e Nordeste do  país no uso de XP (eXtreme Programming) –  desde 2006 </li></ul>
algumas práticas que temos utilizado <ul><li>Ambiente Informativo
Ciclo Semanal
Testes Automatizados
Design  Incremental
Equipe Integral
Folga
Histórias
Integração Contínua
Programação em Par
Sentar Junto
Base de Código Unificada
Código Coletivo
Código e Testes
Continuidade da Equipe </li></ul><ul><li>Contrato de Escopo Negociável
Envolvimento do Cliente Real
Reunião Diária
Refatoração
Upcoming SlideShare
Loading in …5
×

Governança Ágil - Ágiles 2009

1,015 views

Published on

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,015
On SlideShare
0
From Embeds
0
Number of Embeds
78
Actions
Shares
0
Downloads
0
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Governança Ágil - Ágiles 2009

  1. 1. Governança Ágil Clavius Tales
  2. 2. sobre mim <ul><li>trabalho com desenvolvimento de software desde 1990
  3. 3. graduado em Ciências da Computação pela UFC (Universidade Federal do Ceará)
  4. 4. ex-certificado como PMP (Project Management Professional) pelo PMI (Project Management Institute)
  5. 5. Diretor de Desenvolvimento da Fortes Informática
  6. 6. ex-vice-presidente e conselheiro do Instituto Titan
  7. 7. membro-fundador do SPIN Ceará
  8. 8. membro-fundador, ex-coordenador e conselheiro do CEJUG (Grupo de Usuários Java do Ceará)
  9. 9. membro-fundador e ex-diretor do PMI Ceará </li></ul>
  10. 10. sobre a Fortes Informática <ul><li>empresa de desenvolvimento de software
  11. 11. foco em produtos
  12. 12. fundada em 1989
  13. 13. compõe do Grupo Fortes de Serviços (GFS)
  14. 14. 200 colaboradores
  15. 15. 60 desenvolvedores – várias equipes
  16. 16. foi avaliada no nível G do MPS.BR
  17. 17. pioneira nas regiões Norte e Nordeste do país no uso de XP (eXtreme Programming) – desde 2006 </li></ul>
  18. 18. algumas práticas que temos utilizado <ul><li>Ambiente Informativo
  19. 19. Ciclo Semanal
  20. 20. Testes Automatizados
  21. 21. Design Incremental
  22. 22. Equipe Integral
  23. 23. Folga
  24. 24. Histórias
  25. 25. Integração Contínua
  26. 26. Programação em Par
  27. 27. Sentar Junto
  28. 28. Base de Código Unificada
  29. 29. Código Coletivo
  30. 30. Código e Testes
  31. 31. Continuidade da Equipe </li></ul><ul><li>Contrato de Escopo Negociável
  32. 32. Envolvimento do Cliente Real
  33. 33. Reunião Diária
  34. 34. Refatoração
  35. 35. Retrospectiva </li></ul>
  36. 36. “ Governança Ágil?!” “ Bé issaí, má?!”
  37. 37. Qual a história do desenvolvimento ágil? Como ele surgiu? Qual sua motivação?
  38. 38. motivação Desenvolvimento ágil é uma corrente “alternativa aos processos pesados de desenvolvimento de software e guiados por documentação”.
  39. 39. Signatários do Manifesto Ágil Kent Beck Mike Beedle Arie van Bennekum Alistair Cockburn Ward Cunningham Martin Fowler James Grenning Jim Highsmith Andrew Hunt Ron Jeffries Jon Kern Brian Marick Robert C. Martin Steve Mellor Ken Schwaber Jeff Sutherland Dave Thomas
  40. 40. Manifesto pelo Desenvolvimento Ágil de Software Estamos descobrindo melhores maneiras de desenvolver software desenvolvendo software e ajudando outras pessoas a desenvolver. Através desse trabalho nós valorizamos mais: pessoas e relacionamentos que processos e ferramentas software funcionando que documentação abrangente colaboração do cliente que negociação de contrato resposta à mudança que seguir um plano Ou seja, apesar de valorizarmos os itens à direita, valorizamos mais ainda os itens à esquerda.
  41. 41. Princípios por trás do Manifesto Ágil Seguimos estes princípios: Nossa maior prioridade é satisfazer o cliente através da rápida e contínua entrega de software de valor. Mudanças de requisitos são bem-vindas, mesmo que tardiamente no desenvolvimento do projeto. Processos ágeis entendem essas mudanças como vantagem competitiva para o cliente. Entregue software funcionando frequentemente, semana a semana, mês a mês, de preferência na menor escala de tempo possível. Pessoas de negócio e desenvolvedores devem trabalhar juntos diariamente ao longo de todo o projeto. Desenvolva projetos com pessoas motivadas. Dê-lhes o ambiente e o apoio de que necessitam, e acredite que eles farão o trabalho. ...
  42. 42. Princípios por trás do Manifesto Ágil Seguimos estes princípios: ... O mais eficiente e eficaz método de transmitir informações para a e dentro da equipe de desenvolvimento é a conversação face-a-face. Software funcionando é a principal medida de progresso. Processos ágeis promovem o desenvolvimento sustentável. Patrocinadores, desenvolvedores e usuários deveriam ser capazes de manter um ritmo constante por tempo indeterminado. Atenção contínua à excelência técnica e ao bom design melhora a agilidade. Simplicidade - a arte de maximizar a quantidade de trabalho não feito - é essencial. As melhores arquiteturas, requisitos e designs emergem de equipes auto-organizadas. Em intervalos regulares, a equipe reflete sobre como se tornar mais eficiente, ajustando seu comportamento nesse sentido.
  43. 43. “ Me convenci. Contratei um consultor. Comecei a implantar. Mas como saber se estou indo no rumo certo? Como montar uma sistemática que garanta que estou indo no rumo certo? ” Governança ágil é portanto um conjunto de práticas para as equipes se tornarem e se manterem Ágeis.
  44. 44. O que é ser Ágil? Ser Ágil é cumprir os valores e os princípios do Manifesto Ágil.
  45. 45. Serão apresentadas ações para implementar cada valor e cada princípio do Manifesto Ágil. simulação da construção do sistema de governança (“aprender fazendo”) desenvolvimento iterativo-incremental estratégia de apresentação
  46. 46. alertas <ul><li>repetitivo
  47. 47. muito texto
  48. 48. talvez não dê tempo </li></ul>
  49. 49. valorizar mais pessoas e relacionamentos que processos e ferramentas <ul><li>Política agressiva de cargos, salários e benefícios;
  50. 50. Bom sistema de recrutamento e seleção de profissionais;
  51. 51. Programa contínuo de capacitação;
  52. 52. Avaliação trimestral da possibilidade de redução de documentação;
  53. 53. Membros da equipe na mesma sala;
  54. 54. Atividades de integração. </li></ul>
  55. 55. valorizar mais software funcionando que documentação abrangente <ul><li>Avaliação trimestral da possibilidade de redução de documentação;
  56. 56. Relatório mensal de cada equipe indicando: </li><ul><li>quantas versões do software foram disponibilizadas para o cliente;
  57. 57. qual o percentual de conclusão do projeto baseado em funcionalidades concluídas e entregues. </li></ul></ul>
  58. 58. valorizar mais colaboração do cliente que negociação de contrato <ul><li>Antes de iniciar o projeto, explique para o cliente a importância de sua participação (inclua essa atividade no template do plano de projeto).
  59. 59. Nos contratos, inclua: </li><ul><li>dispositivos que obriguem o cliente a participar pelo menos do planejamento e da entrega de cada iteração;
  60. 60. condições simples de mudanças de requisitos e de encerramento do projeto. </li></ul><li>Pergunte mensalmente ao cliente (atividade agendada): </li><ul><li>“ Você está satisfeito com o projeto?”;
  61. 61. “ Você gostaria de mudar algo no processo?”;
  62. 62. “ Em que você acha que devemos melhorar?”. </li></ul></ul>
  63. 63. valorizar mais resposta à mudança que seguir um plano <ul><li>Avaliação trimestral da possibilidade de redução de documentação;
  64. 64. Nos contratos, inclua condições simples de mudanças de requisitos;
  65. 65. Relatório mensal de cada equipe indicando: </li><ul><li>quantas versões do software foram disponibilizadas para o cliente;
  66. 66. a qualidade do design do código (código duplicado, classes longas, métodos longos e complexos). </li></ul></ul>
  67. 67. Nossa maior prioridade é satisfazer o cliente através da rápida e contínua entrega de software de valor. <ul><li>Relatório mensal de cada equipe indicando quantas versões do software foram disponibilizadas para o cliente. </li></ul>
  68. 68. Mudanças de requisitos são bem-vindas , mesmo que tardiamente no desenvolvimento do projeto. Processos ágeis entendem essas mudanças como vantagem competitiva para o cliente. <ul><li>Avaliação trimestral da possibilidade de redução de documentação;
  69. 69. Nos contratos, inclua condições simples de mudanças de requisitos;
  70. 70. Relatório mensal de cada equipe indicando: </li><ul><li>quantas versões do software foram disponibilizadas para o cliente;
  71. 71. a qualidade do design do código (código duplicado, classes longas, métodos longos e complexos). </li></ul></ul>
  72. 72. Entregue software funcionando frequentemente , semana a semana, mês a mês, de preferência na menor escala de tempo possível . <ul><li>Relatório mensal de cada equipe indicando quantas versões do software foram disponibilizadas para o cliente. </li></ul>
  73. 73. Pessoas de negócio e desenvolvedores devem trabalhar juntos diariamente ao longo de todo o projeto. <ul><li>Monte equipes multifuncionais. No template do plano de projeto, na seção de equipe, coloque o seguinte comentário: “[montar equipe multifuncional, incluindo analistas de negócio]”;
  74. 74. Todos na mesma sala. </li></ul>
  75. 75. Desenvolva projetos com pessoas motivadas . Dê-lhes o ambiente e o apoio de que necessitam, e acredite que eles farão o trabalho. <ul><li>Peça mensalmente e de forma anônima uma nota de satisfação para cada membro da equipe. Se a média cair, investigue. </li></ul>
  76. 76. O mais eficiente e eficaz método de transmitir informações para a e dentro da equipe de desenvolvimento é a conversação face-a-face . <ul><li>Avaliação trimestral da possibilidade de redução de documentação;
  77. 77. Membros da equipe na mesma sala. </li></ul>
  78. 78. Software funcionando é a principal medida de progresso. <ul><li>Relatório mensal de cada equipe indicando qual o percentual de conclusão do projeto baseado em funcionalidades concluídas e entregues. </li></ul>funcionalidade tam concl ---------------- --- ----- funcionalidade 1 15 sim funcionalidade 2 8 sim funcionalidade 3 10 não ... funcionalidade N 12 são percentual de conclusão do projeto: 23%
  79. 79. Processos ágeis promovem o desenvolvimento sustentável . Patrocinadores, desenvolvedores e usuários deveriam ser capazes de manter um ritmo constante por tempo indeterminado. <ul><li>Peça mensalmente e de forma anônima uma nota de satisfação para cada membro da equipe. Se a média cair, investigue;
  80. 80. Da mesma forma que com os colaboradores, monitore a satisfação do cliente.
  81. 81. Relatório mensal de cada equipe indicando: </li><ul><li>o percentual de tempo gasto com atividades que não de desenvolvimento: </li></ul></ul>desenvolvimento ..... 65% correções ........... 15% outras atividades ... 20% <ul><ul><li>a quantidade de horas-extras realizadas. </li></ul></ul>
  82. 82. Atenção contínua à excelência técnica e ao bom design melhora a agilidade. <ul><li>Relatório mensal de cada equipe indicando: </li><ul><li>a qualidade do design do código (código duplicado, classes longas, métodos longos e complexos);
  83. 83. a quantidade e a criticidade dos bugs reportados pelos usuários;
  84. 84. tempo médio de help desk por usuário. </li></ul><li>Revisões de código por desenvolvedores mais experientes;
  85. 85. Definir claramente os requisitos de performance do software . </li></ul>
  86. 86. Simplicidade - a arte de maximizar a quantidade de trabalho não feito - é essencial. <ul><li>Avaliação trimestral da possibilidade de redução de documentação;
  87. 87. Relatório mensal de cada equipe indicando a qualidade do design do código (código duplicado, classes longas, métodos longos e complexos). </li></ul>
  88. 88. As melhores arquiteturas, requisitos e designs emergem de equipes auto-organizadas . <ul><li>Metas para os indicadores numéricos presentes no relatório mensal;
  89. 89. Relatório por iteração indicando as funcionalidades planejadas e concluídas. </li></ul>
  90. 90. Em intervalos regulares, a equipe reflete sobre como se tornar mais eficiente , ajustando seu comportamento nesse sentido. <ul><li>Relatório mensal indicando as ações de melhoria implementadas (se achar burocrático, apenas a quantidade de retrospectivas realizadas). </li></ul>
  91. 91. outras práticas <ul><li>tabela ou gráfico com os indicadores numéricos
  92. 92. reporte para a diretoria
  93. 93. equipe de QA
  94. 94. monitoramento das práticas (no relatório mensal, um checklist ) : </li></ul>[ √ ] ambiente informativo [ √ ] build de dez minutos [ √ ] TDD [ √ ] integração contínua [ √ ] programação em par / inspeção / revisão [ √ ] código coletivo [ √ ] reuniões diárias
  95. 95. E governança ágil na Fortes?
  96. 96. Obrigado. Dúvidas? Clavius Tales [email_address] blogue.claviustales.com.br blogue.claviustales.com.br/2009/05/01/governanca-agil Fortes Informática [email_address] www.fortesinformatica.com.br

×