La mayoría de los proyectos de software fallan por completo o fallas parciales porque un pequeño número de proyectos cumple con todos sus requisitos. Estos requisitos pueden ser los objetivos de costo, cronograma, calidad u requisitos. Según muchos estudios, la tasa de fracaso de los proyectos de software está entre 50% y 80%. Este ensayo es una compilación de causas de falla de proyectos de desarrollo de software; Este ensayo resume varias áreas que juegan un papel vital en la falla del proyecto de software.

Entonces, ¿cuál es realmente la razón del fracaso del proyecto de software? El hecho triste es que los proyectos de software fallan porque no reconocemos que los buenos principios de ingeniería se deben aplicar a los proyectos de software tal como lo son a la construcción de edificios de oficinas. Intentamos defendernos diciendo que la construcción de software es “diferente”.

Una de las quejas más serias contra la falla del software es la incapacidad

para estimar con precisión aceptable el costo, los recursos y el cronograma necesarios

para un proyecto de software. Los métodos de evaluación convencionales siempre han producido

resultados positivos que contribuyen al costo demasiado conocido infestado y

calendario de deslizamiento.

En los últimos 20 años se han utilizado muchas técnicas de estimación de costos y cronogramas.

usado con sensación mixta debido a restricciones de los modelos de evaluación. La mayor

parte del fracaso de las estimaciones puede deberse a una falta de comprensión de la

proceso de desarrollo de software y el efecto de ese método utilizado en el proyecto

plan, cronograma y costos estimados.

Estudios de casos de fallas

A continuación se presentan algunos de los estudios de caso considerados que se analizarán para obtener

Las principales razones de falla del sistema de software.

La Universidad de Northumbria desarrolló un software de contabilidad para administrar su día a día.

negocio. El proyecto no pudo obtener los resultados deseados y no pudo

cumplir con las fechas límite. Las investigaciones mostraron que la gestión básica del proyecto

No se siguieron los procedimientos. Este estudio de caso se menciona en este ensayo en

diferentes puntos donde sea necesario. [1]

Filial tailandesa (SMTL) de una empresa multinacional con sede en Hong Kong (SMHK)

dedicada a la fabricación de equipos electrónicos. Implementaron un

paquete de software integrado; lo cual fue un fracaso en varios factores. Estas

los factores estaban principalmente relacionados con la gestión. Como un mal ajuste entre el negocio

supuestos de proceso inscritos en el software y los procesos comerciales en SMTL,

liderazgo deficiente en diferentes niveles, diferencias culturales, organizacionales

medio ambiente y mala gestión de recursos humanos.

St John’s Hospital es un Hospital General del Distrito que brinda servicios médicos y

servicios de enfermería, que incluyen cirugía general y medicina.

los servicios están respaldados por diagnóstico por imagen, laboratorio, ambulancia, farmacia

y servicios de terapia, todos en el sitio. Como el hospital principal en un turista

área, trata con muchos visitantes en la temporada de vacaciones, generando una gran

cantidad de admisiones no reservadas funciona.

Gestión de software y liderazgo

Se ha demostrado repetidamente que el liderazgo efectivo es esencial para la implementación exitosa de TI (Klenke, 1994). Un líder también debe tener sensibilidad cultural, habilidades de comunicación, creatividad, capacidad de delegar y la capacidad de desarrollar y retener recursos humanos (Luthans, 1994). El gerente de software en (SMHK) era occidental, mientras que los gerentes inferiores eran orientales. Así que siempre hubo un choque cultural. Jack (Gerente) siempre intenta introducir pensamientos creativos. Y la mayoría de las veces la gerencia inferior no podía hacerlas. Por lo tanto, hubo un choque todo el tiempo.

Los empleados también sintieron que la gerencia casi nunca “escuchó” sus preocupaciones

o intentó dirigirse a ellos. En consecuencia, muchos empleados estaban ansiosos por irse

la empresa, y lo hizo tan pronto como encontraron oportunidades alternativas en otros

compañías.

Planificación y programación de proyectos

La planificación del proyecto significa crear un desglose del trabajo y luego asignar responsabilidades a los desarrolladores a lo largo del tiempo. La planificación del proyecto consiste en la construcción de varias tareas, cronogramas y vías esenciales, incluidos los diagramas de Gantt y PERT, y diferentes planes escritos para diversas situaciones.

Es bastante habitual en el proceso de desarrollo de software trabajar hacia atrás desde

fecha de finalización del proyecto que da como resultado una falla completa del proyecto de software. Está

imposible que un proyecto pueda completarse eficientemente desde la etapa de planificación

a la etapa de implementación.

La asignación de roles y responsabilidades debe definirse claramente, y

