Scrum funciona de mejor manera cuando es aplicado por un equipo en una sola localidad, pero en la realidad es muy común que un solo equipo no pueda completar un gran proyecto o que los recursos estén repartidos en diferentes localidades y como consecuencia de ello los equipos deben ser aumentados o bien distribuidos. Las razones por ejemplo pueden ser técnicas, que no existan expertos en algún tema, relacionadas con el tamaño del proyecto, que este sea muy grande, o relacionadas con el negocio, aprovechando diferentes zonas horarias para mantener la productividad.
La comunicación es parte importante del marco Scrum, y en especial se debe tener un especial cuidado con esta cuando se trata del reto de trabajar con proyectos en ambientes distribuidos y todos los miembros deberían tener acceso a las apropiadas herramientas de comunicación como videoconferencia o web cams. Para romper las mas comunes barreras de comunicación.
Es importante asegurarse que el numero de equipos Scrum no crezca demasiado rapido, solo despues de por lo menos cinco íteraciones se puede añadir un pequeño numero de equipos y así sucesivamente añadirlos solamente cuando los actuales sean productivos.
Para crear un nuevo equipo existen dos posibilidades:
1. Partir un equipo existente.
2. Añadir un equipo completamente nuevo.
Partir un equipo existente presenta como ventaja que el Know-How se tiene y por lo tanto el equipo sera productivo mas rápidamente pero el inconveniente es que los equipos actuales se destrozan y el conocimiento que se tenia de ellos también por lo que se debe iniciar de nuevo.
Cuando se forman nuevos equipos, los equipos actuales pueden continuar sin muchas interrupciones, el único inconveniente es que los nuevos equipos tardaran mas en tener el Know-How.
Independientemente de la decision que se tome se debe tomar en cuenta
1. Iniciar con un pequeño numero de equipos
2. Esperar en la construcción y estabilización de los equipos
3. Crecer el numero de equipos en pequeños escalones.
ORGANIZACIÓN DE PROYECTO EN AMBIENTES DISTRIBUIDOS
La creación de nuevos equipos se vuelve aun mas complicada, cuando se tienen diferentes equipos en diferentes localidades, la comunicación se debe realizar de forma mas cuidadosa al involucrar a cada uno de los miembros del equipo de forma adecuada.
Para asegurarse que el conocimiento sea transferido de forma correcta y que de este modo se construyan los requerimientos de una manera ágil por ejemplo se puede temporalmente integrar a participantes de otros equipos mientas el equipo construye su Know-How siendo transferido de forma personal desde personas de otras localidades.
EQUIPOS VIRTUALES
Otra posibilidad son los equipos virtuales y estos son cuando un mismo equipo esta distribuido en diferentes localidades
El principal reto es la comunicación ya que las personas no están físicamente y posiblemente no pueden tener acceso o colaborar con las herramientas visuales como el Sprint Board. Para esto se debe apoyar en la tecnología, de ser posible contar con un cuarto virtual, con videoconferencia y herramientas que permitan romper las barreras de comunicación.
PRODUCT OWNER
Para obtener buenos resultados y éxito en el proyecto es crucial la comunicación con el Product Owner y este debe estar siempre disponible para el equipo, por ello es recomendable que se tenga uno dedicado para cada equipo.
Uno de los Product Owner debe ser nombrado como jefe y este se debe encargar que se coordinen las acciones entre todos los Product Owner y que el desarrollo sea consiste para todos los equipos, aunque se tengan diferentes Product Owner la Product Backlog debe ser única.
COMPONENTES O CARACTERÍSTICAS
Cuando se trabajan con múltiples equipos Scrum se pueden distribuir las actividades de dos maneras diferentes: por componente o por característica.
Por Componentes
Cuando la implementación se realiza por componentes a veces es necesario partir una historia de usuario en componentes específicos que serán implementados por un equipo por lo tanto se depende de los otros equipos para tener un resultado funcional, muchas veces no se puede finalizar en un solo Sprint ya que se dependen de historias que se tienen en desarrollo por otro equipo, a esto se le llama canalización "pipelining" y se debe evitar en la medida de lo posible.
La ventaja de utilizar el enfoque por componente es que se puede trabajar de mejor manera la arquitectura, la desventaja que los miembros de los distintos equipos solo tienen el conocimiento de una parte del sistema y por lo tanto este conocimiento puede perderse o un nuevo conocimiento debe ser desarrollado al ver otras partes.
Por Característica
Cada equipo es responsable de una historia de usuario del Backlog
Por Caracteristicas y por Componentes
En la realidad muchas veces se combinan ambas
En este caso el equipo C, es encargado de la infraestructura de servicios para los otros equipos, en este caso ellos no implementaran una historia como tal pero proveerán elementos que son comunes a historias de usuario.
SCRUM MASTER
Es importantisíma la función del scrum master en ambientes distribuidos ya que generalmente existen mayores impedimentos, los cuales debe solucionar. También es necesario que el Scrum master se encuentre en el lugar donde esta el equipo ya que remotamente es mas dificil resolver los impedimentos, se puede tener un Scrum master principal y en ambientes de equipos virtuales se puede designar a un miembro del equipo para realizar las funciones del Scrum Master
La comunicación es parte importante del marco Scrum, y en especial se debe tener un especial cuidado con esta cuando se trata del reto de trabajar con proyectos en ambientes distribuidos y todos los miembros deberían tener acceso a las apropiadas herramientas de comunicación como videoconferencia o web cams. Para romper las mas comunes barreras de comunicación.
Es importante asegurarse que el numero de equipos Scrum no crezca demasiado rapido, solo despues de por lo menos cinco íteraciones se puede añadir un pequeño numero de equipos y así sucesivamente añadirlos solamente cuando los actuales sean productivos.
Para crear un nuevo equipo existen dos posibilidades:
1. Partir un equipo existente.
2. Añadir un equipo completamente nuevo.
Partir un equipo existente presenta como ventaja que el Know-How se tiene y por lo tanto el equipo sera productivo mas rápidamente pero el inconveniente es que los equipos actuales se destrozan y el conocimiento que se tenia de ellos también por lo que se debe iniciar de nuevo.
Cuando se forman nuevos equipos, los equipos actuales pueden continuar sin muchas interrupciones, el único inconveniente es que los nuevos equipos tardaran mas en tener el Know-How.
Independientemente de la decision que se tome se debe tomar en cuenta
1. Iniciar con un pequeño numero de equipos
2. Esperar en la construcción y estabilización de los equipos
3. Crecer el numero de equipos en pequeños escalones.
ORGANIZACIÓN DE PROYECTO EN AMBIENTES DISTRIBUIDOS
La creación de nuevos equipos se vuelve aun mas complicada, cuando se tienen diferentes equipos en diferentes localidades, la comunicación se debe realizar de forma mas cuidadosa al involucrar a cada uno de los miembros del equipo de forma adecuada.
Para asegurarse que el conocimiento sea transferido de forma correcta y que de este modo se construyan los requerimientos de una manera ágil por ejemplo se puede temporalmente integrar a participantes de otros equipos mientas el equipo construye su Know-How siendo transferido de forma personal desde personas de otras localidades.
EQUIPOS VIRTUALES
Otra posibilidad son los equipos virtuales y estos son cuando un mismo equipo esta distribuido en diferentes localidades
El principal reto es la comunicación ya que las personas no están físicamente y posiblemente no pueden tener acceso o colaborar con las herramientas visuales como el Sprint Board. Para esto se debe apoyar en la tecnología, de ser posible contar con un cuarto virtual, con videoconferencia y herramientas que permitan romper las barreras de comunicación.
PRODUCT OWNER
Para obtener buenos resultados y éxito en el proyecto es crucial la comunicación con el Product Owner y este debe estar siempre disponible para el equipo, por ello es recomendable que se tenga uno dedicado para cada equipo.
Uno de los Product Owner debe ser nombrado como jefe y este se debe encargar que se coordinen las acciones entre todos los Product Owner y que el desarrollo sea consiste para todos los equipos, aunque se tengan diferentes Product Owner la Product Backlog debe ser única.
COMPONENTES O CARACTERÍSTICAS
Cuando se trabajan con múltiples equipos Scrum se pueden distribuir las actividades de dos maneras diferentes: por componente o por característica.
Por Componentes
Cuando la implementación se realiza por componentes a veces es necesario partir una historia de usuario en componentes específicos que serán implementados por un equipo por lo tanto se depende de los otros equipos para tener un resultado funcional, muchas veces no se puede finalizar en un solo Sprint ya que se dependen de historias que se tienen en desarrollo por otro equipo, a esto se le llama canalización "pipelining" y se debe evitar en la medida de lo posible.
La ventaja de utilizar el enfoque por componente es que se puede trabajar de mejor manera la arquitectura, la desventaja que los miembros de los distintos equipos solo tienen el conocimiento de una parte del sistema y por lo tanto este conocimiento puede perderse o un nuevo conocimiento debe ser desarrollado al ver otras partes.
Por Característica
Cada equipo es responsable de una historia de usuario del Backlog
Por Caracteristicas y por Componentes
En la realidad muchas veces se combinan ambas
En este caso el equipo C, es encargado de la infraestructura de servicios para los otros equipos, en este caso ellos no implementaran una historia como tal pero proveerán elementos que son comunes a historias de usuario.
SCRUM MASTER
Es importantisíma la función del scrum master en ambientes distribuidos ya que generalmente existen mayores impedimentos, los cuales debe solucionar. También es necesario que el Scrum master se encuentre en el lugar donde esta el equipo ya que remotamente es mas dificil resolver los impedimentos, se puede tener un Scrum master principal y en ambientes de equipos virtuales se puede designar a un miembro del equipo para realizar las funciones del Scrum Master
Comentarios