¿Por Qué Fracasan los Proyectos de Software?; Un Enfoque Organizacional J. Jesús María Zavala Ruiz
Congreso Nacional de Software Libre 2004
¿Por Qué Fracasan los Proyectos de Software?; Un Enfoque Organizacional
J. Jesús María Zavala Ruiz
Postgrado en Estudios Organizacionales
Universidad Autónoma Metropolitana-Iztapalapa
Mexico, D.F.
Tel. +52 (55) 5841-9218
e-mail:
[email protected]
Abstract
Los proyectos de software son proyectos que tienen
características muy particulares: sus entregables son
digitales (programas de cómputo, archivos fuente,
diagramas, modelos, manuales,
etc. digitales),
requieren mucha creatividad en la mayoría de sus fases,
con tasas de fracaso de más del 70% (según el Standish
Group). Los proyectos representan el modelado parcial
de la organización, son de gran complejidad, son muy
costosos, son manejados con poca experiencia
administrativa y son de gran importancia para las
organizaciones en la sociedad postindustrial.
En este ensayo se explora el panorama de los proyectos
de software, su importancia en la sociedad y en la
organización. Posteriormente, se hace un análisis de los
factores que determinan el éxito o fracaso de los
proyectos de software. Finalmente se analizan las
causas de la falla de proyectos desde la perspectiva de
los estudios organizacionales y se propone un enfoque
para
la
administración de proyectos, la ingeniería de software
y el aprendizaje organizacional.
fracaso mediante
reducir esa
tasa de
Keywords: software projects, project failure, project
success, software crisis, organizational approach,
software
management,
learning, systems analysis, unified
organizational
engineering,
project
language, UML, organizational studies,
modeling
organization theory, organizational studies
Keywords: proyectos de software, falla de proyectos,
exito en proyectos, crisis del software, enfoque
organizacional, ingeniería de software, administración
de proyectos, aprendizaje organizacional, analisis de
sistemas, lenguaje de modelado unificado, UML,
estudios organizacionales, teoria de la organización,
estudios organziacionales
Introducción
Este ensayo aborda el problema más importante de la
industria de software y por consecuencia, de las
organizaciones: el fracaso de los proyectos de software.
Se abordan los conceptos mínimos para aquellos
lectores que no son conocedores del tema y se
desarrolla una propuesta teórica sobre el fracaso de los
proyectos de software. La importancia del software es
tal que hoy prácticamente todas las organizaciones
dependen en mayor o menor medida del software para
operar. El software es cada vez más importante en la
vida de pública y privada de todos. El software está en
las computadoras, en el horno de microondas, en los
juguetes, en todos los aparatos y equipos modernos. El
comercio electrónico será pleno en un futuro muy
cercano. El desarrollo de software de hoy se puede
Congreso Nacional de Software Libre 2004
1
¿Por Qué Fracasan los Proyectos de Software?; Un Enfoque Organizacional J. Jesús María Zavala Ruiz
caracterizar más como un actividad artesanal que como
una disciplina de ingeniería.
Conceptos básicos
Antes que nada se van a aclarar algunas definiciones
clave para este ensayo.
Datos “son los hechos brutos acerca de la organización
y sus transacciones de negocios. La mayoría de los
datos tienen poco significado uso por sí mismos”.
Información “son los datos que han sido refinados y
organizados mediante el procesamiento y con un
sentido determinado”. Conocimiento “es la utilización
completa de información y datos, junto con el potencial
de las habilidades, competencias, ideas, intuiciones,
compromisos y motivaciones de la gente” (Según Grey,
citado por [Zavala 2003]. Conocimiento corporativo
“es el cuerpo colectivo de experiencias y entendimiento
de los procesos de una organización para administrar
situaciones planeadas y no planeadas” [op.cit.].
información,
firmware, gente,
Sistema es “un grupo integrado de elementos para
cumplir un objetivo definido. Estos incluyen hardware,
software,
técnicas,
facilidades, servicios y otros elementos de soporte”
([INCOSE 1998], citado por [Zavala 2003]). Más
específicamente, un sistema de información (SI) es “el
conjunto de personal, datos, procesos, interfases, redes
y tecnología que interactúan con propósito de soportar
y mejorar las operaciones diarias de un negocio”
[ídem]. Un sistema de cómputo o aplicación de
cómputo “es una solución automatizada para uno o más
problemas y necesidades de negocios” [op.cit.]. Como
puede apreciarse, en un sistema de información hay
uno o más sistemas de cómputo.
Tecnología de Información (Information Technology) o
TI “es un término contemporáneo que describe la
combinación de la tecnología de cómputo (hardware y
y
que
integran
los
eléctricos
total de
los programas de
software) con la tecnología de telecomunicaciones
(redes de datos, imágenes y voz)” [ídem]. Hardware
son
componentes mecánicos, magnéticos,
electrónicos,
una
computadora1. Según la [IEEE 1990] el software es “la
suma
cómputo,
procedimientos, reglas y documentación y datos
asociados que forman parte de las operaciones de un
sistema de cómputo”. El software “es aquello invisible
y etéreo que hay en cada sistema de información”
[Zavala 2003b]. Un producto de software es “un
producto diseñado para entregarse a un usuario,
comúnmente se le conoce como paquete, aplicación o
sistema de cómputo” [ídem].
su puesta
software, desde
Ciclo de vida del software es modelo que define el
proceso de desarrollo del
su
en operación y
concepción hasta
mantenimiento. Proceso de desarrollo es el modelo
mediante el cual de define qué se debe realizar, quién
las debe hacer, cuando deben comenzar y terminar y
finalmente cómo alcanzar un determinado objetivo.
Estos dos modelos son fundamentales ya que de ellos
dependerán los enfoques que se abordarán para resolver
la complejidad de este proceso [Zavala 2003].
es
solo
las organizaciones
Como podemos estimar, el desarrollo de software que
requieren
factible
desarrollarlo mediante una organización. Desarrollador
es el profesional de las ciencias de la computación2 que
se aboca a desarrollar software. Ingeniero de software
es el profesional del desarrollador de software que
abarca distintos
roles como analista, arquitecto,
1 http://www.thefreedictionary.com/computer%20hardware
2 Al respecto Peter Denning hace un análisis muy exhaustivo sobre
las características de la, ahora llamada, Profesión en Tecnologías de
Información y el reto del profesional ante la sociedad [Denning
2001].
Congreso Nacional de Software Libre 2004
2
¿Por Qué Fracasan los Proyectos de Software?; Un Enfoque Organizacional J. Jesús María Zavala Ruiz
programador, probador, documentador, administrador
de producto y líder de proyecto, entre otros.
Importancia del software
tan elemental como
Hoy en día, el software forma parte de nuestra vida
cotidiana e influye sobre muchas de las actividades que
realizamos. Prácticamente hoy en día nadie, en el
mundo permanece inmune al software. El software no
se encuentra únicamente en las computadoras de
nuestras casas y oficinas. De hecho, la calefacción, el
horno de la cocina, el despertador digital, el equipo de
audio, la televisión, los juguetes, los aviones, los
ferrocarriles y prácticamente todo lo que se pueda
imaginar,
lavadora, ya
incorporan software que asegura su funcionamiento. La
considerable
software está en
innumerables productos de todo tipo y además, ya
puede considerarse un motor económico de creciente
importancia. No
de
telecomunicaciones modernas que utilizan sistemas de
telecomunicación
juega un papel
importante, sino que se estos sistemas controlados por
software
la
disponibilidad de servicios de alta calidad en plazos de
tiempo y con un costo razonables.
capaces de hacer
importancia del
el
software
realidad
son
la
solo
en
las
redes
El software no se elabora como cualquier producto
industrial, no se construye, se desarrolla e involucra
intensamente a la gente al ser una actividad mental y
creativa [Zavala 2003b]. El software es complejo
sencillamente porque está modelando la operación de la
organización, y por lo mismo, se vuelve más complejo
en
la organización. La
tanto más compleja es
complejidad es precisamente
la propiedad más
importante del software. Por otro lado, el software nace
a partir de la organización, evoluciona con ella y muere
con ella. El software muere cuando ya no se le da
mantenimiento. ¿Pero qué función tiene el software en
la organización? Utilizando una analogía, se puede
decir que el software es “lo invisible e inmaterial, la
fuerza o la energía” que hace que las computadoras
automaticen la operación de la organización. He aquí el
poder del software: la automatización.
En menos de 25 años, entre la aparición de las primeras
computadoras personales y hoy, ha tenido lugar la
explosión de la industria del hardware. Según [Del
Toro 200
Comentarios de: ¿Por qué fallan los proyectos de software?; Un enfoque organizacional (0)
No hay comentarios