Desenvolvimento agil orientado a testes
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Desenvolvimento agil orientado a testes

  • 2,585 views
Uploaded on

Palestra apresentada na trilha de testes do TDC 2011....

Palestra apresentada na trilha de testes do TDC 2011.

TDD com JUnit, BDD com JBehave, ATDD com WebJBehave e Selenium, integração contínua com Jenkins e inspeção contínua com Sonar: Como maximizar a qualidade de software através da integração destas técnicas e ferramentas, e de que maneira a utilização de valores ágeis e o desenvolvimento orientado a testes transformaram uma equipe de desenvolvimento Java, promovendo qualidade e motivação.

More in: Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,585
On Slideshare
2,564
From Embeds
21
Number of Embeds
4

Actions

Shares
Downloads
84
Comments
0
Likes
3

Embeds 21

http://us-w1.rockmelt.com 11
http://www.linkedin.com 6
http://twitter.com 3
http://a0.twimg.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Desenvolvimento Ágil Orientado a Testes Uma história real de como a busca pela qualidade de software transformou uma equipe de desenvolvimento Eder Ignatowiczsegunda-feira, 22 de agosto de 2011
  • 2. Eder Ignatowicz... @ederignsegunda-feira, 22 de agosto de 2011
  • 3. segunda-feira, 22 de agosto de 2011
  • 4. segunda-feira, 22 de agosto de 2011
  • 5. segunda-feira, 22 de agosto de 2011
  • 6. BDDsegunda-feira, 22 de agosto de 2011
  • 7. BDDsegunda-feira, 22 de agosto de 2011
  • 8. BDDsegunda-feira, 22 de agosto de 2011
  • 9. BDDsegunda-feira, 22 de agosto de 2011
  • 10. BDDsegunda-feira, 22 de agosto de 2011
  • 11. BDDsegunda-feira, 22 de agosto de 2011
  • 12. Orgulhosegunda-feira, 22 de agosto de 2011
  • 13. O que te motiva no trabalho ?segunda-feira, 22 de agosto de 2011
  • 14. segunda-feira, 22 de agosto de 2011
  • 15. Ou um sentido de realização, um senso de propósito, um senso de orgulho ?segunda-feira, 22 de agosto de 2011
  • 16. Segundo o sociólogo e historiador norte-americano Richard Sennett, autor de "Luomo artigiano" (O homem artesão)...segunda-feira, 22 de agosto de 2011
  • 17. É preciso restabelecer o "conceito de ofício, sobre o princípio do artesão: valorizar o significado do trabalho, em vez da remuneração que se pode esperar dele. Reabilitar o conceito de trabalho bem desenvolvido pelo simples prazer de desenvolvê-lo bem, independentemente do conceito de performance ou de retribuição. Apenas esse compromisso desinteressado dá significado à vida".segunda-feira, 22 de agosto de 2011
  • 18. É preciso restabelecer o "conceito de ofício, sobre o princípio do artesão: valorizar o significado do trabalho, em vez da remuneração que se pode esperar dele. Reabilitar o conceito de trabalho bem desenvolvido pelo simples prazer de desenvolvê-lo bem, independentemente do conceito de performance ou de retribuição. Apenas esse compromisso desinteressado dá significado à vida".segunda-feira, 22 de agosto de 2011
  • 19. E no desenvolvimento de Software ?segunda-feira, 22 de agosto de 2011
  • 20. segunda-feira, 22 de agosto de 2011
  • 21. segunda-feira, 22 de agosto de 2011
  • 22. segunda-feira, 22 de agosto de 2011
  • 23. Mas e a minha história.... ?segunda-feira, 22 de agosto de 2011
  • 24. Tinhamos um grande (e longo) projeto para um cliente bancário... E uma equipe competente...segunda-feira, 22 de agosto de 2011
  • 25. Utilizávamos Scrum e grande parte dos preceitos ágeis...segunda-feira, 22 de agosto de 2011
  • 26. Mas a cada mês o projeto crescia e surgiam problemas cada vez maiores (como em todos grandes projetos)....segunda-feira, 22 de agosto de 2011
  • 27. e o incômodo ficava cada vez maior....segunda-feira, 22 de agosto de 2011
  • 28. ... dentre estes incômodos, o principal era...segunda-feira, 22 de agosto de 2011
  • 29. Nós podemos mais ! Precisamos construir (e garantir) uma maior qualidade do nosso trabalho...segunda-feira, 22 de agosto de 2011
  • 30. Numa “calma” reunião técnica...segunda-feira, 22 de agosto de 2011
  • 31. Escutamos uns aos outros e decidimos utilizar:segunda-feira, 22 de agosto de 2011
  • 32. TDD e BDD para as regras de negócio:segunda-feira, 22 de agosto de 2011
  • 33. E como fazemos isto ?segunda-feira, 22 de agosto de 2011
  • 34. TDDsegunda-feira, 22 de agosto de 2011
  • 35. segunda-feira, 22 de agosto de 2011
  • 36. Para mim (e para muita gente)... TDD não se refere a testes...segunda-feira, 22 de agosto de 2011
  • 37. TDD se refere a DESIGN de código.segunda-feira, 22 de agosto de 2011
  • 38. Nunca escreva uma única linha de código a menos que falhe em um teste automatizado(RED). Então escreva o mínimo de código para o teste passar (GREEN) e depois elimine a duplicação. (REFACTOR) Kent Beck em um ângulo não muito favorável ;)segunda-feira, 22 de agosto de 2011
  • 39. Escreveremos testes unitários para todas as nossas classes.segunda-feira, 22 de agosto de 2011
  • 40. segunda-feira, 22 de agosto de 2011
  • 41. BDDsegunda-feira, 22 de agosto de 2011
  • 42. segunda-feira, 22 de agosto de 2011
  • 43. Behavior Driven Development pode ser visto como uma técnica de desenvolvimento ágil que encoraja colaboração entre desenvolvedores, analistas, QA e o pessoal não técnico (stackholders) para o sucesso de um projeto.segunda-feira, 22 de agosto de 2011
  • 44. Behavior Driven Development pode ser visto como uma técnica de desenvolvimento ágil que encoraja colaboração entre desenvolvedores, analistas, QA e o pessoal não técnico (stackholders) para o sucesso de um projeto.segunda-feira, 22 de agosto de 2011
  • 45. Porque para mim TODOS são desenvolvedores de software!segunda-feira, 22 de agosto de 2011
  • 46. Multidisciplinaridadesegunda-feira, 22 de agosto de 2011
  • 47. Penso que BDD pode por fim a “GUERRA” entre QA e desenvolvedores (aka programadores)...segunda-feira, 22 de agosto de 2011
  • 48. Porque a guerra acontece ?segunda-feira, 22 de agosto de 2011
  • 49. “Testers” e “Programadores” não falam a mesma línguasegunda-feira, 22 de agosto de 2011
  • 50. E com BDD conseguimos...segunda-feira, 22 de agosto de 2011
  • 51. Conversar no mesmo idioma (o do negócio)segunda-feira, 22 de agosto de 2011
  • 52. E como fazemos isto ?segunda-feira, 22 de agosto de 2011
  • 53. Todos membros do time escrevem as histórias colaborativamente nas reuniões de planning...segunda-feira, 22 de agosto de 2011
  • 54. segunda-feira, 22 de agosto de 2011
  • 55. Collective Ownership entre desenvolvedores (aka testers + programadores)segunda-feira, 22 de agosto de 2011
  • 56. (Demo BDD/JBehave)segunda-feira, 22 de agosto de 2011
  • 57. Também decidimos...segunda-feira, 22 de agosto de 2011
  • 58. ATDD (ou especificação por exemplo) para TODOS os fluxos principais do negóciosegunda-feira, 22 de agosto de 2011
  • 59. E como fazemos isto ?segunda-feira, 22 de agosto de 2011
  • 60. Todos membros do time colaborativamente selecionam as principais histórias nas reuniões de planning...segunda-feira, 22 de agosto de 2011
  • 61. Nem todas histórias viram testes de aceitação...segunda-feira, 22 de agosto de 2011
  • 62. segunda-feira, 22 de agosto de 2011
  • 63. Testes precisam ser organizados e fáceis de escrever e manter...segunda-feira, 22 de agosto de 2011
  • 64. Através da Selenium IDE / Badboy ?segunda-feira, 22 de agosto de 2011
  • 65. A promessa...segunda-feira, 22 de agosto de 2011
  • 66. A realidade...segunda-feira, 22 de agosto de 2011
  • 67. Que tal Page Objects ?segunda-feira, 22 de agosto de 2011
  • 68. segunda-feira, 22 de agosto de 2011
  • 69. Reusáveissegunda-feira, 22 de agosto de 2011
  • 70. Baixa manutençãosegunda-feira, 22 de agosto de 2011
  • 71. Escondem detalhes desnecessários através de Orientação a Objetos (tornando mais fácil o seu uso)segunda-feira, 22 de agosto de 2011
  • 72. E como fazemos isto ?segunda-feira, 22 de agosto de 2011
  • 73. segunda-feira, 22 de agosto de 2011
  • 74. segunda-feira, 22 de agosto de 2011
  • 75. segunda-feira, 22 de agosto de 2011
  • 76. Animei, quero codificar meus testes...segunda-feira, 22 de agosto de 2011
  • 77. Mas para preencher um simples Suggestion Box Ajax no Selenium...segunda-feira, 22 de agosto de 2011
  • 78. segunda-feira, 22 de agosto de 2011
  • 79. segunda-feira, 22 de agosto de 2011
  • 80. Eu como QA, quero (e devo) me preocupar com o negócio. O meu FOCO é outro.segunda-feira, 22 de agosto de 2011
  • 81. Mas...segunda-feira, 22 de agosto de 2011
  • 82. Eu te afirmo...segunda-feira, 22 de agosto de 2011
  • 83. Com uma API caprichada toda a equipe é capaz de gostar de automatizar (programar) testes funcionais !!!segunda-feira, 22 de agosto de 2011
  • 84. segunda-feira, 22 de agosto de 2011
  • 85. segunda-feira, 22 de agosto de 2011
  • 86. Todo o time programando testes !segunda-feira, 22 de agosto de 2011
  • 87. segunda-feira, 22 de agosto de 2011
  • 88. segunda-feira, 22 de agosto de 2011
  • 89. segunda-feira, 22 de agosto de 2011
  • 90. segunda-feira, 22 de agosto de 2011
  • 91. TODOS somos desenvolvedores de software!segunda-feira, 22 de agosto de 2011
  • 92. (Selenium + Page Objects + BDD Demo)segunda-feira, 22 de agosto de 2011
  • 93. E finalmente...segunda-feira, 22 de agosto de 2011
  • 94. O Jenkins e o Sonar cuidando para que tudo se mantenha em ordem...segunda-feira, 22 de agosto de 2011
  • 95. E quais foram os resultados ?segunda-feira, 22 de agosto de 2011
  • 96. Para o cliente: • Produto funcionando; • Deploy “contínuo” em um sistema bancário; • Velocidade e adaptação as mudanças; •Confiança na equipe.segunda-feira, 22 de agosto de 2011
  • 97. Para a equipe: • Produto funcionando; • Maximização da qualidade; • Confiança na modificação de funcionalidades; • Sono tranquilo e....segunda-feira, 22 de agosto de 2011
  • 98. Orgulhosegunda-feira, 22 de agosto de 2011
  • 99. Eder Ignatowicz... @ederignsegunda-feira, 22 de agosto de 2011