Devo registrar correções triviais?

28

Estou em uma loja de códigos de dois. E embora eu entenda que um rastreador de erros é útil quando o número de programadores é maior ou igual a um, não estou tão convencido de que registrar erros, alterações e correções valha o tempo em que são triviais. Quando encontro um bug simples, eu o entendo, corrijo e executo alguns testes. E então eu percebi que precisava registrá-lo.

Eu sei em teoria que o registro de erros deve ser feito em algum lugar entre encontrar o erro e corrigi-lo, mas se corrigi-lo é mais rápido que registrá-lo, parece uma chatice. Em lojas de códigos maiores, o chefe presta atenção em quem está fazendo o que e é bom saber para onde os outros estão mexendo.

Eu me pego descrevendo coisas que eu já consertei e depois as fecho instantaneamente. Eu tenho dúvidas de que alguém jamais veja esse bug fechado novamente. Está na hora de cortar a gordura do processo?

Philip
fonte
6
Quando você encontrar um bug, anote o que estava no papel. Quando você corrigir o erro, anote quais arquivos foram modificados. Antes de enviar a correção, registre o erro e envie as alterações. Se você fizer isso sempre que adquirir um hábito, atualmente tem um mau hábito, registrar erros não é uma perda de tempo.
Ramhound 15/03/12
5
Como você pode ter certeza de que esses erros são triviais?
2
@ ashansky, você leu a segunda frase da minha pergunta?
Philip
11
Não registrar seu próprio trabalho é uma maneira segura de: a) não receber crédito por isso eb) ser perguntado 'por que o X não foi concluído e por que você está trabalhando no Y?'
Michael Durrant
11
Você não pode registrar tudo, simplesmente não é prático. Por que algumas pessoas pulam para cima e para baixo pensando que algumas coisas como não registrar algumas coisas menores são equiparadas a não registrar ???
quer

Respostas:

36

Você deve registrar todas as alterações feitas no seu sistema. Não há nada errado em registrá-lo após o evento - desde que você vincule o relatório de bug ao número da alteração.

Então, se alguma coisa der errado, você poderá rastrear o bug e descobrir por que você fez a alteração.

Na grande maioria dos casos, você está certo e ninguém nunca mais os examinará, mas em 1 em 100 quando algo der errado, essa informação será inestimável - especialmente se o problema surgir apenas 6 meses depois.

ATUALIZAR

Obviamente, se você ainda estiver desenvolvendo um novo recurso e descobrir um bug em parte do recurso que achou ter concluído, não é necessário registrá-lo como uma alteração separada. Nesses casos, eu o registrava no item que solicita o recurso principal.

Uma vez que o sistema com o recurso foi passado para QA ou o cliente, em seguida, é preciso fazer o que eu descrito acima.

ChrisF
fonte
Durante a fase inicial de desenvolvimento, antes de liberar uma primeira versão da equipe de engenharia, não há necessidade de registrar alterações no rastreador de erros. As alterações serão anotadas nos logs de controle de versão em cada envio.
uɐɪ
@Ian Isso é verdade, mas geralmente durante o desenvolvimento inicial (supondo que você queira realmente desenvolver e não a prototipagem exploratória ou algo parecido), você normalmente estará trabalhando contra algum tipo de conjunto de recursos. Nesse caso, cada alteração deve ser vinculada ao (s) recurso (s) que ele suporta. Pequenas correções na linha para um recurso "concluído" ainda poderiam ser vinculadas a ele para indicar suporte a esse elemento. Lembre-se de que isso depende de como você rastreia recursos e especificações.
CodexArcanum
11
@ Darknight - não é fácil! Isso é ajudado pelo fato de usarmos o TFS e o configuramos para não permitir check-ins que não possuem um item de trabalho associado. Sim, você pode substituir a regra, mas ela para e faz você pensar no que está fazendo.
ChrisF
11
@ Darknight Desculpe, mas esses números não significam nada. Dizer que não faz com que seja verdade; mesmo se você pudesse validar tudo isso, e daí? A única conclusão que posso tirar de você apresentando esses números é tentar de alguma forma se posicionar acima dos outros de alguma maneira, o que, francamente, parece fútil, desnecessário e rude / ofensivo.
casperOne
3
@All Por favor, leve esta discussão para conversar.
Maple_shaft
14

Se você usar uma ferramenta de controle de origem, poderá descrever o bug corrigido na descrição do commit e isso geralmente é documentação suficiente para correções de bugs super pequenas e triviais.

Além disso, se você usar um rastreador de erros / recursos totalmente integrado ao seu controle e repositórios de fontes, como FogBugz e Kiln , poderá usar a ferramenta de pesquisa global para encontrar essas correções e ver quais alterações de código foram feitas. facilmente.

Além disso, você pode atribuir uma revisão de código ao seu parceiro de programação para que ele possa revisar a correção trivial que você fez, mas discordo ...

CFL_Jeff
fonte
11
Sim, eu faço isso. Embora às vezes eu me encontre consertando coisas em um galho e agrupando-as em outros commits.
Philip
@matthieu Espere, o Jira se integra ao SVN? Meu Deus, por que não estamos fazendo isso? Parece que existem alguns plug-ins.
Philip
5

Do ponto de vista das métricas, ainda pode ser útil.

Esta informação pode ser usada para mostrar ao chefe várias coisas:

  • precisamos de mais desenvolvedores
  • outra coisa no processo está quebrada (por que tantos bugs? o outro cara gera a maioria dos bugs), talvez mostrando que você tem muitos bugs. Talvez haja algo causando isso? você está liberando muito cedo? testes suficientes estão sendo feitos?
  • uma boa lista do que você tem trabalhado é o bônus.

