O dilema

20
O Dilema Focar na qualidade ou na entrega imediata de novas funcionalidades?

description

Resumo da palestra:Evento: AgileDay2010(Puc RS)Palestra: O DilemaPalestrante: Klaus

Transcript of O dilema

Page 1: O dilema

O Dilema

Focar na qualidade ou na entrega imediata de novas funcionalidades?

Page 2: O dilema

Como e até quanto ponderar qualidade de um projeto mediante ao pedido imediatista de

urgência de seu P.O..

Page 3: O dilema

Quem consegue distinguir código bom de código ruim ?

Page 4: O dilema

Exemplo 01

Public void FazQualquerCoisa(bol condicao) {

if (condicao==true)

{

A();

B();

C();

}

}

Page 5: O dilema

Exemplo 02

Public void FazQualquerCoisa(bol condicao) {// Precisa inicializar a variavelbol retorno = false

if(condicao == true) {retorno = true;

} elseif( condicao == false) {retorno = false;

}

// METRO DE SPreturn retorno;

}

Page 6: O dilema

Refactoring de código = baby steps

Page 7: O dilema

Métodos pequenos induzem o desenvolvedor pensar 2 vezes antes de

inserir mais linhas!

Page 8: O dilema

Código ruim se espalha igual a vírus!

Page 9: O dilema

Qual a qualidade dos nossos códigos?

Page 10: O dilema

0% = Código escrito por mil macacos

Page 11: O dilema

100% = Código impecável

Page 12: O dilema

Qual grau de qualidade que aumenta nossa produtividade ?

Page 13: O dilema

Considere uma equipe de Fórmula 1 ...

Você acha que a equipe deve abrir mão da qualidade para conseguir

maior agilidade ?

Page 14: O dilema

Quais fatores que as equipes aceitam trabalhar abaixo da qualidade?

Experiência no negócio

Treinamento + tempo para treinamento

Testes

Falta de capacidade de avaliação de código ruim

Código legado

Não acha importante simplificar

Tentativa de generalização (Overdesign)

Page 15: O dilema

“Quem não utiliza testes automatizados é charlatão!” – Klaus

Page 16: O dilema

JAMAIS diminua a qualidade para alcançar o prazo !

SEMPRE busque a qualidade para ter o seu máximo de produtividade!

Page 17: O dilema

Muita da sujeira em código esta ligada a dificuldade em se ver, diariamente e de forma simples, o código e sua

dependências!

Uma falha é mais fácil de ver quando tudo está mais simples!

Page 18: O dilema

Refactoring = educação da equipe

Page 19: O dilema

O que fazer então ?

– Pair programming

– TDD

– Simplificar código

– Discutir questões porem ter uma opinião forte

– Métodos para documentar

– Métodos curtos

– Testes automatizados

– Refactoring

– Coding style deve ser sempre revisto e discutido

– Errar rápido para aprender(Dojos)

Page 20: O dilema

Ditado do GO, ”perca suas primeiras cem partidas a mais rápido possível”.