XPManager - Simple Design

A técnica Simple Design é uma grande quebra de paradigma para quem está acostumado a trabalhar em desenvolvimento de sistemas e é muitas vezes difícil de se acostumar a projetar apenas “a coisa mais simples que possa funcionar”.

Seguidamente leva-se mais tempo tentando tornar uma rotina flexível, reaproveitável, do que implementando a mesma. Um exemplo foi dado por Ron Jeffries, um dos criadores da XP, onde ele menciona que até mesmo eles, os autores da XP, às vezes se esquecem deste princípio.

O caso descrito por ele ocorreu enquanto ele escrevia o livro Extreme Programming Installed. Ele tinha cada capítulo do livro em um arquivo independente. Ele sentiu a necessidade de desenvolver um sistema simples, onde ele tivesse acesso aos arquivos da pasta onde estavam os capítulos, e tivesse controle sobre quais já haviam sido mandados para os revisores e quais ainda faltavam ir. Então, ele resolveu criar um programa na linguagem Doplhin. Quando ia começar, ele achou que o objeto que ele iria criar ficaria bem melhor se ele pudesse definir uma pasta qualquer, para poder fazer este controle para qualquer novo livro que ele viesse a escrever. Então ele perdeu dois dias tentando desenvolver esta ferramenta genérica, até que se deu conta que não era isto que ele precisava para o momento, mas sim indexar os capítulos deste livro. Então, em pouco mais de uma hora ele desenvolveu este aplicativo, que resolveu o problema do momento.

Esta então é a aposta da XP, que não deve ser desenvolvido nada que não seja necessário para a iteração na qual se está trabalhando agora, “resistindo à tentação” de fazer uma rotina “mais completa”.

Este princípio é conhecido na XP pela sigla YANGNI (you are not gonna need it), que diz que normalmente se acaba não precisando de todas as funcionalidades e flexibilidade que se coloca em um código que poderia ser implementado de forma simples.


Voltar