se vuelve crucial al contratar el puesto desde el exterior. Universidad superior

la gerencia no pudo aplicar las reglas básicas de gestión del proyecto que establecieron

fracaso del proyecto

También se requiere una programación adecuada antes del inicio del proyecto. Eso

incluye la programación del tiempo, la programación de equipos. Los gerentes de proyecto no saben qué

Tienen que planificar y programar. Solo le dicen al programador qué hacer

y los programadores pueden llegar a una solución adecuada.

El desarrollo se trasladó a una nueva oficina y la oficina no estaba completamente

equipado con la infraestructura adecuada. Como el tiempo también es un factor importante en el éxito

o fracaso de un proyecto. Entonces retrasó el proceso de desarrollo y contribuyó

hacia el fracaso del proyecto. La infraestructura no estaba completamente programada y

el equipo directivo no sabía dónde y cómo será el desarrollo del proyecto

empezado.

El secreto principal de un proyecto de desarrollo de software ganador es controlar el

mejorar la calidad y reducir el riesgo. El plan de contingencia también es parte de la planificación. En

en caso de que las cosas salieran mal, este plan puede seguirse para reducir el efecto de

fracaso del proyecto. Igual fue el caso con el software de contabilidad de la universidad. los

el equipo directivo no tenía un plan de contingencia ni evaluaron el riesgo

involucrado en el desarrollo del nuevo sistema. Entonces causó más problemas sin

el sistema de respaldo o el plan de respaldo.

La gerencia solo trata de seguir las metodologías como SDLC o RAD, pero no sabe qué metodología usar y en qué momento debe aplicar la técnica correcta.

Estimación de costos

La estimación de costos está relacionada principalmente con el costo del esfuerzo para producir el proyecto de software. Pero no se limita solo al esfuerzo. También incluye el costo de hardware y software, capacitación de los empleados y el cliente, viajes al cliente, costos de redes y comunicación. La estimación de costos debe hacerse como parte del modelo de proceso de software.

La estimación de costos debe hacerse mucho antes del inicio del proyecto.

desarrollo. El incumplimiento del presupuesto para el costo del proyecto da como resultado

completo desastre. Como se indicó anteriormente, el costo de la infraestructura, las herramientas de desarrollo

el costo del hardware y el costo también deben estimarse primero.

Lo mismo sucedió con el desarrollo del sistema contable de la universidad. Ellos

compró bien el nuevo sistema sin ninguna estimación seria del costo y

Las fuentes de ingresos.

A continuación se detallan los motivos por los que se realiza una estimación de costos incorrecta.

Metodología de estimación inadecuada

Otra razón sería el uso de una metodología de estimación de costos inapropiada. Ni una sola metodología es mejor que otra. Cada metodología tiene sus propios puntos fuertes y débiles que deben considerarse. El libro del Dr. Barry Boehm Software Engineering Economics enumera siete metodologías de estimación. Una o más de estas metodologías se pueden usar para estimar el costo de un proyecto

“Una buena sugerencia es que más de una metodología de estimación de costos de software

debe usarse para una estimación precisa “.

Herramientas de estimación de costos

Hay muchos inconvenientes en la estimación manual de costos. Esta técnica es casi obsoleta ahora. En la actualidad, la estimación de costos exitosa incluye el uso de una herramienta de estimación de costos de software comercial apropiada.

Las buenas herramientas de estimación de software no siempre garantizan un software confiable

estimados. La entrada incorrecta del tamaño del software dará como resultado una estimación incorrecta.

El software de estimación también necesita ser personalizado para la necesidad específica de

organización. Estas personalizaciones requieren los datos de los proyectos anteriores como

entrada para la herramienta para estimar.

Hay varias razones por las que estas herramientas pueden devolver la estimación incorrecta.

Elegir la herramienta de estimación correcta

La elección de una herramienta de estimación correcta es necesaria para la estimación correcta. La herramienta no es capaz de manejar la entrada y, por lo tanto, puede llegar a una estimación incorrecta y, por lo tanto, hacer que el proyecto de software falle.

Facilidad de personalización

Como se mencionó anteriormente, la herramienta seleccionada debe ser personalizable de acuerdo con las necesidades de la organización, de modo que la organización pueda personalizarla de acuerdo con las necesidades y los datos de proyectos anteriores.

Fácil de usar y aprender.

La herramienta de estimación de costos debe ser fácil de usar y aprender. Debe incluir ayuda y ejemplos, una interfaz de usuario simple y directa. Debe requerir menos capacitación para aprender el sistema y las entradas deben estar bien definidas.

Estimación precisa

La herramienta de estimación debe tener la capacidad de analizar todos los parámetros y llegar a una estimación precisa del costo.

Gestión de riesgos

