Acabo de tener una pequeña discusión sobre esto con algunos compañeros de trabajo, pero aún no llegamos a una conclusión. Tenemos un montón de proyectos que se mantienen y desarrollan activamente usando scrum, con sprints fijos de dos semanas, integración de trabajo pendiente de TFS, etc.
También tenemos un proyecto separado, llamado Mobiltec.Framework
, que pretende ser una extensión del marco .Net predeterminado (la mayoría de nuestros proyectos son proyectos C#). Este proyecto de utilidad está destinado a admitir todos los demás proyectos de la empresa con una funcionalidad general no vinculada a ningún producto específico, y se encuentra en su propio TeamProject en TFS, independientemente de cualquier otro proyecto.
Estamos en el proceso de comenzar de nuevo con este, en una migración a TFS 2013, e inmediatamente me pregunté:
¿Qué plantilla de proceso TFS usaré con esto?
Obviamente, esto es específico de TFS, pero creo que la pregunta es lo suficientemente genérica: ¿cuál es el mejor método para desarrollar un proyecto de utilidad bajo demanda? Scrum no tiene absolutamente ningún sentido para mí. Rara vez se le agregan características, y es bastante estable. No existe el concepto de sprint, y no tenemos un equipo especial para manejar el proyecto en absoluto (cualquier desarrollador en toda la compañía teóricamente podría agregarle cosas, si no son específicas del producto).
Siento que todavía debería haber una especie de acumulación de tareas / historias de usuarios asignadas para al menos rastrear lo que se está haciendo, pero no veo cómo debería integrar esto en toda la canalización ágil. ¿Debería simplemente ignorar por completo la idea de las 'iteraciones' (tanto conceptualmente como en TFS) y simplemente desarrollar y lanzar directamente desde la fuente principal, creando historias de usuarios y errores en el camino?
¿Hay algún ejemplo de un proyecto como este, en el que las funcionalidades sean todas bajo demanda y no haya un concepto intrínseco de sprints o iteraciones, en el que pueda basar nuestro proyecto?
En Team Foundation Server 2013, hay 3 plantillas disponibles para proyectos de equipo de forma predeterminada
Todos ellos lo suficientemente ágiles como para adaptarse a sus necesidades, pero creo que los dos primeros son más convenientes. La plantilla Scrum está diseñada para admitir la metodología Scrum tal como la define la organización Scrum. Sin embargo, si su proyecto no debe entregar valor de manera iterativa e incremental configurada por sprints e iteraciones, puede no configurarlas en absoluto.
En TFS 2013, hay un comando 'Configurar programación e iteraciones...' para cada proyecto de equipo. Puede dejar esta parte sin configuración y usar la plantilla de scrum solo para escribir y realizar un seguimiento de los elementos de trabajo.
Lo único que necesita es, al crear un nuevo elemento de trabajo, la iteración debe ser el proyecto en sí. Por ejemplo, si crea una tarea para Mobiltec.Framework, la iteración de la tarea será Mobiltec.Framework y no Mobiltec.Framework->Release 1->Sprint 1. Al hacer esto, puede crear consultas con una cláusula 'Iteración-> >Mobiltec.Framework' y tenga todas las historias de usuarios, errores y tareas en un solo lugar.
También puede personalizar cada plantilla de proyecto de acuerdo con sus necesidades utilizando este archivo .
Además de esto, en TFS 2013 puede tener diferentes equipos trabajando en el mismo proyecto y puede ver la contribución de cada equipo al proyecto.
Espero que esto ayude
Esta pregunta plantea una gran pregunta para mí: ¿es realmente un proyecto en sí mismo o algo que se modificará como parte de otros proyectos? Si es lo último, es posible que no necesite nada más que control de fuente.
Al eliminar el elemento TFS de esta pregunta, Kanban es una metodología ágil sin restricciones de tiempo que podría aplicarse. Estas situaciones son en las que debe observar los principios ágiles, en lugar de los procesos, y encontrar una solución que se ajuste a sus necesidades. Puede abordar esto comenzando con algo similar a Scrum y eliminar el límite de tiempo si es ahí donde radica su experiencia, pero deberá considerar cómo se asegurará de progresar en el proyecto (si eso es importante).
Sugeriría echar un vistazo a la plantilla MS kanban 1.0 . Que es más un proceso de entrega continua en lugar de un enfoque basado en la iteración.
Puede usar los tableros Kanban adjuntos a cada trabajo pendiente para un proceso de flujo continuo.
https://msdn.microsoft.com/en-us/library/jj838789.aspx
Un problema menor:
En VSO (no he probado en el TFS local más reciente), estos tableros funcionan con elementos Story / Feature / Epic (proceso Agile) y elementos Feature / Backlog (proceso Scrum). Significa que los tableros de tareas, que muestran tareas individuales por carril de historia, aún se encuentran dentro de Iteraciones/Sprints.
Como han dicho otros, kanban parece una buena opción según sus criterios. También le recomiendo que ignore las herramientas y el software de gestión cuando considere por primera vez cómo trabajar de manera más efectiva. :)
Editar: creo que comenzar con una herramienta o tecnología específica impone demasiadas restricciones en la vista inicial del trabajo y limitará los enfoques potenciales. También a menudo (desafortunadamente) seguirá siendo una limitación y el equipo se adaptará a ella y no al revés. Un ejemplo clásico es la gerencia o las partes interesadas que desean tener una vista específica del trabajo que se está realizando, como un tablero, y requieren que todos los equipos dentro de la organización usen una herramienta de administración de proyectos "estandarizada" que les muestre esta vista. El flujo de trabajo de esta herramienta y la vista/datos del equipo local se impondrán en el equipo y lo restringirán, lo que incluso puede influir en su cultura y la visión de sí mismos como una organización (sin importar los problemas de comando y control/falta de confianza que presenta). ). Al comenzar sin restricciones de herramientas, el equipo puede pensar en una excelente manera de administrar y ver su trabajo localmente, y luego traducirlo a otra herramienta sincronizando una vez por semana, etc. para que se satisfagan las necesidades de ambas partes. Espero que esto ayude a aclarar. :)
En mi opinión, necesitas hacer una plantilla personalizada, quitarla un poco. Tome plantilla ágil. Deje solo dos tipos de elementos, como en kanban: "Tarjeta" y, por ejemplo, "Error/Problema" solo para la separación de tipos. Entonces solo tiene una iteración como se mencionó anteriormente, que es la raíz del proyecto. A continuación, crea un estado de estacionamiento "Pendiente/Retraso" y otros estados en curso (pasos del proceso para entregar el artículo). Piense que cubre el enfoque básico de utilidad simple, ya que necesita Kanban con seguridad.
saakian
julealgon
Aziz jeque