Reduce la Complejidad de tus Proyectos de Software

Publicado en

La disciplina de dirección de proyectos es compleja. Involucra nueve áreas de conocimiento que conforman cinco grupos de procesos. El gerente de proyecto tiene que entender los principios y dinámicas que se dan al trabajar en grupo, el ciclo de vida de las expectativas y cómo administrarlo adecuadamente; además de entender los aspectos técnicos del proyecto y del negocio, también debe tener excelentes habilidades interpersonales, particularmente la de ser un buen comunicador. Evidentemente para una sola persona tener un buen nivel de dominio de todos esos temas es muy difícil.

No somos pocos los que hemos sido parte o hemos presenciado los grandes desafíos que representa el llevar a cabo exitósamente un proyecto de desarrollo de software, donde los módulos o programas hagan todo lo que se espera de ellos de forma confiable, y además se deje satisfechos a todos los actores. En esta entrega quiero compartir contigo algunos consejos para reducir la complejidad de tu proyecto de desarrollo de software, espero que te sean de utilidad.

1. Funcionalidad

Ya sea que se busque mejorar una versión existente de un programa o aplicación, o que se trate de desarrollar una nueva, la recomendación es “menos es mejor”. Entre mayor funcionalidad se incluya en el producto final, el proyecto será más complejo, habrá que tener en el radar mayor número de requerimientos, las pruebas y los casos de prueba crecerán de manera proporcional a las funciones incluidas. Aplicando algunas técnicas ágiles, se puede trabajar muy de cerca con el cliente para poder identificar toda la funcionalidad requerida y hacer una priorización que nos permita entregar funcionalidad básica y a partir de ahí ir añadiendo mayor nivel de sofisticación en versiones subsecuentes.

2. Entregables

Nuevamente, cuando hablamos de los distintos productos que componen el proyecto, debemos tratar de reducir su número para poder contener la complejidad del proyecto. Normalmente, si el número de entregables es mayor, se requerirán múltiples procesos técnicos para producirlos, lo que sin lugar a dudas implica una mayor complejidad. Así que trata de reducir al máximo los entregables de tu proyecto, evidentemente este punto está de alguna forma relacionado con el anterior.

3. Clientes y actores del proyecto

Yo soy un creyente impulsor del proyecto uni-cliente. Aunque esto no siempre es posible, es importante tener en cuenta que entre más gente participe como cliente o actor clave del proyecto, los requerimientos y el enfoque de solución tendrá un número mayor de “puertas” que negociar. La dificultad de poner de acuerdo, administrar las expectativas y comunicar a un grupo de personas respecto a lo que el proyecto (y el producto del proyecto) pretende lograr, crece de manera exponencial; para ello, basta aplicar la fórmula para calcular los canales de comunicación que propone la Guía PMBOK®:

Canales de comunicación = n*(n-1/2)

donde n es igual al número de participantes en el proyecto.

Por eso, es muy recomendable tratar de “negociar” el que haya un grupo reducido de clientes o patrocinadores del proyecto.

4. Duración

Nadie, al menos hasta donde yo sé, tiene una bola de cristal que le diga lo que va a pasar en el futuro. Entre más lejana esté la fecha de término de tu proyecto, más compleja será su administración. Esto es particularmente cierto para la administración de riesgos, pues será más difícil cumplir con las fechas esperadas, y habrá mayor tiempo para que las expectativas crezcan o para que al cliente o a nosotros se nos ocurran mayor funcionalidad. Es así que establecer la duración de tu proyecto en periodos de 4 a 6 meses es una buena idea. Por supuesto que cumplir con los puntos anteriores, sobre todo el 1 y 2 contribuirá a facilitar este punto de manera directa.

5. Tamaño

En términos generales, entre más grande el proyecto, típicamente serán necesarias más interfaces, mayor coordinación, más integrantes en el equipo, y muy probablemente el número de incidentes con los que tendremos que lidiar irán en incremento, tomando más tiempo en la resolución de conflictos. Por ello, en la medida de lo posible será necesario establecer y acotar el alcance del proyecto de manera que cada versión del producto a generar involucre un número reducido de participantes, funciones y entregables.

Habilidades del gerente de proyecto

Aplicar los consejos aquí asentados no es tarea fácil. Sobre todo cuando hay una marcada tendencia en las corporaciones a conducir proyectos que abarcan más áreas funcionales y que quieren dar respuesta a problemas más grandes. Por eso las habilidades del gerente de proyecto para negociar y persuadir al cliente de las ventajas de aplicar, al menos dos, de estos cinco consejos, pueden representar la diferencia para estar más cerca de los objetivos de tiempo, costo, calidad, alcance y cumplimiento de expectativas del proyecto. No olvidemos que, al final del camino... no hay proyecto perfecto.

Bio

Jorge Valdés Garciatorres es Socio Director de la firma de consultoría de negocios TenStep Latinoamérica y Vicepresidente de Desarrollo Profesional en el PMI Capítulo México, es miembro de Toast Masters International en donde es Vicepresidente de Relaciones Públicas en el Club BIAM. Cuenta con más de 20 años de experiencia y tiene las certificaciones de Profesional en Dirección de Proyectos (PMP), la de ITIL Foundations por EXIN y la de Competent Communicator por TMI.