Marco teorico de un proyecto de Software
El modelo de proceso de desarrollo de software es quizás la pieza más
importante de este engranaje conocido como ingeniería de software.
Existen varios modelos para el proceso de desarrollo software. Los
modelos están conformados por etapas que son generales a todos los
enfoques. Las diferencias están básicamente en los tiempos en los cuales
se realizandichas etapas, la simultaneidad, la prioridad que se le da a
cada etapa, entre otros elementos. Otras características se pueden
observar en detalle en la definición de cada uno de los modelos.
Figura 1. Ciclo de vida del Software
Fuente: Ian Sommerville. Ingeniería del Software, Séptima Edición
Algo importante en el análisis del proceso software es que los procesos
no son excluyentes y unproceso bien puede ser la unión de varios de
ellos.
1
1.1
MODELO LINEAL SECUENCIAL O EN CASCADA1
El modelo en lineal secuencial es también conocido como el ciclo de vida
del
software,
está
conformado
por las etapas de
Análisis de
requerimientos, Diseño, Codificación y pruebas. Cada etapa tiene
dependencias de finalización y orden la una de la otra. En ese orden deideas no se podrá iniciar la etapa de codificación sino no se ha pasado ya
por la etapa de análisis y diseño previamente y respectivamente.
Debido a la forma en la que este proceso aborda la solución de proyectos
software tiene algunas ventajas y falencias.
Figura 2. Modelo Lineal Secuencial
Fuente: Roger S. Pressman. Ingeniería del Software, Un enfoque
práctico. Quinta edición. McGraw HillEntre otras las ventajas y desventajas de este modelo son:
Los proyectos reales raras veces siguen el modelo secuencial que
propone el modelo. Aunque el modelo lineal puede acoplar
1
Roger S. Pressman. Ingeniería del Software, Un enfoque práctico. Quinta edición. McGraw
Hill
2
interacción, lo hace indirectamente. Como resultado, los cambios
pueden causar confusión cuando elequipo del proyecto comienza.
Este modelo es ampliamente usado en la industria del software y pese
a que tiene algunas dificultades como las mencionadas arriba es mejor
que no aplicar ningún modelo de proceso para el desarrollo de
software.
A menudo es difícil que el cliente exponga explícitamente todos los
requisitos. El modelo lineal secuencial lo requiere y tiene dificultades a
lahora de acomodar la incertidumbre natural al comienzo de muchos
proyectos.
El cliente debe tener paciencia. Una versión de trabajo del (los)
programa(s) no estará disponible hasta que el proyecto esté muy
avanzado. Un grave error puede ser desastroso si no se detecta hasta
que se revisa el programa.
Es difícil afrontar cambios propuestos por el cliente en fases diferentes
de la fase deanálisis y definición de requisitos y entre más adelantado
esté el proyecto más costosos son los cambios o modificaciones.
3
1.2
PROCESO DE SOFTWARE POR PROTOTIPOS2
El paradigma de desarrollo por prototipos permite refinar sistemas
complejos con base en un sistema mínimo definido al principio del
proceso de la especificación del sistema y de los cuales el cliente no tiene
ladefinición
completa
de
requisitos.
Figura 3. El paradigma de construcción por prototipos
Fuente: Roger S. Pressman. Ingeniería del Software, Un enfoque
práctico. Quinta edición. McGraw Hill
El proceso comienza con la definición de requisitos por parte del cliente y
así se llega a los objetivos globales del sistema. Con base en los
requisitos conocidos se diseña un primeracercamiento a la solución el
cual se implementa como una versión funcional del software. Dicho
prototipo es evaluado por el cliente y así definir nuevos alcances y nuevos
2
Roger S. Pressman. Ingeniería del Software, Un enfoque práctico. Quinta edición. McGraw
Hill
4
requisitos. Por medio de dichas iteraciones, de un prototipo a otro se
logra el sistema completo.
Este enfoque tiene...
Regístrate para leer el documento completo.