Qual é a diferença entre um defeito e um bug?
terminology
quality-attributes
maz3tt
fonte
fonte
Respostas:
Um bug é o resultado de um erro de codificação
Um defeito é um desvio dos requisitos
Ou seja: Um defeito não significa necessariamente que há um erro no código , pode ser uma função que não foi implementada, mas definida nos requisitos do software.
Na página da Wikipedia sobre teste de software :
fonte
Citando Ilene Burnstein do livro Practical Software Testing (recomendado) que parte da definição na "Coleção de Padrões IEEE para Engenharia de Software" (1994) e no "Glossário Padrão IEEE de Terminologia de Engenharia de Software" (padrão 610.12, 1990):
Erro
Falhas (Defeitos)
Falhas
Você pode ler o capítulo completo no Google Livros, aqui .
fonte
Existem alguns termos diferentes relacionados a erros de software. Trecho de um curso que fiz:
Erro : ação humana ou omissão que resulta em uma falha.
Falha : Falha é um defeito de software (etapa, processo ou definição de dados incorreta) que causa uma falha.
Bug : O mesmo que falha.
Falha : Incapacidade de um software de executar suas funções necessárias dentro dos requisitos de desempenho especificados.
De acordo com isso, não há diferença entre um defeito e um bug. No entanto, algumas pessoas argumentam que o bug é um erro encontrado antes da liberação do software, enquanto o defeito é encontrado pelo cliente.
Não resisti a postar o famoso "primeiro caso real de bug sendo encontrado".
fonte
Oh céus.
Antigamente - a operação defeituosa de um computador era causada por todo tipo de coisa - incluindo ratos mastigando a fiação e bugs reais (bichos) entrando nos trabalhos.
O termo BUG ficou como um termo que significa que algo não está funcionando como o esperado.
ERRO deve ser pensado como um termo do jargão que significa um defeito.
Um defeito é um termo tecnicamente correto, o que significa que a coisa não faz como deveria.
Sempre que possível, usar DEFECT em vez de BUG traz consigo uma conotação de que reconhecemos nossas falhas (nossos defeitos, nossa falta de entendimento dos requisitos do usuário ou as coisas que ignoramos na implementação) em vez de vesti-lo como o bug "mais trivial". "
Use DEFEITO.
Tente não usar o termo BUG. É bobo, irrelevante, histórico e trivial.
fonte
No Glossário Padrão da IEEE de Terminologia de Engenharia de Software, citado no KA de Conhecimento em Engenharia de Software para Teste de Software e Qualidade de Software:
Eu acho que a definição de falha é a mais relevante. Tudo começa com um erro, seja nos requisitos, no design, na implementação ou no caso / procedimento de teste. Se esse erro for manifestado no software, ele se tornará uma falha. Uma falha é causada pela existência de uma ou mais falhas no software.
Não estou muito interessado na definição formal de erro. Eu prefiro muito a definição fornecida por dukeofgaming em sua resposta , no entanto, a que está nesta resposta é a definição padrão de erro do IEEE.
fonte
A resposta de Dan McGrath acertou em cheio.
Talvez um exemplo torne isso mais claro.
Exemplo: o cliente queria que o formulário da web pudesse salvar e fechar a janela.
Cenário 1: o formulário da Web possui um botão Salvar e outro botão Fechar. Resultado: Defeito, porque o cliente queria o botão 1 para salvar e fechar a janela. O desenvolvedor não entendeu e foi criado separadamente. Como os dois botões cumpriram seus requisitos, não é um bug, mas um defeito porque não atendeu aos requisitos do cliente.
Cenário # 2: o formulário da Web tem um botão Salvar e Fechar, mas salva e não fecha. Resultado: Bug. Porque o botão não funciona conforme necessário / esperado. O desenvolvedor sabe que é suposto produzir esse resultado, mas no final não o fez. (talvez erro de codificação)
Não tenho certeza se isso torna mais claro.
p / s: do ponto de vista do desenvolvedor (eu já fui), defeitos e bugs são igualmente importantes. Ainda vamos consertar.
Nós até encontramos anomalias estranhas, que classificamos como bugs e tentamos continuamente descobrir qual é a causa e como corrigi-la. Denominar erros não o torna trivial em comparação com os defeitos.
fonte
A diferença é que o termo "bug" parece mágico. Como se um programa pudesse ter erros aleatoriamente depois de terminar a programação. Se houver erros aleatórios, significa que você não está em conformidade com as especificações e seu programa está com erro.
Um defeito significa um erro em que o programa não está em conformidade com as especificações. Isso é mais grave e basicamente diz que qualquer erro é um grande problema com o programa e isso significa que o programa não está apto para ser lançado.
A diferença está na atitude dos programadores que usam os termos. Existem milhões de programas lançados com bugs e as pessoas estão bem com isso porque aceitam, por algum motivo, que um bug é mágico e aleatório e que todo programa contém pelo menos um bug. No entanto, um programador que usa o termo "defeito" pode ficar desconfortável ao liberar um programa com defeito, porque o termo implica em uma maior gravidade.
As implicações de preferir um termo ao outro afetam-nos diariamente.
fonte
De acordo com a confiabilidade: conceitos básicos e terminologia :
Entendo defeito como apenas outro nome por falha.
O bug é confuso e pode representar uma falha ou falha, dependendo do contexto.
Observe que não há menção de especificação: mesmo uma especificação pode estar com defeito.
fonte
Aqui está um que fiz anteriormente para o meu empregador Q-LEAP com base no vocabulário ISTQB e também verifiquei o vocabulário IEEE. Apreciar.
Bug e defeito? O mesmo, embora se possa ter uma discussão interminável sobre isso. Temos realmente outras coisas com que nos preocupar, a vida já é bastante complicada etc.
Um exemplo de como o termo é usado na natureza, em "Como o Google testa o software" p. 113. Abra um artigo do "IEEE Software" e é usado da mesma maneira. De fato, raramente encontramos a palavra "defeito" na vida real.
fonte
Fora de um bug / tarefa / ticket / defeito / problema / qualquer instância específica do sistema de rastreamento, essas palavras não têm significado exato e, portanto, discutir a diferença entre elas é inútil. Ao definir seu fluxo de trabalho, você deve definir a terminologia e fornecer descrições.
No meu ambiente atual, um "defeito" é qualquer item no Jira. Parece que o próprio Jira usa o termo "problema". Podemos ter herdado de algum sistema anterior. "Bug" é um tipo de problema quando algo não está funcionando conforme o esperado e descrito na documentação. "Solicitação de recurso" quando algo está funcionando como esperado, mas o empuxo é desejado (pode ser óbvio e importante, mas se o comportamento atual for descrito, ainda será uma solicitação de recurso). Existem mais tipos, mas esses 2 são usados por pessoas fora da equipe de desenvolvimento para solicitar algo.
Se você está escolhendo nomes para tipos de problemas, "bug" e "defeito" são parecidos comigo. A diferença entre eles é estilística. Como o inglês não é minha língua nativa, não consigo ver muito disso e não tenho certeza se o que vejo está correto.
fonte