miércoles, 2 de mayo de 2012

MODELO DE DESARROLLO ORIENTADAS A OBJETOS


MODELO DE DESARROLLO ORIENTADAS A OBJETOS


La tecnología OO generaliza los componentes para reutilizar, esto aumenta los costos de desarrollo en un 10 a 50%. Se han propuesto modelos para abordar esta problemática:

MODELO DE AGRUPAMIENTO (CLUSTER)


Los modelos usuales de ciclo de vida está basado en proyectos; mientras en el desarrollo OO está basado en en el producto.
Para la cultura del proyecto se propone el modelo de agrupamiento. En la que la fase de generalización aparece combinada con la fase de validación.
El concepto clave es el Agrupamiento: que es un conjunto de clases relacionadas con un objetivo común.



MODELO FUENTE


Definido por Henderson Sellers y Edwards 1990: es el mas conocido en el desarrollo OO.
Presenta alto grado de iteración y solapamiento que hace la tecnología de Objetos.
En la base esta el análisis de Requisitos, a partir del cual va creciendo el ciclo de vida, cayendo solo para el mantenimiento. La piscina seria el repositorio de clase



MODELO REMOLINO


Rumbaugh: 1992: señala que las metodológias de desarrollo, no ofrecen una visión real del mismo, que es mucho mas desordenada e implica múltiples iteraciones.
El modelo en cascada asume solo una dimensión de iteración consistente en la fase de proceso, pero pueden identificarse otras dimensiones, como las:
  • Amplitud: o tamaño del desarrollo
  • profundidad: nivel de abstracción  o detalle
  • madurez : grado de compleción, corrección y elegancia
  • alternativas: diferentes soluciones a un problema
·         alcance: en cuanto a adjetivos del sistema, ya que los requisitos cambian a lo largo del tiempo

MODELO PINBALL

 

Propuesto por Ampler: 1994. Señala que el pinball refleja realmente la forma en la que se desarrolla software.
En este modelo la pelota representa un proyecto completo sub proyecto, y el jugador es el equipo de desarrollo.
Se procede de forma iterativa a encontrar clases, atributos, métodos e interrelaciones y definir colaboraciones, herencias, agregación y subsistemas.
Por último se pasa a la programación prueba e implementación como en el pinball los pasos se pueden tomar en cualquier orden y de forma simultánea.
Se destaca dos estilos a la hora de jugar:
  • ·         a lo seguro: con tecnologías y métodos probados.
  • ·         Al limite: con mayor riesgo, pero con mas ventajas.
El autor destaca que al igual que en el juego del pinball, la habilidad es el factor más importante.

CONCLUSIONES


Todos los modelos de desarrollo OO se caracterizan por:
  • ·         eliminación de fronteras entre fases
  • ·         una nueva forma de concebir los lenguajes de programación y su uso
  • ·         un alto grado de iteración y solapamiento
Los expertos en tecnologías de objetos proponen seguir un desarrollo Iterativo e incremental.
Las tareas de cada fase se llevan a cabo de forma iterativa, a la vez existe un ciclo de desarrollo análisis - instrumentación - análisis que permite hacer evolucionar al sistema.
Lo incremental se refiere al hecho que el sistema se divide en un conjunto de particiones, las cuales se desarrollan de manera completa
Las actividades de validación, verificación y seguimiento de la calidad se realizan para cada iteración de cada fase
la ventaja principal de estos modelos es que permite fijar hitos más frecuentes, realizando entregas de sistemas operativos cada dos o tres meses, para recibir  retroalimentación del cliente.
El inconveniente es la dificultad de gestionar de manera formal los proyectos.