Sei sulla pagina 1di 17

MODELO EN CASCADA, TRADICIONAL

Cascada
Es un mtodo que ordena rigurosamente las etapas del ciclo de vida del software
de tal manera que el inicio de cada etapa debe esperar a la finalizacin del
inmediatamente anterior.
Sirve para los proyectos

donde los requisitos se encuentren bien definidos

claramente y no son obligados a futuras modificaciones.


Estructura

Caractersticas

Es una visn de procesos por etapas.


para que el proyecto tenga xito deben desarrollarse todas las etapas.
si se cambia el orden de las fases el resultado ser de menor calidad.

Ventajas

tiene todo bien organizado.


planificacin sencilla.
Calidad del producto alta.
fcil manejo por parte del usuario.

Desventajas

difcil para corregir.


difcil de actualizar.
lleva gran tiempo todo el ciclo.

Espiral
El modelo de desarrollo en espiral es un generador de modelo de proceso guiado
por el riesgo que se emplea para conducir sistemas intensivos de ingeniera de
software concurrente y al vez de muchos usuarios.
Caractersticas

En cada giro se construye un nuevo modelo de sistemas completo.


el modelo puede combinarse con otros modelos.
mejor modelo para grandes sistemas.
No hay numero definido de interacciones.

Estructura

Ventajas

.Reduce los riegos del proyecto.


Incorpora objetivos de calidad.
integra el desarrollo con el mantenimiento.

Modelo dra
Es un proceso de desarrollo de software lineal y secuencial que enfatiza un ciclo
de de desarrollo ms corto.
Caractersticas

.El software no se desarrolla y utiliza en su totalidad, sino una seria de


incrementos, donde cada incremento se incluyen nuevas funcionalidades

del sistema.
. se necesitan equipos compuestos por alrededor de sies personas,
incluyendo desarrolladores y usuario de tiempo completo.

Ventajas

.manejo de varias plataformas.


. Entrega temprana al cliente.
.mayor involucramiento de usuarios.

.menos fallas.
.ciclos de desarrollo ms pequeos.

Desventaja

Para proyectos grandes se necesitan mucho recurso humano.


.progreso ms difcil de medir.

Modelos evolutivos
La evolucin del software est basado respecto a lo que diga el cliente. Enfocado
para el mejoramiento del software.

Caractersticas

.Se adaptan ms fcilmente a los cambios introducidos a lo largo del

desarrollo.
.iterativos.
.En cada interaccin se obtiene versiones ms completas del sw

Existen dos tipos de desarrollo evolutivo:


Desarrollo Exploratorio: El objetivo de este enfoque es explorar con el usuario los
requisitos hasta llegar a un sistema final. El desarrollo comienza con las partes
que se tiene ms claras. El sistema evoluciona conforme se aaden nuevas
caractersticas propuestas por el usuario.

Enfoque utilizando prototipos: El objetivo es entender los requisitos del


usuario y trabajar para mejorar la calidad de los requisitos. A diferencia del
desarrollo exploratorio, se comienza por definir los requisitos que no estn

claros para el usuario y se utiliza un prototipo para experimentar con ellos.


El prototipo ayuda a terminar de definir estos requisitos.
Estructura

Ventajas

Reutilizacin del software.


Simplifica las pruebas; pues estas se le hacen a los componentes antes de

probar el conjunto completo de componentes ensamblados.


Simplifica el mantenimiento del sistema.
Mayor calidad.

Desventajas

Genera mucho tiempo en el desarrollo del sistema.


Modelo costoso.
Requiere experiencia en la identificacin de riesgos.
Genera mucho trabajo adicional.

Modelo concurrente
Ligado con el cliente, basados en los requerimientos que pida el cliente.

Caractersticas:
se puede expresar de manera esquematizada
las actividades llevan procesos concurrentes
es aplicable a todo tipo de desarrollo de software
es un modulo aplicable para cliente soador
esta dirigido por las necesidades del usuario
es aplicable al cliente servidor
Estructura

Ventajas

Excelente para proyectos en los que se conforman grupos de trabajo

independientes.
Proporciona una imagen exacta del estado actual de un proyecto.

Desventajas

Si no se dan las condiciones sealadas no es aplicable.


Si no existen grupos de trabajo no se puede trabajar en este mtodo

Modelo incremental

Es un modelo de tipo evolutivo que est basado en varios ciclos Cascada


realimentados aplicados repetidamente, con una filosofa iterativa.
Caractersticas

Se evitan proyectos largos y se entrega algo de valor a los usuarios con