La gestión de riesgos es un factor importante para el fracaso del proyecto de software si no se gestiona de manera oportuna y efectiva. Como no se puede predecir nada de lo que sucederá en el futuro, tenemos que tomar las medidas necesarias en el presente para tomar cualquier situación incierta en el futuro. La gestión de riesgos significa tratar una inquietud antes de que se convierta en una crisis.

Identificación de riesgo

Según el Proyecto de riesgo universal, hay dos tipos de condiciones que pueden ser un símbolo de riesgo.

    • Declaraciones IF-THEN
      • “SI la tecnología no está disponible, ENTONCES no cumpliremos con el requisito”
      • “SI no podemos contratar suficientes ingenieros de software calificados, ENTONCES no podemos cumplir con el cronograma de desarrollo planificado
    • CONDICIONES-CONSECUENCIAS Declaraciones
      • Dada la “condición”, existe la posibilidad de que ocurra la “consecuencia”
      • “Dado que esta prueba específica falla (la CONDICIÓN), la CONSECUENCIA es que el cronograma planeado se deslizará”

Los gerentes de proyecto deben identificar las áreas donde puede estar el riesgo y cómo

puede afectar el desarrollo del proyecto. El riesgo puede ser de naturaleza técnica o

no técnico Los gerentes de proyecto deben ser conscientes de ambos riesgos. La mayoría de

los gerentes de proyectos no son buenos en ninguno de los lados. Un buen gerente con

las habilidades de programación pueden ser buenas para identificar el riesgo técnico pero no en

riesgo técnico

Análisis de riesgo

Una vez identificado el riesgo, es necesario establecer las categorías de ese riesgo. El análisis de riesgos es el proceso de examinar los resultados del proyecto y los resultados después del análisis de riesgos y aplicar la técnica para reducir el riesgo. Una vez que se completa el análisis de riesgos, debe hacerse el plan de análisis de riesgos adecuado para hacer frente a cualquier situación incierta. Los primeros riesgos identificados se clasifican y forman la jerarquía de esos riesgos. En este punto, el riesgo se clasifica como riesgos positivos o negativos.

Priorización de riesgos

Después de analizar el riesgo, el siguiente paso es priorizar el riesgo. Al principio, enfóquese primero en el riesgo más severo; y les cortan luego. Estos factores de riesgo pueden funcionar de vez en cuando para que el proyecto final esté libre de riesgos. Por lo tanto, la mayoría de las veces el equipo de gestión del proyecto no puede identificar el riesgo grave y no trabaja en el riesgo menor. Esto a menudo se traduce en una crisis.

Evitación de riesgo

Tratar con el riesgo es un arte. Algunas veces la gerencia toma los proyectos sin identificar el riesgo apropiado involucrado en el proyecto. Por lo tanto, un gerente experimentado tomará el proyecto después del análisis de riesgo adecuado y evitará cualquier riesgo involucrado en el proyecto.

Control de riesgo

La gestión del riesgo para lograr los resultados y resultados deseados se realiza mediante el control del riesgo en su mejor momento. Este es un proceso puramente intuitivo y depende de la experiencia del equipo de gestión del proyecto, o del riesgo ya administrado en proyectos pasados ​​que fueron realizados por la misma organización.

Conclusión

Este ensayo ha presentado tres factores básicos que pueden hacer que el proyecto de desarrollo de software falle. Planificación y programación, estimación de costos y gestión de riesgos. Todos estos factores deben considerarse a nivel gerencial y luego transferirse a la gerencia inferior.

La planificación y la programación son lo primero, una buena planificación y programación hace que

Una base sólida para el proyecto de software. La planificación del proyecto consiste en

construcción de varias tareas, cronogramas y vías esenciales, incluido Gantt

gráficos y gráficos PERT y diferentes planes escritos para diversas situaciones. Si

estos factores no se toman en cuenta, entonces el software puede encontrar problemas

durante el desarrollo y el producto final será un fracaso.

La estimación de costos depende del presupuesto del proyecto, el tipo de cliente y el

tamaño y esfuerzo para poner en el proyecto. Las estimaciones de costos se realizan muchas veces

durante el ciclo de vida de un proyecto. Afecta el proyecto de muchas maneras, mal

estimación completa falla, afectar la buena voluntad de la organización si el

los costos no están cubiertos, las partes interesadas se ven afectadas y el desperdicio de recursos.

La gestión del riesgo es un enfoque práctico para disminuir la ambigüedad y

posible pérdida relacionada con un proyecto de desarrollo de software. Medidas potenciales

puede considerarse como centrado en la oportunidad (riesgo positivo) si sus consecuencias

son favorables o centrados en amenazas (riesgo negativo) si sus consecuencias son

desfavorable.