Pages Menu
Categories Menu

Posted by on Ene 12, 2012 in buenas prácticas | 5 comments

¿Qué es lo más determinante para el éxito, o fracaso, de un proyecto? Las personas

Si hubiese que elegir, de entre las claves que determinan el éxito (o fracaso) de un proyecto software, aquella sobre la que existe más consenso del impacto que tiene, sin duda, yo me aventuraría a decir que esta sería el papel que juegan “las personas”.

En mayor o menor media, prácticamente todo aquel que ha estudiado el éxito o fracaso de un proyecto software ha destacado el papel que las personas, el equipo de desarrollo, juegan en el mismo. Concluyendo, en la mayoría de ocasiones, con que las personas son el factor más determinante.

Como decía Glass, no hay que olvidar que las personas son las que hacen el software. Las herramientas ayudan, las técnicas también, los procesos, etc. Pero sobre todo esto están las personas. “Las personas son la clave del éxito”, que dijera Davis en su genial libro. El equipo humano que, como decía Cockburn, es el componente no lineal de primer orden en el desarrollo software. Decía McConnell que las personas son lo que tiene más potencial para recortar el tiempo de un proyecto, y que quienes han trabajo en software “han observado las enormes diferencias que hay en los resultados que producen entre desarrolladores medios, mediocres y geniales”.

Después de analizar 69 proyectos Boehm comprobó que los mejores equipos de desarrolladores eran hasta 4 veces más productivos que los peores. Por su parte DeMarco y Lister, en su Peopleware, identifican diferencias de productividad de 5.6 a 1, extraídas de un estudio con 166 profesionales de 18 organizaciones. En la NASA**, observaron diferencias de hasta 3 a 1 en productividad entre sus diferentes proyectos. E incluso mucho antes, en el 74, había ya estudios* que habían observado diferencias de 2.6 a 1 en equipos a la hora de realizar las mismas tareas de desarrollo.

Pero aunque para algunos esto esté muy claro, no siempre es así en todos los proyectos.  Recuerdo que hace años trabajaba en una empresa que desarrollaba productos software… en la que no pensaban exactamente así. Allí se pensaba que los desarrolladores no eran lo más determinante, eran “piezas” intercambiables. Que lo determinante era la parte comercial y la funcional, los técnicos eran una “commodity”. De ahí que gran parte del equipo técnico no tenía el perfil, la cualificación y estudios acordes para desarrollar el software que se les encomendaba, por cierto, una aplicación bastante grande. Los jefes de proyecto, y directores técnicos, jamás habían estudiado alguna carrera técnica. Lo curioso era que, aunque todo el mundo veía los grandes problemas de calidad software y de gestión del proyecto, nadie parecía ver la principal causa de los mismos.

La gente que participa en un desarrollo software, no son como obreros en una cadena de montaje. No son tan fácilmente intercambiables, y el trabajo no es tan repetible como en estos otros trabajos. Más aún si no se ha implantado una calidad software de verdad (no sólo una certificación). Os recomiendo aquí leer el post de fabricar software no es lo mismo que fabricar coches o construir casas.

Referencias

* Weinberg, Gerald M., and Edward L. Schulman. 1974. «Goals and Performance in Computer Programming.» Human Factors, vol. 16, no. 1 (February): 70-77.

** Jon D. Valett, Frank E. McGarry: A summary of software measurement experiences in the Software Engineering Laboratory. Journal of Systems and Software 9(2): 137-148 (1989)

Javier Garzás

Javier Garzás

Ph.D. en informática, Postdoctorado en la Carnegie Mellon (EE.UU) e Ingeniero en Informática.

Primera vez que me tocó hacer una gestión Ágil en una empresa... año 2001. Desde entonces he trabajado en, o para, más de 90. Y he formado a más de 2000 alumnos.

También soy profe de la Universidad Rey Juan Carlos.
Javier Garzás

5 Comments

  1. Tan solo comentar que el desarrollo de software de calidad debe también implementar un proceso de QA durante todo el desarrollo del mismo y un proceso de QC al finalizarlo. Estos dos procesos deben ajustarse a alguna metodología (estándar o propia) y es recomendable que sean servicios externalizados, sobre todo en el segundo caso. Como Consultor Senior de Calidad de Software y Jefe de proyecto, además de especialista en sistemas de gestión de calidad de software, he visto proyectos software de multinacionales venirse a bajo al entrar en un proceso de QC, donde personal especializado desarrollan a partir de un proceso de ingeniería inversa, un plan de pruebas funcional (manual y/o automatizado) y no funcional (rendimiento, seguridad, accesibilidad, análisis estático de código, etc.)

    Como conclusión, decir que es necesario pasar un proceso de Control de Calidad al finalizar el desarrollo y que la organización desarrolladora implemente un proceso de aseguramiento de la calidad durante el desarrollo.
    LA CALIDAD DA VALOR AL PRODUCTO SOFTWARE DESARROLLADO.

  2. Javier, creo que esta regla que puede ser crítica en el desarrollo de un producto de software, es también fundamental en el desarrollo de cualquier proyecto,las personas somos la clave y somos las que convertimos los proyectos en excelentes o en mediocres. Ahora con un equipo de trabajo estamos haciendo un ejercicio sobre una nueva aplicación http://jalinchinujalinchinu.wordpress.com/ y cada vez tengo más claro que su éxito depende de los miembros del equipo, sus ganas, su creatividad, su búsqueda de la excelencia e ilusión para llevarlo a buen puerto.

  3. Cierto, y eso sin olvidar, que aun siendo lo más determinante, no es la única clave del éxito 😉

  4. Creo que esta visión sobre las personas es primordial, o casi diría que indispensable para que un proyecto software funcione con una calidad mínima. Pienso que en el futuro, cuando miremos los libros de historia informática y veamos las aberraciones que se están cometiendo con las personas, se van a llevar las manos a la cabeza. Recuerdo en un curso, a una compañera ucraniana, que dijo que ella veía inviable un producto de calidad, cuando todas (y donde digo todas, es todas) las personas de su proyecto estaban muy disgustadas con las jornadas leoninas que ‘les hacían’ trabajar a parte de la alta rotación en la empresa, diciendo que en su país, eso no había visto.

    En fin, un gran post, espero que cunda el ejemplo, porque nuestro futuro depende de ello,

  5. buenos días desde Venezuela…vaya me quedo con la boca abierta de todo el material importante que hay aquí en este post…

Trackbacks/Pingbacks

  1. El crece pelo universal, la dieta milagro, inglés con 10 palabras y el Ágil método repara todo - Javier Garzás, sobre calidad software y otros temas relacionados - [...] – humano (es decir, el más adecuado a su desarrollo – negocio, te recomiendo el post de lo más…

Post a Reply

Tu dirección de correo electrónico no será publicada.

Share This