cierta frecuencia.
. El usuario se involucre ms.
. Difcil de evaluar el costo total.
. Difcil de aplicar a los sistemas transaccionales que tienden a ser

integrados y a operar como un todo.


. Requiere gestores experimentados.
. Los errores en los requisitos se detectan tarde.
. El resultado puede ser muy positivo.

ESTRUCTURA

Ventajas:
- Con un paradigma incremental se reduce el tiempo de desarrollo inicial, ya que
se implementa la funcionalidad parcial.
- Tambin provee un impacto ventajoso frente al cliente, que es la entrega
temprana de partes operativas del Software.
- El modelo proporciona todas las ventajas del modelo en cascada realimentado,
reduciendo sus desventajas slo al mbito de cada incremento.
- Permite entregar al cliente un producto ms rpido en comparacin del modelo

de cascada.
- Resulta ms sencilo acomodar cambios al acotar el tamao de los incrementos.
- Por su versatilidad requiere de una planeacin cuidadosa tanto a nivel
administrativo como tcnico.
Desventajas:
- El modelo Incremental no es recomendable para casos de sistemas de tiempo
real, de alto nivel de seguridad, de procesamiento distribuido, y/o de alto ndice de
riesgos.
- Requere de mucha planeacion, tanto administrativa como tcnica.
- Requiere de metas claras para conocer el estado del proyecto.
MODELOS ORIENTADOS A LA REUTILIZACIN
Es un enfoque de desarrollo que trata de maximizar la reutilizacin del Software
existente.
DESARROLLO BASADO EN COMPONENTES
Cuyas caractersticas son:
Configura aplicaciones a partir de componentes de software preparados.
Tiene un enfoque iterativo y evolutivo.

Estructura

Ingeniera del Dominio: Su objetivo es identificar, construir, catalogar y diseminar


un conjunto de componentes de software que tienen aplicacin en el software
actual y futuro dentro de un dominio de aplicacin particular.
Caractersticas

Anlisis del dominio


Modelo del dominio
Modelado estructural

Estructura

Ventajas

La actualizacin y reutilizacin de software.

Desventaja

La no adaptacin a diferentes plataformas.

MODELOS DE PROCESOS AGILES


EXTREME PROGRAMMING

Caractersticas

Basado en los valores de simplicidad, comunicacin, retroalimentacin, el

valor y el respeto.
Equipo completo.
Pruebas de clientes, lanzamientos pequeos.
Diseo simple, programacin en pareja, desarrollo basado en pruebas,

mejoras del diseo.


Integracin continua, ritmo sostenible

Estructuras

Mtodo de desarrollo de sistema dinmico (DSDM)


Es una metodologa gil que abarca todo el ciclo de vida de un proyecto de
desarrollo de Software.
Estructura

FDD
DESARROLLO BASADO EN FUNCIONES
Es una tcnica de programacin guiada por rasgos o caractersticas, centradas en
el usuario, no en el programador.

Mtodos agiles

Metodologa
Adaptive Software
Development
Agile Modeling

Acrnimo
ASD

Creacin
Highsmith 2000

AM

Ambler 2002

Crystal Methods

CM

Cockburn 1998

Agile RUP

dX

Dynamic Solutions
Delivery Model
Evolutionary Project
Management
Extreme
Programming
Feature-driven
development
Lean Development

DSDM

Booch, Martin, Newkirk


1998
Stapleton 1997

Evo

Gilb 1976

XP

Beck 1999

FDD

Microsoft Solutions
Framework
Rapid Development

MSF

De Luca & Coad 1998


Palmer & Felsing 2002
Charette 2001, Mary y
Tom Poppendieck
Microsoft 1994

RAD

McConnell 1996

Rational Unified
Process
Scrum

RUP

Kruchten 1996

Forma de pensar
Modelo logstico
Lineamientos,
Disciplinas, Prcticas
Survey de tcnicas y
modelos
Proceso unificado

Scrum

Sutherland 1994 Schwaber 1995

Proceso (framework
de management)

LD

Tipo de modelo
Prcticas + Ciclo de
vida
Metodologa basada en
la prctica
Familia de
metodologas
Framework / Disciplina
Framework / Modelo de
ciclo de vida
Framework adaptativo
Disciplina en prcticas
de ingeniera
Metodologa

Caracterstica
Inspirado en sistemas
adaptativos complejos
Suministra modelado gil
a otros mtodos
MA con nfasis en
modelo de ciclos
XP dado vuelta con
artefactos RUP
Creado por 16 expertos
en RAD
Primer mtodo gil
existente
Mtodo gil radical
Mtodo gil de diseo y
construccin
Metodologa basada en
procesos productivos
Framework de desarrollo
de soluciones
Seleccin de best
practices, no mtodo
Mtodo (gil?) con
modelado
Complemento de otros
mtodos, giles o no

