Está en la página 1de 12

Fundamentos de Ingeniera de Software

Iovanni Fernndez Snchez


1









Ing. Sistemas Computacionales


Fundamentos Ingeniera de Software

Modelos de Desarrollo de Software

Fernndez Snchez Iovanni 10041080





Victoria de Durango, Dgo.
FECHA DE ENTREGA:
18/Septiembre/2012



Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
2
Modelo de Cascada
Como funciona
Este modelo es el ms antiguo y ms utilizado, tiene una secuencia
ordenada, el trabajo de una entrada previa es la entrada del siguiente
proceso, establece criterios de entrada y salida en cada fase claramente
definidos, y dado que provee pocos puntos de invisibilidad da la
impresin de que es lento.
Etapas
Anlisis de requisitos
En esta fase se analizan las necesidades de los usuarios finales del
software para determinar qu objetivos debe cubrir.
Diseo del Sistema
Descompone y organiza el sistema en elementos que puedan
elaborarse por separado, aprovechando las ventajas del desarrollo
en equipo.
Diseo del Programa
Es la fase en donde se realizan los algoritmos necesarios para el
cumplimiento de los requerimientos del usuario as como tambin
los anlisis necesarios para saber que herramientas usar en la
etapa de Codificacin.
Codificacin
Es la fase en donde se implementa el cdigo fuente, haciendo uso de
prototipos as como de pruebas y ensayos para corregir errores.
Pruebas
Los elementos, ya programados, se ensamblan para componer el
sistema y se comprueba que funciona correctamente y que cumple
con los requisitos, antes de ser entregado al usuario final.
Verificacin
Es la fase en donde el usuario final ejecuta el sistema, para ello el
o los programadores ya realizaron exhaustivas pruebas para
comprobar que el sistema no falle.
Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
3
Mantenimiento
Una de las etapas ms crticas, ya que se destina un 75% de los
recursos, es el mantenimiento del Software ya que al utilizarlo
como usuario final puede ser que no cumpla con todas nuestras
expectativas.

Ventajas
Excelente cuando se tiene un producto estable y se conoce la
tecnologa.
Es un mtodo muy estructurado que funciona bien con gente de
poca experiencia.
Provee estabilidad en los requerimientos.
La planeacin se puede hacer anticipadamente.
Para proyectos grandes.

Desventajas
Tiene poca flexibilidad.
Los proyectos en la prctica raramente siguen un flujo secuencial.
Siempre es difcil para el cliente mostrar todos los requerimientos
explcitamente y con mucha anticipacin.
El cliente debe tener paciencia.


Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
4
Aplicaciones
Es utilizado en la actualidad generalmente como mtodos didcticos de
enseanza.
Modelo en Espiral

Como funciona
Los productos son creados a travs de mltiples repeticiones del proceso
del ciclo de vida, es decir, se rompen en mini proyectos.
Etapas
En cada vuelta o iteracin hay que tener en cuenta:
Los Objetivos: qu necesidad debe cubrir el producto.
Alternativas: las diferentes formas de conseguir los objetivos de
forma exitosa, desde diferentes puntos de vista como pueden ser:
1. Caractersticas: experiencia del personal, requisitos a cumplir, etc.
2. Formas de gestin del sistema.
3. Riesgo asumido con cada alternativa.
Desarrollar y Verificar: Programar y probar el software.
Si el resultado no es el adecuado o se necesita implementar mejoras o
funcionalidades:
Se planificaran los siguientes pasos y se comienza un nuevo ciclo
de la espiral. La espiral tiene una forma de caracola y se dice que
mantiene dos dimensiones, la radial y la angular:
1. Angular: Indica el avance del proyecto del software dentro de un
ciclo.
2. Radial: Indica el aumento del coste del proyecto, ya que con cada
nueva iteracin se pasa ms tiempo desarrollando.



Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
5
Para cada ciclo habr 4 actividades
Determinar o fijar objetivos
Fijar tambin los productos definidos a obtener: requerimientos,
especificacin, manual de usuario.
Fijar las restricciones.
Identificacin de riesgos del proyecto y estrategias alternativas para
evitarlos.
Hay una cosa que solo se hace una vez: planificacin inicial.
Anlisis del riesgo
Se lleva a cabo el estudio de las causas de las posibles amenazas y
probables eventos no deseados y los daos y consecuencias que
stas puedan producir.
Planificar
Revisamos todo lo hecho, evalundolo, y con ello decidimos si
continuamos con las fases siguientes y planificamos la prxima
actividad.
Desarrollar, verificar y validar (probar)
Tareas de la actividad propia y de prueba.
Anlisis de alternativas e identificacin resolucin de riesgos.
Dependiendo del resultado de la evaluacin de los riesgos, se elige
un modelo para el desarrollo, el que puede ser cualquiera de los
otros existentes, como formal, evolutivo, cascada, etc.



Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
6
Ventajas
El producto avanza a pasos firmes solucionado riesgos en cada
iteracin.
El producto termina con todos los riesgos resueltos.
Se pueden incluir otros mtodos de desarrollo en las iteraciones.
A medida que el costo aumenta, los riesgos se reducen.
Se tienen puntos de control en cada interaccin.
Desventajas
Es complicado.
Requiere de mucha administracin.
Difcil de definir los objetivos, metas que indiquen que podemos
avanzar al siguiente ciclo.
Se puede caer en un desarrollo de nunca acabar.

