Termo para recursos acidentais [fechado]

4

Apesar das melhores intenções dos programadores; Muitas vezes, no mundo real, os sistemas de software contêm "características acidentais" que são aceitas como parte de um sistema de trabalho.

Por exemplo, pode haver algum processo que fica sem memória e falha antes que o processo exceda sua cota de chamadas para um sistema externo (o que custará dinheiro à empresa). Embora a equipe de software reconheça que isso é um problema, simplesmente não há valor comercial percebido suficiente para resolver o problema.

Comportamento acidental vantajoso como esse é frequentemente perdido em qualquer tipo de migração técnica significativa.

Minha pergunta: Existe um termo para esse tipo de "recurso" que pode servir para diferenciá-lo de um bug comum?

    
por smp7d 07.04.2013 / 21:42
fonte

5 respostas

18

O Programador Pragmático chama esses Acidentes de Implementação . Espera-se que este termo garanta que a situação não seja confundida com nada além do que realmente é.

"Acidentes de implementação são coisas que acontecem simplesmente porque é assim que o código é atualmente escrito. Você acaba contando com erros não documentados ou condições de limite."

(Eu acho que deveria ter consultado o desenvolvedor antes de fazer esta pergunta)

    
por 08.04.2013 / 16:46
fonte
11

Eu os chamo de "recursos não documentados" .

É um pouco irônico quando esse recurso é obviamente um bug, mas é amplo o suficiente para que você possa usá-lo para recursos experimentais ou recursos incluídos para compatibilidade com versões anteriores.

Geralmente, não é uma boa ideia informar seus clientes de que o recurso foi um acidente. Se os clientes gostarem, documente-o para o próximo lançamento.

    
por 07.04.2013 / 22:11
fonte
11

Eu os chamaria de "recursos emergentes ".

In philosophy, systems theory, science, and art, emergence is the way complex systems and patterns arise out of a multiplicity of relatively simple interactions. Emergence is central to the theories of integrative levels and of complex systems...

The term "emergent" was coined by philosopher G. H. Lewes, who wrote:

"Every resultant is either a sum or a difference of the co-operant forces; their sum, when their directions are the same -- their difference, when their directions are contrary. Further, every resultant is clearly traceable in its components, because these are homogeneous and commensurable. It is otherwise with emergents, when, instead of adding measurable motion to measurable motion, or things of one kind to other individuals of their kind, there is a co-operation of things of unlike kinds. The emergent is unlike its components insofar as these are incommensurable, and it cannot be reduced to their sum or their difference."

    
por 07.04.2013 / 21:59
fonte
5

Eu já ouvi isso ser chamado de "Design by Coincidence".

Exemplo: um projeto em que trabalhei em documentos gerenciados do MS Office em uma unidade de rede. Ele permitia que os usuários abrissem os documentos diretamente - um bug, era para copiar o arquivo para a máquina local. mas isso significava que os usuários seriam alertados se outro usuário já tivesse o documento aberto. Esse era um recurso básico do MS Office e não tinha nada a ver com nosso software, mas nossa força de vendas e nosso CEO começaram a se referir a ele como um recurso. Quando me pediram para replicar esse recurso para a versão da web do aplicativo, os gerentes ficaram chocados ao saber que o "recurso" não existia.

    
por 08.04.2013 / 06:01
fonte
0

"Propriedades emergentes" é um termo correto. Nós fomos sobre isso na universidade - exemplo foi um carro 4x4. Seu principal objetivo é off-road. No entanto, muitas famílias decidem comprar um carro desse tipo porque ele oferece segurança para seus filhos (passageiros).

Outra propriedade emergente desse carro é o fato de que quando você deixa seus filhos na escola, eles tendem a abrir uma porta com pressa. Isso causou um problema em separado, onde crianças pequenas na calçada foram atingidas pela porta do carro, pois você não podia realmente vê-las em uma janela.

O ponto é que o termo se aplica a recursos bons e não tão bons. Ele também é usado em várias indústrias, não apenas na TI.

    
por 23.04.2014 / 12:37
fonte