Guia SDLC
Guia SDLC
Guia SDLC
DESARROLLO
Fuente: tomado del libro Analisis y Diseño de Sistemas, Kendal y Kendal, 8 edicion, pagina 8
Comunicación
Este es el primer paso donde el usuario inicia la petición de un producto software. Contacta al proveedor
de servicios e intenta negociar las condiciones. Presenta su solicitud al proveedor de servicios aportando
la organización por escrito.
Recolección de solicitudes
A partir de este paso, el equipo de desarrollo software trabaja para ir adelante en el proyecto. El equipo
se reúne con varios depositarios de dominio del problema, e intentan conseguir la máxima cantidad de
información posible sobre lo que se requiere. Los requisitos se contemplan y se agrupan en requisitos
del usuario, requisitos funcionales y requisitos del sistema. La recolección de todos los requisitos se
lleva a cabo como se especifica a continuación :
Este modelo se enfoca típicamente en software empresariales, para algunos autores hacen referencia a aquel
software que desarrollara a la medida de la organización, pero esto no quiere decir que deben seguir las mismas
etapas o faces.
MODELO EN ESPIRAL
Este modelo es un enfoque muy diferente al modelo en cascada, ya que su enfoque va dirigido hacia el análisis de
los riesgos. En este modelo de ciclo de vida en espiral, consiste en realizar muchas iteraciones, pasando por cada
una de sus fases una y otra vez. A diferencia del modelo cascada que no tiene vuelta atrás, en el modelo en espiral
se pueden hacer iteraciones que sea necesarias y estas son sus fases principales:
1. Determinación de Objetivos: en ello se hará la especificación del alcance del producto que se
obtendrá al final de la iteración, se identificarán los riesgos y se determinarán posibles
alternativas de solución.
2. Análisis de riesgos: en esta fase se evaluara alternativas, se identifica y resuelve los riesgos.
3. Desarrollo y Pruebas: en esta fase, se debe comprender las actividades de análisis, diseño,
construcción e implantación de la versión del producto o software.
4. Planificación: en esta se realizara un estudio de la situación actual del sistema y del proyecto, en
que se determinara la necesidad o no de una nueva evolución y en el caso de que sea necesaria se
realiza la planificación de la misma.
Entre las principales ventajas de desarrollar un proyecto de software con el modelo espiral, es que los
riesgos se van disminuyendo a medida que avanzan los ciclos o iteraciones, de hecho no se puede
avanzar a un ciclo nuevo, si no se ha dado solución a todos los riesgos latentes. Lamentablemente el
modelo es realmente muy costoso y para que se pueda tener un alto nivel de eficacia en la evaluación
final del proyecto con este ciclo de vida, se necesita que el equipo tenga un gran nivel de conocimiento y
si es posible buena experiencia para superar cualquier riesgo al cual se puedan enfrentar.
MODELO DE PROTOTIPOS
Es también conocido como modelo ITERACTIVO, en que se maneja a base de prototipos, es decir. Es
uno de los primeros ciclos de vida en que se permitía que el código fuente fuera reutilizado, sin embargo
con el modelo iterativo no solo se utiliza, sino que, en estos prototipos pueden llegar a ser el producto
final que siempre quieren, lo cual lo hace realmente relevante y destacable, por encima del resto de los
modelos que se pueda encontrar.
Básicamente, las fases del ciclo de vida del sistema, son las siguientes:
1. Inicialización
2. Iteración
3. Lista de Control
Una de las principales ventajas del modelo iterativo, es que la retroalimentación a los usuarios se
proporciona muy temprano, haciendo que al adentrar en el proyecto sea muy sencillo. El hecho de contar
con iteraciones nos da ciertas ventajas, pues con cada iteración realizada, se separa las partes complejas
de él, permitiendo más el acceso al software. Y por supuesto, un sistema creado por medio del ciclo de
vida iterativo, tiende a que no casi o pocas veces se falle, lo cual es garantía de satisfacción para el
cliente o para la empresa que necesiten implementar este método o modelo.
EL MODELO DRA
Es un modelo de proceso de software incremental que resalta un ciclo de desarrollo corto. Este modelo es una
adaptación de "alta velocidad" del modelo de cascada. El proceso de DRA permite que un equipo de desarrollo
cree un sistema completamente funcional dentro de un periodo muy corto de 60 a 90 días.
El desarrollo rápido de aplicaciones o RAD (Rapid Application Development) es un proceso de desarrollo de
software, desarrollado inicialmente por James Martin en 1980. Este método comprende en desarrollo iterativo, la
construcción de prototipos y el uso de utilidades de la herramienta CASE. De manera tradicional, el desarrollo
rápido de aplicaciones tiende a englobar también la usabilidad, utilidad y la rapidez de ejecución. Este metodo es
un modelo de proceso del desarrollo del software lineal secuencial que enfatiza un ciclo de desarrollo
extremadamente corto.
DRA es una adaptación de “Alta velocidad" en el que logra que el desarrollo rápido utilizando un enfoque de
construcción basado en componentes. Si se logra comprender bien los requisitos y se limita el ámbito del
proyecto, el proceso DRA permite al equipo de desarrollo crear un "sistema completamente funcional" dentro de
periodos cortos de tiempo.
La limitación de tiempo impuesto en un proyecto DRA demanda "ámbito en escalas". Si durante la aplicación de
gestión se puede modular de forma que permita completarse cada una de las funciones principales en menos de
tres meses. Cada una de las funciones se afronta por un equipo DRA diferente y será integrada en solo un
conjunto. Al igual que todos los modelos de proceso, el enfoque DRA tiene muchos inconvenientes como: Para
proyectos grandes aunque por escalas, el DRA requiere recursos humanos que sea suficientes para crear el
número correcto de equipos DRA. También, se debe requerir clientes y desarrolladores que estén comprometidos
en las actividades necesarias para completar un sistema en un marco de tiempo abreviado. Si no hay compromiso,
por ninguna de las partes constituyentes, los proyectos DRA fracasaran.
MODELOS EVOLUTIVOS
En este modelo los requerimientos del usuario pueden ser cambiante para el usuario. Ya que en la
práctica se demuestra que obtener todos los requerimientos al comienzo del proyecto es muy difícil; y no
solo por la dificultad para el usuario poder transmitir su idea, sino porque los requerimientos
evolucionan durante el desarrollo y así, surgen nuevos requerimientos que se debe cumplir.
El sistema es considerado como desarrollado, porque los usuarios lo usan, y proveen la
retroalimentación a los desarrolladores. Basado en esto, en la especificación de requerimientos se
actualiza, y hay una segunda versión del producto es desarrollado y será desplegado. En este proceso se
repite indefinidamente.
EJERCICIOS/ACTIVIDADES
Consultar otros tipos de ciclos de vida de desarrollo de software que no se indican en esta guía.
Hacer un cuadro comparativo entre las metodologías de desarrollo SCRUM y las que utiliza Microsoft y Oracle.
BIBLIOGRAFIA