O gerente lendo o controle de versão confirma

18

Nosso gerente está monitorando o compromisso do Git em todos os nossos projetos; geralmente isso não é um problema, e eu amo o fato de que o controle de versão fornece um log de todo o trabalho que está acontecendo, especialmente para auditorias e análises posteriores (caso algo dê errado).

No entanto, o gerente fez alguns comentários perguntando no que as pessoas estão trabalhando quando vê um commit que lê "correções de estilo" ou qualquer mensagem de commit que não faça referência a um número de ticket em nosso sistema de gerenciamento de tarefas.

Existe uma solução social ou técnica para isso?

Mais informações: este é um projeto de manutenção; portanto, várias tarefas "tiveram que fazer A, então B, C e D e, finalmente, implementaram X".

Mais informações: a mensagem de confirmação específica que levantou um sinalizador com o gerente estava perto de "incluía uma maneira melhor de X, Y e Z", que é mais uma mensagem de refatoração do que uma simples correção estilística.

Peter Mortensen
fonte
10
Eu concordo com o seu gerente. Observar um log de confirmação de dois anos para descobrir quando algo mudou e ver confirmações como "correções de estilo" é muito irritante. Se o seu gerente não permitir que você adicione tarefas de refatoração ao sistema de gerenciamento de tarefas, isso é outra questão.
Gort the Robot
9
A verdadeira refatoração é ainda mais importante para capturar do que as mudanças estilísticas. No mínimo a cometer mensagem deve dizer o que está sendo reformulado, mas realmente eu gostaria que seguia para que todos sabiam o que estava sendo reformulado, QA sabia o que teste com mais cuidado, etc.
Gort the Robot
3
^^^ o que o @StevenBurnap disse - esta é uma prática muito boa. Apenas poder referenciar o ID do ticket em vez de poluir a mensagem de confirmação com explicações longas de que tipo de aprimoramentos / refatoração de estilo existe e por que esses são desejados, faz valer a pena. E há mais para que, seguindo o esforço, a comunicação com a gestão / QA etc etc. E não me fale de como ele é conveniente quando integra bug Tracker com ferramenta de revisão VCS / code
mosquito
1
Depende completamente da situação. O gerente está reagindo a um membro da equipe que gasta 50% de seu tempo em refatoração ou a um único commit sem referência ao ticket?
Winkbrace #

Respostas:

42

Existe uma solução social ou técnica para isso?

Suponho, mas isso não é um problema .

Seu gerente deve saber o que vocês estão fazendo. Eles devem garantir que você não esteja realizando um trabalho que não ofereça valor ou por que o trabalho sem ingresso foi priorizado. Não há mal nisso. Em um mundo ideal, ele trará benefícios, porque seu gerente pode definir expectativas com os negócios, para que você possa realizar todo esse trabalho sem pressão ou interrupção.

Isso só se torna um problema se o gerente considerar que apenas o trabalho do ticket deve ser realizado e impedir que o trabalho de limpeza técnica seja ticket. Sempre há dívidas técnicas para limpar. Sempre as coisas devem ser ajustadas porque você deve, mesmo que elas não ofereçam benefícios comerciais claros e imediatos.

Telastyn
fonte
14

Se a correção estilística fizer parte do ticket em que você está trabalhando e estiver relacionada, não há nada errado em fazer o check-in separadamente com o mesmo número de ticket em que você estava trabalhando para uma melhor identificação.

Se você está apenas descobrindo as alterações que precisam ser feitas e elas não estão relacionadas ao ticket no qual você está trabalhando atualmente, sugiro que você faça tickets relacionados à dívida de tecnologia e os coloque em seu backlog para posterior reformulação.

Durante o seu planejamento, você pode passar pelos tickets relacionados à dívida técnica e anexá-los aos tickets de manutenção reais que você planeja trabalhar dessa maneira, tornando-os mais relacionáveis.

Isso o ajudará a eliminar as correções "do nada" e manter tudo encapsulado na categoria de problemas / tickets específicos em que você está trabalhando.

AvetisG
fonte
1
Ok, mas se for uma correção trivial, isso é completamente estúpido.
Lightness Races com Monica
1
Dívida tecnológica 99,99% do tempo não é uma mudança trivial. É por isso que digo que faça um ingresso em vez de mergulhar em outra coisa que é uma grande mudança de contexto. Se for algo trivial e não relacionado ao que você está trabalhando, ainda poderá fazer o check-in com o nome do ticket em que está trabalhando com um comentário separado. Ou melhor, pense em uma notação como o QFIX para facilitar a identificação mais tarde, para que você não tenha mudanças triviais aleatórias flutuando sem nenhuma organização.
AvetisG
e se o gerente também estiver assistindo o JIRA em busca de novos tickets e depois questionando-os? ele não questiona quando os tickets são transferidos de um sprint futuro para o atual, mas, assim que alguém cria um novo ticket relacionado à dívida técnica, ele é questionado.
Rudolf Olah
A notação QFIX é algo que você precisaria falar em equipe antes de implementar. É uma questão de comunicação, você não entra e escreve suas próprias regras. Então, primeiro fale sobre isso em equipe e, se eles não concordarem, escolha a outra solução, que é fazer o check-in junto com o ticket principal no qual você está trabalhando com um comentário separado. Observe, porém, mais uma vez, apenas se a alteração for trivial, o que significa que ela não contém alterações lógicas ou grandes refatorações. Mudanças inócuas, inofensivas e triviais.
AvetisG
@omouse Pode muito bem ser que seu gerente esteja gerenciando de forma microgerencial ou que ele não esteja lidando adequadamente com dívidas técnicas. No entanto, o gerente é o principal responsável pelo projeto como um todo e o código em si; portanto, idealmente, em algum nível, você deve estar ciente de cada parte do trabalho que ocorre e por quê.
Gort the Robot
1

Isso me incomoda também (sem trocadilhos :).

Os check-ins mais úteis contêm comentários exclusivos e específicos não apenas sobre o que mudou, mas também por que. Às vezes, acabo colocando comentários em parágrafos.

Ocasionalmente, encontro situações em que um requisito de interface do usuário é revertido assim que o desenvolvimento é iniciado, exigindo que eu essencialmente devolva o código também (sim, às vezes o mundo real é um saco). Nesses casos, considero ainda mais importante que meus comentários forneçam clareza sobre o motivo da devolução e, mais importante ainda, sobre o motivo pelo qual o código termina onde ocorre. Então, quando a gerência voltar depois de falar com os clientes e quiser saber o porquê, eu posso mostrá-los sem precisar me lembrar de toda a experiência, passo a passo.

Worrystone
fonte