Muchos pueden ser los factores por que los proyectos de desarrollo de software actualmente puedan fracasar, este articulo explica uno de los principales problemas, no solo en la industria de software, es un problema generalizado en muchos sectores.
¿Das un buen seguimiento a las tareas, conviertes toda la carta de santa claus (whishlist) de tu cliente en requerimientos?
Les ha pasado que están en alguna reunión con un posible cliente donde la primer frase que dijo fue: “el sistema se ocupará a nivel nacional son bastantes usuarios” una frase que en el momento que el área de ventas la escucho probablemente pensó “siempre dicen lo mismo los clientes” el área técnica pensó “pues no debería ser ningún problema” nadie indago más en ese punto que para el cliente era un factor de éxito de su proyecto, de esa idea innovadora para su empresa.
Nadie le tomo importancia, nadie lo apunto en ningún lugar para tenerlo como un requerimiento principal (no funcional) del cliente, pues bien se realiza la propuesta del proyecto, se acepta el proyecto, se inicia el desarrollo del proyecto, se termina, se hacen N cantidad de iteraciones (semanas o meses) y finalmente lo terminas, pero un pequeño detalle, nadie apunto esa TAREA y en ningún momento del proyecto se consideró “el sistema se ocupará a nivel nacional son bastantes usuarios” peor aún ni siquiera se cuenta con la infraestructura (servidores, red, balanceadores, clusters, etc) para que el proyecto funcione a nivel nacional, y si existiera esa infraestructura, nadie puede asegurar que esto vaya a funcionar, porque no se probó el sistema con tal carga de usuarios.
Este es un ejemplo probablemente exagerado (esperemos que así sea para la mayoría) pero el no tener un seguimiento (tracking, trazabilidad) de todos los requerimientos desde el análisis hasta la puesta en producción e ir dejando tareas, pendientes, cambios en el camino sin darles importancia, hacen que las relaciones con los clientes se rompan muy fácilmente sobre todo en la industria de software, donde muchos proveedores aplican ahora la de «pues vendemos un muy buen proyecto y vamonos consiguiendo mas clientes» (pega y corre).
¿Qué puedo hacer para evitar al máximo que esto pase como parte del equipo de desarrollo (consultor, developer, team leader) ?
1) Define un proceso claro, ligero (no definas un WORD de 10 paginas) que permitan convertir el 100% de los requerimientos del cliente en tareas claras para poder darles seguimiento, puedes usar herramientas de gestión para anotarlas y no perderlas nunca de vista hasta su finalización (BUGTRACKER, JIRA, etc) y que al quedar registradas, no importa que JUAN PEREZ que ya no está en la empresa haya tomado el requerimiento, si la tarea fue creada con un buen nivel de detalle y absolutamente clara cualquier otro integrante del equipo podría darle el seguimiento hasta su término y verificación.
2) El cliente siempre te pedirá cambios durante la ejecución del proyecto, ¿No le digas que no? Solo registra esos cambios y negocia (tiempo, costo) si estos pueden ser parte de las entregas a corto o largo plazo (prioriza) pero no dejes de anotar en tu herramienta de gestión todos estos cambios.
3) Cualquier error que sea encontrado por tu equipo de trabajo o por el cliente también regístralo y lleva un seguimiento hasta que esté completamente solucionado.
Todos estos puntos deben estar totalmente comunicados a tu cliente y él debe siempre indicar en qué orden de prioridad se tienen que atender, enseña a tu equipo de trabajo o si eres tú solo (hombre orquesta) a poner el grado de detalle a cada tarea lo suficiente para que sea clara y que contenga los lineamientos de aceptación que determinen que esa tarea está terminada y será aprobada por el cliente.
Estas son algunas de las prácticas de una administración efectiva de proyectos que bien puedes usar con metodologías tradicionales de desarrollo de software o con metodologías ágiles.
http://www.tecgurus.net/cursos/desarrollo-agil-en-practica/
Gerardo Guerrero
CEO