De programacion y otros demonios

miércoles, 23 de marzo de 2016

PM - Buenas prácticas a la hora de hacer un cronograma - Parte 1

Si eres un PM que nunca ha hecho un plan de gestion del cronograma y quieres saber las buenas prácticas PMI al respecto, bienvenido !!

Pero y qué es ese plan???  (si no te has certificado como PMP ni has estudiado...  entiendo que te hagas esta pregunta, sino... aún no presentes el examen, no estás listo).  La respuesta es fácil,  es un plan donde dejas escritas todas las "reglas" que gobernarán la creación, gestión y mantenimiento de tu plan de trabajo en ése proyecto.

Mientras desarrollo este tema, ten en mente lo siguiente: es un proyecto de más de un año, con varios proveedores distintos, algunos de ellos en otros países; ahora sí las buenas prácticas según el PMI - Practice Standard for Scheduling y según mi propia experiencia en mis propias palabras.

Otra cosa: soy fan de MS Project así que tenme paciencia si no es lo tuyo.

Qué es el Schedule Model ?

Según el PMI:  representación dinámica del plan para ejecutar las actividades del proyecto desarrolladas por los interesados, aplicando un método de programación a una herramienta usando datos específicos.  Puede ser procesado por una herramienta de programación para producir varias instancias del modelo.

Según YO: Es la unión  de datos del proyecto en una herramienta de programación como MS Project (ej EDT (WBS), actividades duraciones, secuencias, dependencias, restricciones, hitos, calendarios, etc) ; que se puede visualizar de varias formas (diagrama de red, lista de actividades, etc).  Si usas MS Project, una instancia de tu modelo sería el diagrama de red.


Buenas prácticas a la hora de crear tu cronograma - Parte 1

A.  Crea un plan de gestión del modelo de cronograma, recuerda: estoy pensando en un proyecto donde intervienen varios interesados de distintos tipos, colores y formas..  los quiero a todos alineaditos y entendiendo qué estamos haciendo, cómo vamos y sobre todo viendo la misma versión del archivo ! (suele pasar... )

Este plan incluye:

1. Elegir un modelo de programación a seguir. 
Depende de las políticas de tu empresa y las características del proyecto, puede ser Diagranación por precedencia (PDM, Precedence Diagram Method), Ruta crítica (CPM, Critical Path Method), Cadena crítica.

2. Elige una herramienta de programación.
MS Project si si si si .... :) ....  existen otras como OpenProject, etc.

3. Define el plan para la creación del modelo del cronograma.
El PM (Project Manager) en conjunto con el equipo y los interesados clave definen dicho plan; lo hacemos en conjunto para que todos tengamos las reglas claras.  Dentro de las definiciones puede estar hacer planeación rolling wave; es decir, no tengo el detalle de todo lo que haré en 1 año pero sí tengo el detalle de los próximos 5 meses (ojo, esto no quiere decir que no tiene idea que debes hacer después del 5to mes, sí tienes que conocer las actividades macro del mes 6 en adelante .....)

 el detalle que sí tienes de los próximos 5 meses lo dejas consignado, más adelante a medida que vamos avanzando en el proyecto podrás ir construyendo el detalle de las actividades macro.

4. ID del modelo de programación
Claro, cada modelo debe tener un método de identificación único.

5. Versión del modelo de programación
Claro, cada instancia del modelo debe tener un identificador único. Ej PROYECTO-DRED-VersionXXX-ddmmaaaa

6. Calendarios y períodos laborales
Por favor no olvides esto, y si tu proyecto se extiende no olvides ingresar los nuevos días festivos !!! que horror cuando un PM se compromete con una fecha y resulta oups! se le olvidó meter los festivos al cronograma.  

