Para no ser demasiado amplio para empezar, la pregunta directa sería:
¿Se espera que un desarrollador deba recordar continuamente a los administradores de proyectos sobre una característica no implementada porque carece de recursos para implementarla?
Las reglas son las siguientes: Tenemos un tablero con tareas en columnas. Un desarrollador elige una tarea en "ABIERTO" y comienza a trabajar en ella. Mientras lo hace, mueve la tarea a "EN CURSO". Cuando termina, la tarea pasa a "DESARROLLO REALIZADO" (luego a pruebas). Pero si algo sale mal, la tarea se debe mover a "COMENTARIOS" donde se debe resolver algo. Tal vez falta el diseño o alguna descripción no está clara...
Bastante simple si me preguntas.
En mi opinión, como desarrollador, cuando una tarea no se puede completar y su ticket está en "COMENTARIOS", es responsabilidad del gerente de proyecto realizar un seguimiento de una función y esforzarse por encontrar una persona que pueda resolver el problema.
Pero lo que sucedió en nuestro equipo: Se envió un ticket a "FEEDBACK" ya que no se implementó la API que se necesitaba. El ticket permaneció allí durante algunos meses (sí, casi medio año en realidad) y luego, en algún momento, uno de los gerentes de proyecto simplemente cerró el ticket porque otro gerente de proyecto informó que envió el problema a otro equipo. Pasa otro mes y de repente aparece esta característica no completada. Ahora, uno de los gerentes de proyecto está furioso y afirma que es nuestra responsabilidad como desarrolladores hacer un seguimiento de esas cosas y que esperaría que tuviéramos algún tipo de lista de cosas que no se han hecho.
¿Es esto cierto? ¿Deberíamos hacer un seguimiento de algunas cosas adicionales al lado del tablero que ya tenemos? Esperaría que una sola placa fuera suficiente para tales cosas y el equipo de desarrollo hizo todo lo posible para evitar tal desorden. Si no es así, ¿tiene alguna recomendación sobre cómo evitar tales problemas o cómo realizar un mejor seguimiento de tales problemas potenciales?
Para dar una historia completa sobre cómo/qué sucedió:
Estamos haciendo una aplicación móvil. Hace unos meses recibimos una solicitud de que en una pantalla específica (rara vez vista por un usuario) se puede recibir un error de la API (debido a alguna situación rara). Ahora, este error específico también informará un código de suberror. Entonces, si ocurre este error, se agregará un sub-error A
o sub-error . B
Y dependiendo de este suberror, la aplicación debe mostrar screenA
o screenB
. Pero la API no proporcionó A
ni B
la tarea completada no pudo ser validada o probada.
Entonces, el ticket se colocó en "COMENTARIOS" explicando que la API simplemente no está lista para eso. Pero luego comenzó una discusión sobre el boleto sobre ver la pantalla de todos modos solo para verificar el diseño. Entonces, el desarrollador agregó una lógica para mostrar aleatoriamente screenA
o screenB
e informó esto en el ticket que todavía estaba en "COMENTARIOS".
Pasaron los meses y en algún momento uno de los PM trató de manejar esto. Así que (supongo) informó esto al equipo responsable de la API y comentó en el ticket, algo así como "Nos dijeron que esto es un error de su parte. Mención: theOtherPM, ¿podemos cerrar este ticket ahora?". Y "theOtherPM" luego cerró el ticket. Otro mes después, todo el infierno se desata por esto y estoy confundido por qué es culpa de nosotros los desarrolladores.
Nota: Otra cosa a mencionar es que el otro equipo, que es responsable de la API (entre otras cosas), no es parte de nuestra red y ni siquiera de nuestra empresa. Nosotros, como equipo de desarrollo, no tenemos comunicación directa con ellos. Así que no había otra forma de resolver esto sino a través de nuestra gestión.
La pregunta que estás haciendo es realmente un problema X/Y. Tiene un par de otros problemas que en realidad no ha mencionado en su pregunta:
Si tiene gerentes de proyecto tradicionales que son responsables del proyecto, en última instancia, son responsables de rastrear el estado de los elementos de trabajo e informarlos de manera adecuada. Esto es cierto ya sea que deleguen o no parte de esa responsabilidad a los miembros del equipo.
Por otro lado, si tiene un proceso verdaderamente ágil, tanto la responsabilidad como la rendición de cuentas para el seguimiento de los elementos de trabajo deben estar claramente definidas por los acuerdos de trabajo del equipo, tanto dentro del equipo como con otros equipos. No hay una respuesta correcta o incorrecta sobre quién debe rendir cuentas o ser responsable, siempre que satisfaga las necesidades de todas las partes interesadas, incluidas las del propio equipo del proyecto.
Creo que esto tiene una respuesta canónica, al menos desde el punto de vista de un PM tradicional, si no con Agile o Kanban o cualquier otra cosa.
Si un trabajo no pudo ser terminado por cualquier motivo, por el mecánico, el desarrollador, el comerciante, quien sea, entonces el problema recae en la parte del proyecto de PM o control de PM para ser rastreado y resuelto. El personal del proyecto asignado que debía implementar ese trabajo pasa a otro trabajo o incluso abandona el sitio del proyecto. Ese rol ya no podría, y en muchos casos, ya no puede rastrear ni controlar ese problema. La responsabilidad pasa a ser del propietario dentro de los controles de PM y eso puede variar proyecto por proyecto.
Si algo falla en ese proceso y ese artículo se pierde, la responsabilidad de esa pérdida recae en los controles de PM o PM.
MCW
Matic Oblak
mike robinson
mike robinson
Matic Oblak
Mástil
cronocida
Will Crawford
mike robinson