View
725
Download
6
Embed Size (px)
DESCRIPTION
Resumo da palestra:Evento: AgileDay2010(Puc RS)Palestra: O DilemaPalestrante: Klaus
Citation preview
O Dilema
Focar na qualidade ou na entrega imediata de novas funcionalidades?
Como e até quanto ponderar qualidade de um projeto mediante ao pedido imediatista de
urgência de seu P.O..
Quem consegue distinguir código bom de código ruim ?
Exemplo 01
Public void FazQualquerCoisa(bol condicao) {
if (condicao==true)
{
A();
B();
C();
}
}
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;
}
Refactoring de código = baby steps
Métodos pequenos induzem o desenvolvedor pensar 2 vezes antes de
inserir mais linhas!
Código ruim se espalha igual a vírus!
Qual a qualidade dos nossos códigos?
0% = Código escrito por mil macacos
100% = Código impecável
Qual grau de qualidade que aumenta nossa produtividade ?
Considere uma equipe de Fórmula 1 ...
Você acha que a equipe deve abrir mão da qualidade para conseguir
maior agilidade ?
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)
“Quem não utiliza testes automatizados é charlatão!” – Klaus
JAMAIS diminua a qualidade para alcançar o prazo !
SEMPRE busque a qualidade para ter o seu máximo de produtividade!
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!
Refactoring = educação da equipe
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)
Ditado do GO, ”perca suas primeiras cem partidas a mais rápido possível”.