lunes, 30 de abril de 2018

Ten piezas en el tablero

Hay veces en el ciclo de vida del desarrollo de un proyecto donde la situación parece que supera a todo el equipo (o no es por superación pero no esta claro que camino coger). Solo un par de ramas de trabajo parecen importantes y parece que sobra gente. En ese momento, al responsable del proyecto le entra la necesidad de quedarse solo con lo justo. En todo, tanto en lineas de trabajo como en personas. Sobre todo en personas.

No hace falta una situación critica, puede ser simplemente que parece que las personas encargadas del desarrollo de proyecto no están progresando nada por cualquier razón y el responsable tiene la necesidad de "reducir el problema".

Sea cual sea el motivo que lleve al responsable a reducir el equipo, hay que cambiar de idea y buscar otro planteamiento:

  • Puede que el problema sea una liena de trabajo erronea
  • Puede que se necesiten nuevas divisiones dentro del grupo
  • Puede que los miembros del equipo necesiten formacion
  • ...  
Hay que mantener el equipo de desarrollo. Ampliarlo si cabe. 

Como en una partida de ajedrez, puede que el intercambio de piezas te de la sensación de seguridad pero sin piezas te limitas el numero de jugadas, de opciones, de posibilidades... Puede que cueste coordinar mas a un grupo mas numeroso pero es el talento del conjunto lo que hace grande a un grupo no "el brillo se su parte mas reluciente".

martes, 24 de abril de 2018

El símil del cuadrado


Este símil viene muy bien para explicar de manera sencilla y rápida porque es necesario mas definición inicial (funcionales, requisitos, historias de usuario, etc..) para conceptos como:

  •           Empezar un desarrollo software.
  •           Empezar una definición de maquetación.
  •           Empezar una definición de usabilidad.
  •           Etc…

Opción A: Si se define claramente que se quiere un cuadrado (en el símil es el software, maquetación, etc…)



Las personas que tienen que hacer el cuadrado pueden dividirlo como mejor les venga para poder implementarlo


Implementar las partes por separado
Así al juntar lo implementado se tiene más posibilidades de que se parezca al cuadrado original
Opción B: Si lo que se hace es definir las partes suponiendo que al final se conseguirá un cuadrado
Cuando se junten hay muy pocas posibilidades de que parezca a un cuadrado




sábado, 14 de abril de 2018

Prepara el Sprint

Tras el uso de la metodología Scrum en varios proyectos te das cuenta de que el equipo de desarrollo nunca va a ser responsable del desarrollo. El equipo, por lo general, esta formado por personas que solo quieren programar. No quieren tener una visión global del proyecto y no quieren hacerse responsable del trabajo de los demas.

Esto implica que al final se tenga un jefe de proyecto o un Scrum master o product owner mas parecido a un jefe de proyecto que al puesto que Scrum indica que debe tener. Si al final te decantas por usar Scrum pero con responsables entonces ten en cuenta varias cosas:

- Antes de la reunion de cierre de Sprint recuerda a la gente que lleven el estado de las tareas y el estado de lo que le quede sin finalizar preparado.

- Ve con el Sprint preparado a la reunión de definición del Sprint. Es decir, ya ten preparadas las tareas que tiene asignado cada miembro del equipo para el siguiente Sprint. En la reunión habla con los miembros del equipo de las tareas. En función de lo que se diga entonces se puede modificar. Pero llevalo preparado. 

Si estas ocioso propon un proyecto.

A todas las personas que hemos programado nos ha pasado que en algún momento de nuestra carrera hemos pasado periodos de estar ociosos completamente o casi completamente. Y estos periodos pueden durar meses.

Por lo general, el motivo es coyuntural: el proyecto entra en un periodo en el que se decide el rumbo que debe tomar, la empresa no tiene muy claro donde encaja mas tu perfil, el proyecto esta sobredimensionado, etc.. Pero sea cual sea el motivo, el animo del programador empieza a descender ya que aparecen sentimientos deprimentes: quieren que me vaya de la empresa, estoy perdiendo el tiempo, etc..

Puedes empezar a estudiar y a hacer cursos como loco de cualquier cosa y/o tecnología. No es mala solución pero si la situación se alarga entonces las energias que tenias para estudiar desaparecerán.

La mejor solución es que enfoques la situación como si tu jefe te hubiese mandado hacer una propuesta de una mejora completa del proyecto en el que estes. Por ejemplo, si trabajas en un proyecto que esta implementado en Java Structs entonces propon implementarlo con Spring Boot. Y no te quedes en un documento, implementa código.