El debate: ¿Debería todo desarrollo, incluido el trabajo de refactorización, ir acompañado de un problema de seguimiento? (en nuestro caso, Jira)
El terreno común: nuestro objetivo principal es la calidad. Un producto que funcione, cada lanzamiento, es más importante que cualquier otra cosa. Nuestra base de código es antigua y faltan pruebas automatizadas; Estamos trabajando en esto, pero es un proyecto a largo plazo, necesitamos procesos provisionales.
Posición 1: El trabajo de refactorización debe rastrearse en Jira. Si obviamente no está relacionado con el cambio que está realizando, debe plantear otro problema. Si no lo hace, el trabajo pasa por alto la revisión y las pruebas y existe un riesgo para nuestro objetivo principal. Se ha argumentado que el cumplimiento de PCI (un objetivo de la empresa en un futuro próximo) requiere este nivel de seguimiento; No estoy en condiciones de decir que es verdadero o falso con ningún nivel de certeza.
Posición 2: la calidad del código es muy importante. Cuanto mejor sea (hasta cierto punto; un punto que no estamos cerca), es más probable que sigamos lanzando un producto que funcione. Cualquier cosa que ponga una barrera, por pequeña que sea, en el camino de la refactorización es un riesgo para nuestro objetivo principal. A menudo, el IDE hace el trabajo por usted, por lo que no es probable que salga mal de todos modos.
Se han realizado los siguientes casos:
¿Satisfacería ambas posiciones si un desarrollador escribe "Refactor" y los números de revisión relevantes en una tarjeta? Honestamente, esto parece que hará que todos estén igualmente infelices. Todavía pone un nivel de resistencia en la refactorización, pero no ofrece un seguimiento suficiente.
¿Qué pasa con tener problemas de Jira que abarcan todo y que cubren el trabajo de refactorización para una iteración? Sí, esto elimina la capa de resistencia del desarrollador, pero me temo que también elimina los beneficios de seguimiento de tener un problema con Jira. ¿Cómo puede obtener un control de calidad una idea clara de qué probar? Esto parece ser una solución política, mantener a todos tranquilos al agregar un proceso liviano pero en última instancia inútil.
Me parece que, dado que ambos lados del debate en última instancia quieren lo mismo, debería haber una solución que haga a todos genuinamente felices. No podemos haber sido las primeras personas en hacer esta pregunta, entonces, ¿qué experiencias han tenido otros en situaciones similares?