desenvolvimento agil orientado a testes

Post on 26-May-2015

2.269 Views

Category:

Education

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

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.

TRANSCRIPT

Desenvolvimento Ágil Orientado a Testes

Uma história real de como a busca pela qualidade de software transformou uma equipe de desenvolvimento

Eder Ignatowicz

segunda-feira, 22 de agosto de 2011

Eder Ignatowicz...

@ederign

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

BDD

segunda-feira, 22 de agosto de 2011

BDD

segunda-feira, 22 de agosto de 2011

BDD

segunda-feira, 22 de agosto de 2011

BDD

segunda-feira, 22 de agosto de 2011

BDD

segunda-feira, 22 de agosto de 2011

BDD

segunda-feira, 22 de agosto de 2011

Orgulho

segunda-feira, 22 de agosto de 2011

O que te motiva no trabalho ?

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

Ou um sentido de realização, um senso de propósito, um senso de orgulho ?

segunda-feira, 22 de agosto de 2011

Segundo o sociólogo e historiador norte-americano Richard Sennett, autor de "L'uomo artigiano" (O

homem artesão)...

segunda-feira, 22 de agosto de 2011

É 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 compromissodesinteressado dá significado à vida".

segunda-feira, 22 de agosto de 2011

É 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 dedesenvolvê-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

E no desenvolvimento de Software ?

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

Mas e a minha história.... ?

segunda-feira, 22 de agosto de 2011

Tinhamos um grande (e longo) projeto para um cliente bancário...

E uma equipe competente...

segunda-feira, 22 de agosto de 2011

Utilizávamos Scrum e grande parte dos preceitos ágeis...

segunda-feira, 22 de agosto de 2011

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

e o incômodo ficava cada vez maior....

segunda-feira, 22 de agosto de 2011

... dentre estes incômodos, o principal era...

segunda-feira, 22 de agosto de 2011

Nós podemos mais !

Precisamos construir (e garantir) uma maior qualidade do nosso trabalho...

segunda-feira, 22 de agosto de 2011

Numa “calma” reunião técnica...

segunda-feira, 22 de agosto de 2011

Escutamos uns aos outros e decidimos utilizar:

segunda-feira, 22 de agosto de 2011

TDD e BDD para as regras de negócio:

segunda-feira, 22 de agosto de 2011

E como fazemos isto ?

segunda-feira, 22 de agosto de 2011

TDD

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

Para mim (e para muita gente)...

TDD não se refere a testes...

segunda-feira, 22 de agosto de 2011

TDD se refere a DESIGN de código.

segunda-feira, 22 de agosto de 2011

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

Escreveremos testes unitários para todas as nossas classes.

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

BDD

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

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

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

Porque para mim TODOS são desenvolvedores de software!

segunda-feira, 22 de agosto de 2011

Multidisciplinaridade

segunda-feira, 22 de agosto de 2011

Penso que BDD pode por fim a “GUERRA” entre QA e

desenvolvedores (aka programadores)...

segunda-feira, 22 de agosto de 2011

Porque a guerra acontece ?

segunda-feira, 22 de agosto de 2011

“Testers” e “Programadores” não falam a mesma língua

segunda-feira, 22 de agosto de 2011

E com BDD conseguimos...

segunda-feira, 22 de agosto de 2011

Conversar no mesmo idioma (o do negócio)

segunda-feira, 22 de agosto de 2011

E como fazemos isto ?

segunda-feira, 22 de agosto de 2011

Todos membros do time escrevem as histórias colaborativamente nas reuniões

de planning...

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

Collective Ownership entre desenvolvedores (aka testers +

programadores)

segunda-feira, 22 de agosto de 2011

(Demo BDD/JBehave)

segunda-feira, 22 de agosto de 2011

Também decidimos...

segunda-feira, 22 de agosto de 2011

ATDD (ou especificação por exemplo) para TODOS os fluxos principais do negócio

segunda-feira, 22 de agosto de 2011

E como fazemos isto ?

segunda-feira, 22 de agosto de 2011

Todos membros do time colaborativamente selecionam as

principais histórias nas reuniões de planning...

segunda-feira, 22 de agosto de 2011

Nem todas histórias viram testes de aceitação...

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

Testes precisam ser organizados e fáceis de escrever e manter...

segunda-feira, 22 de agosto de 2011

Através da Selenium IDE / Badboy ?

segunda-feira, 22 de agosto de 2011

A promessa...

segunda-feira, 22 de agosto de 2011

A realidade...

segunda-feira, 22 de agosto de 2011

Que tal Page Objects ?

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

Reusáveis

segunda-feira, 22 de agosto de 2011

Baixa manutenção

segunda-feira, 22 de agosto de 2011

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

E como fazemos isto ?

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

Animei, quero codificar meus testes...

segunda-feira, 22 de agosto de 2011

Mas para preencher um simples Suggestion Box Ajax no Selenium...

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

Eu como QA, quero (e devo) me preocupar com o negócio.

O meu FOCO é outro.

segunda-feira, 22 de agosto de 2011

Mas...

segunda-feira, 22 de agosto de 2011

Eu te afirmo...

segunda-feira, 22 de agosto de 2011

Com uma API caprichada toda a equipe é capaz de gostar de automatizar (programar) testes

funcionais !!!

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

Todo o time programando testes !

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

segunda-feira, 22 de agosto de 2011

TODOS somos desenvolvedores de software!

segunda-feira, 22 de agosto de 2011

(Selenium + Page Objects + BDD Demo)

segunda-feira, 22 de agosto de 2011

E finalmente...

segunda-feira, 22 de agosto de 2011

O Jenkins e o Sonar cuidando para que tudo se mantenha em ordem...

segunda-feira, 22 de agosto de 2011

E quais foram os resultados ?

segunda-feira, 22 de agosto de 2011

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

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

Orgulho

segunda-feira, 22 de agosto de 2011

Eder Ignatowicz...

@ederign

segunda-feira, 22 de agosto de 2011

top related