Creeping featurism, excesso de recursos
Quando o ótimo é inimigo do bom
Trata-se do processo através do qual os recursos (Features
) são acrescentados a uma nova versão pelos desenvolvedores de software até o programa se tornar terrivelmente desajeitado e difícil de usar. Em geral, essa característica ocorre quando os desenvolvedores tentam melhorar a competitividade de seus programas a cada nova versão, incluindo novos recursos.
Palavras-chaves: desordem, caos e entropia.
O processo através do qual os recursos são acrescentados a uma nova razão pelos desenvolvedores de software até o programa se tornar terrivelmente desajeitado e difícil de usar. Em geral, essa característica ocorre quando os desenvolvedores tentam melhorar a competitividade de seus programas a cada nova versão, incluindo novos recursos.
Feature creep é a proliferação de recursos em um produto, como software de computador. Recursos adicionais vão além da função básica do produto e podem resultar em um design barroco, excessivamente complicado, ou "featuritis", em vez de um design simples e elegante.
A causa mais comum do feature creep é o desejo de fornecer ao consumidor um produto mais útil ou desejável, a fim de aumentar as vendas ou distribuição. No entanto, uma vez que o produto atinge o ponto em que faz tudo o que foi projetado para fazer, o fabricante fica com a escolha de adicionar funções desnecessárias, às vezes à custa da eficiência, ou manter a versão antiga, à custa de uma falta percebida de melhoria.
Feature creep é a fonte mais comum de aumento de custos e cronogramas. Portanto, pode colocar em risco e até matar produtos e projetos. O sistema operacional Copland abandonado pela Apple é um exemplo disso.
A tentação de um feature creep posterior pode ser evitada em certa medida baseando o design inicial em fundamentos sólidos de software, como separação lógica de funcionalidades e acesso a dados. Pode ser controlado ativamente com uma gestão rigorosa de mudanças e atrasando mudanças para fases de entrega posterior de um projeto.