Aplicaciones
Este sistema es muy utilizado en proyectos grandes y complejos como
puede ser, por ejemplo, la creacin de un Sistema Operativo.
Modelo de Prototipo
Como funciona
El modelo de prototipo debe de ser construido en poco tiempo utilizando
pocos recursos, este es una versin preliminar de un sistema y sirve
para una demostracin o evaluacin del mismo.
Etapas
Plan rpido
Modelado, diseo rpido
Construccin del Prototipo
Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
7
Desarrollo, entrega y retroalimentacin
Comunicacin

Ventajas
tiles cuando los requerimientos son cambiantes.
Cuando no se conoce bien la aplicacin.
Cuando el usuario no se quiere comprometer con los
requerimientos.
Cuando se quiere probar una arquitectura o tecnologa.
Cuando se requiere rapidez en el desarrollo.

Desventajas
No se conoce cuando se tendr un producto aceptable.
No se sabe cuntas iteraciones sern necesarias.
Da una falsa ilusin al usuario sobre la velocidad del desarrollo.
Se puede volver el producto an y cuando no este con los
estndares.
Aplicaciones
Es usado generalmente para una visualizacin previa de cualquier
modelo que se quiera desarrollar.




Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
8
Modelo de Incremental
Como funciona
Este est basado bsicamente en varios ciclos cascada que
repetidamente nos dan una mejor solucin.
Etapas
En pocas palabras se puede definir las etapas de este modelo en las
actividades concurrentes que se mencionan a continuacin.
Especificacin
Desarrollo
Validacin





Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
9

Ventajas
La solucin se va mejorando en forma progresiva a travs de las
mltiples iteraciones.
Incrementa el entendimiento del problema y de la solucin por
medio de los refinamientos sucesivos.
Desventajas
Requiere de mucha planeacin, tanto administrativa como tcnica.
Requiere de metas claras para conocer el estado del proyecto.

Aplicaciones
Un ejemplo es un procesador de texto que sea desarrollado bajo el
paradigma Incremental podra aportar, en principio, funciones bsicas
de edicin de archivos y produccin de documentos (algo como
un editor simple). En un segundo incremento se le podra agregar
edicin ms sofisticada, y de generacin y mezcla de documentos. En un
tercer incremento podra considerarse el agregado de funciones de
correccin, esquemas de paginado y plantillas; en un cuarto capacidades
de dibujo propias y ecuaciones matemticas. As sucesivamente hasta
llegar al procesador final requerido. As, el producto va creciendo,
acercndose a su meta final, pero desde la entrega del primer
incremento ya es til y funcional para el cliente, el cual observa una
respuesta rpida en cuanto a entrega temprana; sin notar que la fecha
lmite del proyecto puede no estar acotada ni tan definida, lo que da
margen de operacin y alivia presiones al equipo de desarrollo.




Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
10
Modelo en Flor
Como funciona
Las etapas son desarrolladas hasta cierto punto al parejo una de la otra,
es decir, no tenemos que pasar una para empezar otra.
Etapas
Identificacin de requerimientos

Diseo rpido

Utilizar el prototipo

Revisar y mejorar
Ventajas
tiles cuando los requerimientos son cambiables
Cuando el usuario no se quiere comprometer con los
requerimientos.
Cuando no se conoce bien la aplicacin
Cuando se quiere probar una arquitectura o tecnologa
Cuando se requiera rapidez en el desarrollo
Desventajas
No se conoce cuando tengamos un producto aceptable.
No se sabe cuntas iteraciones sern necesarias
Dan una falsa ilusin al usuario sobre la velocidad del desarrollo.

Aplicaciones
Se utiliza, como se menciona, para cuando no conocemos muy bien el
modelo que deseamos construir.


Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
11
Modelo en V
Como funciona
Divide el proyecto en 2 partes izquierda y derecha, en el lado izquierdo
representa la descomposicin de las necesidades y la creacin de las
especificaciones del sistema y del lado derecho se encuentra la
integracin de las piezas y su verificacin.
Etapas
La corriente de especificacin (parte izquierda, Project definition)
consiste principalmente de:
Conceptos de operaciones: que debe hacer el sistema a grandes
rasgos.
Requisitos del sistema y arquitectura del mismo.
Diseo detallado.
La corriente de pruebas (parte derecha, Project test and integration),
por su parte, suele consistir de:
Integracin de las distintas partes, prueba y verificacin de las
mismas.
Verificacin y validacin del sistema en conjunto.
Mantenimiento del sistema.
La corriente de desarrollo puede consistir (depende del tipo de sistema y
del alcance del desarrollo) en personalizacin, configuracin o
codificacin.


Fundamentos de Ingeniera de Software
Iovanni Fernndez Snchez
12
Ventajas
El modelo en V hace ms explcita la tarea parte de la iteracin de
las actividades del proceso.
Las pruebas de cada fase ayudaran a corregir posibles errores sin
tener que esperar a que sean rectificados en la etapa final del
proceso.
Con las pruebas unitarias y de integracin se consigue obtener
exactitud en los programas.

Desventajas
Al encontrarse errores luego de realizar las pruebas se pierde
tiempo y dinero, ya que cada prueba se realiza luego de haber
terminado la implementacin.
Aplicaciones
Desarrollo de productos para las TIC. Es el estndar utilizado para los proyectos
de la Administracin Federal alemana y de defensa. Como est disponible
pblicamente muchas compaas lo usan. Es un mtodo de gestin de
proyectos comparable a PRINCE2 y describe tanto mtodos para la gestin como
para el desarrollo de sistemas.

También podría gustarte