Ventajas

.El modelo es prescindible de modelos desechables.


.pocos roles ms flexible.
.cliente es parte del equipo.
.orientado a proyectos de corta duracin.
.es fcil de modificar

MODELO PARA SISTEMAS OO


Este mtodo proporciona un soporte para el diseo creativo de productos de
software, a escala industria. Utiliza lenguajes como para el modelado y dearrollo
de proyectos como:oose,omt-2,booch,uml.
Dependiendo el proyecto se escoge el modela ms adecuado.

ITERACTIVO E INCREMENTAL

Aade funciones al sistema progresivamente, tras validar las sucesivas


interacciones con el cliente, el proceso va convergiendo hacia el producto
esperando por ambas partes.
Ventajas

.diseo modulares.
.fcil de modificar.
.reutilizacin de clases.

SCRUM

Enfatiza

valores

requerimientos,

prcticas

prcticas

de

de

gestin,

desarrollo,

sin

pronunciarse

implementacin

sobre
dems

cuestiones tcnicas

Hace uso de Equipos auto-dirigidos y auto-organizados

Puede ser aplicado tericamente a cualquier contexto en donde un grupo


de gente necesita trabajar junta para lograr una meta comn.

Desarrollo de software iterativos incrementales basados en prcticas agiles

Iteraciones de treinta das; aunque se pueden realizar con mas frecuencia,


estas iteraciones, conocidas como Sprint

Dentro de cada Sprint se denomina el Scrum Master al Lder de Proyecto


quien llevar a cabo la gestin de la iteracin

Se convocan diariamente un Scrum Daily Meeting el cual representa una


reunin de avance diaria de no ms de 15 minutos con el propsito de tener
realimentacin sobre las tareas de los recursos y los obstculos que se
presentan. En la cual se responden preguntas como: Qu has hecho
desde el ultimo encunetro? Qu obstaculos hay para cumplir la meta?
Qu haras antes del proximo encuentro?

Roles : si
Experiencia Team: No
Modelo gil: si
Aplicable para Web: Si
Individualizacin Team: No.

RUP

Describir la organizacin, documentacin, funcionalidad y restricciones de


un software.

Documentar y registrar las decisiones que se tomen para el desarrollo de

un software.
Implementar los diferentes diagramas de UML, dando paso a la reduccin
de tiempo a la hora de desarrollar un software.
Administrar los Requerimientos:
Esta prctica permite documentar, agilizar, mejorar los requerimientos
obtenidos para el desarrollo de un software, es sin duda una metodologa
que ayuda a insertar nuevos cambios a un sistema de informacin
(actualizaciones).
Implementar arquitecturas basadas en Componentes:
Como es de saberse, antes de realizar el desarrollo completo de un
aplicativo, es necesario realizar un modelo a escala del mismo, pues bien,
el RUP ofrece herramientas basadas en los componentes del sistema a
implementar, dando va al modelamiento seguro del mismo.
Modelar Visualmente el Software:
El RUP permite mostrar en una GUI el modelo de software desarrollado,
permitiendo al desarrollador mostrar errores y poder corregirlos, sin duda, la
interfaz grfica da vida al sistema y es ella quien me permite realizar
modificaciones.
Verificar la Calidad de Software:
El verificar la calidad del producto realizado, es una prctica que sustenta el
desarrollo del mismo, el RUP, como herramienta colaboradora, ofrece
formas de diseo, implementacin, ejecucin, entre otras del software,
antes de que ste sea implementado. En pocas palabras, permite realizar
testing al aplicativo.
Controlar los Cambios realizados al Software:
El RUP adems de ofrecer herramientas para el desarrollo y anlisis,
permite tambin suministrar recursos que sean ajustables a los posibles
cambios que pueda sufrir el software, ya sea de actualizacin o innovacin
del mismo.

Dirigido por Casos de Uso: Los casos de uso son los artefactos primarios

para establecer el comportamiento deseado del sistema


Centrado en la Arquitectura: La arquitectura es

utilizada

para

conceptualizar, construir, administrar y evolucionar el sistema en desarrollo

Iterativo
Maneja

e
una

serie

Incremental:
de

entregas

ejecutables

Integra continuamente la arquitectura para producir nuevas versiones

mejoradas
Conceptualmente amplio y diverso
Enfoque orientado a objetos
En evolucin continua
Adaptable
Repetible
Permite
Estimacin de costos y tiempo, nivel de avance, etc.

mediciones:

Potrebbero piacerti anche