Práctica personal siempre tengo los festivos de al menos 1 año más allá de la fecha fin del proyecto original (sí, suena exagerado, pero ya me ha pasado que un proyecto se extienda con uno y otro y otro control de cambios).  

    Carnaval de barranquilla - Monocuco
  • Define los días laborales de la semana (que tal una empresa que sólo trabajara de lunes a miércoles? .. yo kiero ;( ...).
    Ej: lun - vie
  • Define los turnos por día (ej personal de aseo de la fábrica tiene dos turnos: turno A de 6am - 2pm; turno B 2pm - 10pm)
    Ej: 8am - 12pm y 2pm - 6pm
  • Define el número de horas a trabajar cada día
    Ej. 8h diarias
  • Define los períodos no laborales.  Puede ser por beneficios empresariales donde en tiempo de feria no se trabaja (saludes a los barranquilleros y su carnaval).
    Ej. semana santa, carnaval de barranquilla
  • Define los períodos de sobrecarga.  Sí, puedes saber con antelación cuando tendrás que trasnochar :(  por ejemplo, durante una puesta en producción de fin de semana; aquí cuando tu equipo pregunta cuánto trabajarán tu frase favorita es: hasta que quede bien.
Resultado de imagen para overtime work

Práctica personal creo un calendario que cubre 3 años y lo llamo como mi país (ej. COLOMBIA 2015 - 2018) que me servirá de plantilla para todos mis proyectos, luego en MS Project en un nuevo proyecto simplemente lo importo y lo defino como el default.

Para proyectos multinacionales, deberás también tener el calendario de los demás países de forma que puedas asignar calendarios a cada tarea o recurso según requieras.  Confuso? bueno, explicaré con plastilina:  supongamos que tengo una tarea de "Montaje en ambiente de producción" y como debe hacerse en Perú, pues a esta tarea como tal le asigno el calendario de Perú.  (en MS Project : Información de la tarea -> Avanzado -> Calendario).  Ahora supongamos que tenemos una tarea que desarrollan en conjunto los equipos de ambos países ej. "Validación del documento" aquí necesitas tener en cuenta los días festivos de ambos países, por ello es bueno que le asignes el calendario que corresponde a cada uno de los recursos (en MS Project: Vista Hoja de Recursos -> Calendario base); de esta manera Project calcula de manera automática el día laboral más cercano de todos los recursos asignados a la tarea.

7. Ciclo de actualización del proyecto
Es el intervalo de tiempo en que se actualiza el status del proyecto.  Depende del tipo de proyecto si es de manufactura podría requerirse a diario, pero si es de construcción podría ser por semanas o meses; también depende del momento que atraviese el proyecto.

Ej: el informe de avance del cronograma estará disponible en el repositorio los lunes a las 4pm, y se realizará presentación los martes a las 8:00am en comité.

Así mismo debes también tener clara la escala de tiempo a usar: meses, dias, horas.

8. Estructura de codificación de las actividades e hitos
Un buen sistema de identificación brinda un mejor entendimiento de cómo encaja una actividad enla visión global del proyecto.  Supongamos que tu cronograma tiene hitos, unos son entregables contractuales de tus proveedores por ej manual de usuario, y otros simplemente los usas como entes de control de momentos en tu proyecto ej desarrollos terminados...  como los distinguirías? y si son 10 proveedores como sabes qué entregable es de cual sin tener que mirar los recursos o las actividades predecesoras? ahjá...  un sistema de codificación sencillo:  HITO: Finalización de capacitaciones...  éste sería un hito de un momento del proyecto; pero HITO: IBM.Entregable.ManualUsuario.. ya sabes qué es y de quien cierto?.

Similar ocurre con tus actividades.. supongamos que estamos desarrollando software y tienes 7 módulos con las mismas tareas internas de desarrollo, puesta en ambiente de pruebas, pruebas, etc.  Para identificarlas podrías decir que 1-Desarrollo será el módulo de campañas, 2-Desarrollo el de finanzas; o puedes usar abreviaturas CMPÑ-Desarrollo, FNZS-Desarrollo.  Esto es lo que debes dejar consignado para que todos sepan y entiendan; y los que nó pues los mandas a leer el documento de plan de gestión de modelo del cronograma para que terminen de aterrizar en el proyecto.

La codificación te sirve para identificar fases o subfases del proyecto, lugar del trabajo, eventos, persona u organización responsable, etc.

Y.................................... el código debe ser único.

9. Indicadores de rendimiento
Estos indicadores le dicen a los interesados cómo va el proyecto.  Uno de los indicadores es el Método de valor ganado.  Para saber más revisa "Practice Standard forEarned Value Management" del PMI o ten paciencia a que saque el post correspondiente.

Resultado de imagen para cara lengua afuera gif10. Modelo maestro de cronograma
Imagina tener 6 frentes o áreas involucradas en un proyecto donde cada uno tiene un cronograma de 4000 lineas; no es práctico tener todo esto en un único cronograma consolidado (además que su majestad MS Project empieza a hacer de las suyas y sacarte la lengua).

Aquí es mejor no pelear y saber darle la vuelta a la situación creando un cronograma maestro conteniendo los demás subproyectos.  Puedes usar la opción de subproyecto de MS Project (aunque a veces sigue sacando la lengua), otra opción puede ser dejar en el cronograma maestro sólo las actividades grandes como: Desarrollo y que en el detallado si existan las tareas de Creación de BD, Creación de SP, Creación de ETLs, etc; así deberás registrar el avance sólo de la actividad padres.

................. Continúa leyendo la parte 2, deja un comentario y la proxima entrega te informare.......











Etiquetas: , ,