LA CRISIS DEL SOFTWARE
La crisis del
software se refiere a un conjunto de problemas encontrados en el desarrollo
del software de computadoras. Los problemas no están limitados al software que
“no funciona adecuadamente”. Sino que la crisis del software abarca los
problemas asociados con cómo desarrollar el software, cómo mantener un volumen
creciente de software existente y cómo podemos esperar satisfacer la demanda
creciente de software. Aunque la referencia a una “crisis del software” puede
ser criticada por ser algo melodramático, la frase sirve como un propósito útil
para alumbrar los problemas reales encontrados en todas las áreas de desarrollo
del software.
Básicamente, la crisis del software se
refiere a la dificultad en escribir programas libres de defectos, fácilmente
comprensibles, y que sean verificables. Las causas son, entre otras, la
complejidad que supone la tarea de programar,
y los cambios a los que se tiene que ver sometido un programa para ser
continuamente adaptado a las necesidades de los usuarios.
Además, no existen todavía herramientas
que permitan estimar de una manera exacta, antes de comenzar el proyecto, cuál
es el esfuerzo que se necesitará para desarrollar un programa. Este hecho provoca que la
mayoría de las veces no sea posible estimar cuánto tiempo llevará un proyecto,
ni cuánto personal será necesario. Cuando se fijan plazos normalmente no se
cumplen por este hecho. Del mismo modo, en muchas ocasiones el personal
asignado a un proyecto se incrementa con la esperanza de disminuir el plazo de
ejecución.
Englobó a una serie de sucesos que se
venían observando en los proyectos de desarrollo de software:
·
Los proyectos no terminaban en plazo.
·
Los proyectos no se ajustaban al presupuesto inicial.
·
Baja calidad del software generado.
·
Software que no cumplía las
especificaciones.
·
Código inmantenible que dificultaba la
gestión y evolución del proyecto.
Aunque se han propuesto diversas metodologías para intentar subsanar los problemas
mencionados, lo cierto es que todavía hoy no existe ningún método que haya
permitido estimar de manera fiable el coste y duración de un proyecto antes de
su comienzo.
Problemas
La crisis del software se caracteriza por muchos
problemas, pero los responsables del desarrollo del software se concentran
sobre los aspectos de “fondo”: (1) la planificación y estimación de coste es
frecuentemente muy imprecisa; (2) la “productividad” de la gente del software
no se corresponde con la demanda de sus servicios, y (3) la calidad del
software no llega a ser a veces ni adecuada. Se ha sufrido el sobrepasar los
costes en un orden de magnitud. Se ha errado en la planificación en meses o
años. Se ha hecho muy poco para mejorar la productividad de los trabajadores en
software. Los errores en los nuevos programas producen en los clientes
insatisfacción y falta de confianza. Tales problemas son sólo las
manifestaciones más visibles de otras dificultades del software:
• No tenemos
tiempo de recoger datos sobre el proceso de desarrollo del software. Sin datos
históricos como guía, la estimación no ha sido buena y los resultados predichos
muy pobres. Sin una indicación sólida de productividad, no podemos evaluar con
precisión la eficacia de las nuevas herramientas, técnicas o estándares.
• La insatisfacción del cliente con el sistema
“terminado” se produce demasiado frecuentemente. Los proyectos de desarrollo
del software se acometen frecuentemente con sólo una vaga indicación de los
requerimientos del cliente. Normalmente la comunicación entre el cliente y el
que desarrolla el software es muy escasa.
• La calidad del
software es normalmente cuestionable. Hemos empezado a comprender recientemente
la importancia de la prueba sistemática y técnicamente completa del software.
Están comenzando a emerger conceptos cuantitativos sólidos sobre la fiabilidad
del software y garantías de calidad [IAN84].
• El software
existente puede ser muy difícil de mantener. La tarea de mantenimiento del
software se lleva la mayor parte de todos los dólares invertidos en software.
El mantenimiento no se ha considerado un criterio importante en la aceptación
del software.
Hemos presentado primero las malas noticias. Ahora las
buenas: todos los problemas descritos anteriormente pueden corregirse. La clave
está en dar un enfoque de ingeniería al desarrollo del software, junto con la
mejora continua de técnicas y herramientas.
Permanecerá un problema (podríamos llamarlo un hecho de
la vida). El software absorberá mayores y mayores porcentajes del coste de desarrollo
global de los sistemas basados en computadoras. En los Estados Unidos gastamos
cerca de 50 billones de dólares cada año en el desarrollo, compra y
mantenimiento de software de computadora. Nos hemos tomado más en serio los
problemas asociados con el desarrollo del software.
https://www.google.com.co/url?sa=t&rct=j&q=&esrc=s&source=web&cd=7&cad=rja&ved=0CE0QFjAG&url=http%3A%2F%2Fwww.sites.upiicsa.ipn.mx%2Fpolilibros%2Fportal%2FPolilibros%2FP_terminados%2FIngenieria_de_software%2Fpolilibro%2Fa_fondo%2Fcrisis2_1.doc&ei=xPo7UfH7OInm9ASp_YD4BQ&usg=AFQjCNFhjifeFNF1XRhpnXdyx_tAlLB6Fw&sig2=SDPVIF58UrYizZyhdXzWxg
No hay comentarios:
Publicar un comentario