Tudo dito, depende do tamanho do bug que você está falando. Os liners que você encontrar ao adicionar novo código provavelmente não teriam sentido em registrar, por exemplo.

ozz
fonte
2

Eu tento registrar todas as alterações que faço, independentemente do tamanho. Você nunca sabe quando você ou alguém (futuro ou presente) precisará voltar e ver se essa mudança é a possível causa de outra coisa.

Corv1nus
fonte
1

O rastreamento é importante, mas considere também outro cenário: quando chegar a hora da sua revisão. Isso acontecerá formalmente pessoalmente ou informalmente sem você, por meio do seu chefe, recebendo relatórios do rastreador de erros.

Considere-os 'truques' que acabam aumentando seus números. Afinal, são os erros que você corrigiu e você deve ser reconhecido por corrigi-los, mesmo que sejam triviais.

Registre-os.

Steven Evers
fonte
Sim, em lojas de códigos maiores, o chefe tem "métricas" baseadas nisso, então é um bom conselho geral. Isso também leva as pessoas a abusar do rastreador de bugs e a lançar essas métricas no inferno sem sentido. Mas aqui somos apenas eu e o outro cara. Boss não usa o rastreador de erros.
Philip
1

Para responder a isso, realmente depende de onde você está no processo.

Isso pode se aplicar a um novo projeto ou a um novo conjunto de recursos que está sendo projetado.

Design inicial Se você encontrar erros no código que criamos durante o design inicial, não será necessário criar uma faixa de erros. Eu sugeriria uma confirmação separada para a alteração, para que você possa desenrolá-la facilmente se encontrar um problema posteriormente.

Teste

Normalmente, o código ainda é considerado imaturo durante o teste de unidade; portanto, a menos que seja feito por um grupo diferente, eu diria que não. Se o teste de unidade for realizado por um grupo diferente de um rastreador de erros, é uma boa maneira de formalizar o procedimento de teste.

O teste CSCI depende. É feito por outro grupo? Se sim, então sim (veja acima). Esta é a última etapa do teste antes do lançamento? Então sim, porque neste momento seu software deve ser considerado maduro. Se você estiver interessado em métricas, também seria bom começar a rastrear bugs neste momento.

Para qualquer nível mais alto de teste, você deve usar o rastreamento de erros. Nesses pontos, seu software deve ser considerado maduro e o rastreamento de bugs é importante.

Lançamento

Você sempre deve rastrear bugs no código liberado. Isso é importante para a prestação de contas.

A racionalização de um processo para atender às suas necessidades também é importante. Você realmente precisa de um enorme sistema de rastreamento de bugs? Todos os campos são realmente importantes para uma equipe de 2 pessoas?

Charlie
fonte
1

É possível que outra pessoa possa encontrar o bug, talvez em uma versão mais antiga do software lançada no mundo exterior? Nesse caso, o registro do bug e da correção pode ser útil.

Outros sugeriram que, se levar mais tempo para registrar o bug do que para corrigi-lo, não vale a pena registrar. Sugiro que o intervalo de tempo relevante não seja entre encontrar o bug e corrigi-lo, é entre o momento em que o bug foi introduzido e o momento em que a correção foi lançada.

Se o histórico de alterações e liberações indicar que o bug nunca viu a luz do dia, o registro da correção quando você a verifica no controle de origem deve ser suficiente.

Isso está bem próximo dessa pergunta , mas não tenho certeza de que seja uma duplicata, já que esta se concentra em correções triviais .

Keith Thompson
fonte
1

Por que você não deve rastrear bugs, por Jon Arid Torresdal - conserte-os.

  1. Durante o desenvolvimento: você encontra um bug para um recurso; você adiciona um caso de teste que quebra a compilação e verifica a correção no recurso.

  2. Após o lançamento: documente o comportamento . Se você planeja lançar uma atualização, vá para 1. Se você não é responsável por essa versão, mantenha o teste + a correção armazenados em uma ramificação particular.

Depois que o código é liberado, pode haver outras prioridades e, embora a correção do bug seja trivial, a distribuição da correção pode não ser econômica por si só, a menos que você esteja fazendo uma implantação contínua.

Henk Langeveld
fonte
-6

Depende de quão trivial, eu uso esta medida:

Se demorar mais tempo para registrá-lo do que levou para corrigir isso, ele não é vale a pena registrá-lo.

Noite escura
fonte
3
Só porque leva mais tempo para registrar do que para corrigir, não é justificativa suficiente. Ha! este teve uma explicação :) #
315
2
Eu não diminuí a votação, mas se eu tivesse que adivinhar por que alguém o fez, é porque eles acreditam em registrar todas as correções de bugs ou acham que sua resposta não foi muito útil / esclarecedora.
CFL_Jeff
3
Não vou votar, mas discordo disso como regra geral (embora na maioria dos casos eu possa ver que faz sentido!). E se você tivesse um "erro de um erro" enviado, mas escapasse pela rede de controle de qualidade? Leva mais tempo para registrar que a correção ....
PhillC
2
Se não estiver logado, não poderá ser verificado como corrigido pelo controle de qualidade
17 de 26
3
-1 Esta é a arrogância apenas programador (' Eu não cometer erros) e da ignorância (eu não vi nada de ruim acontecer com pequenas correções). Uma falha e uma gravação realmente muito boas de uma correção 'menor' geralmente ajudam com isso (também conhecida como experiência).
Michael Durrant