Você está na página 1de 4

Uso de modelos para el diseño de programas orientados a objetos

Beneficios de las técnicas O.O.

• Reusabilidad del software


• Mayor flexibilidad para realizar mantenimiento y modificaciones del software
• Disminuye el gap semántico proveyendo una representación consistente en todo el ciclo de
vida
• Mejor interacción entre el usuario/analista/diseñador.
• Más apropiado para abordar problemas más complejos.
Tres enfoques de organización para comprender el mundo

• Diferenciación de la experiencia en Objetos y Atributos


• Distinción entre el todo y sus partes
• Formación y distinción de clases de objetos.
Concepto de Objeto y Clase.
Objeto

Definición 1: Un objeto es algo real o abstracto acerca del cual almacenamos datos y métodos que
manipulan dichos datos (Martín/Odell)

Definición 2: Encapsulado de datos, operaciones que tratan dichos datos, y que observa un estado
interno, que posee identidad(se distingue por su existencia misma y no por sus atributos).

Cada objeto es una instancia de la clase a la que pertenece.

Clase

Una clase es un grupo de objetos con propiedades (atributos) similares, comportamiento común
(operaciones), relacionescomunes entre objetos, y semántica común (Raumbaugh).

Comunicación por mensajes

Los objetos de un sistema se comunican entre si a través de mensajes. El mensaje es enviado por
un objeto emisor y recibido por un objeto destino o receptor. Un mensaje invoca una o más
operaciones en el objeto receptor.

Principios fundamentales

Abstracción

Encapsulamiento

Mecanismo que permite ocultar los detalles de implementación de un objeto. Permite empaquetar en
una unidad los datos y las funciones que operan sobre dichos datos.

Herencia

Relación entre clases de objetos que permite incluir (rehusar) los atributos y operaciones definidas
en otra clase más general de la cual se hereda o deriva.

Polimorfismo
La misma operación es resuelta de diferente forma según el objeto que recibe el mensaje.

Conceptos Adicionales

Agregación

Composición de un objeto por otros. Es una relación más débil que la que existe entre el atributo y el
objeto al cual pertenece, y más fuerte que una asociación.

Concurrencia

Propiedad que distingue un objeto activo de otro inactivo. (Booch)

Persistencia

Es la propiedad de un objeto cuya existencia trasciende el tiempo y/o el espacio (ej. el objeto continua
existiendo luego de que su creador deja de existir / la ubicación de un objeto se mueve a un espacio
de direcciones diferente de aquella donde fue creada).

Visibilidad

Braulio Bonilla Sandoval


capacidad de restringir el acceso a atributos y servicios de un objeto. Particularmente importante en
el diseño e implementación. (ej. C++: público / protegido / privado)

Modelos utilizados.

Modelo de Estructura de Objetos

El modelo de estructura de Objetos (OSM) es el modelo central. Contiene las clases de objetos
requeridas para construir la aplicación y las relaciones entre ellas. Se construye a través de un
proceso aditivo durante todo el ciclo de desarrollo del sistema.

Modelo de Secuencias de Transacciones

El modelo de procesos de negocios (BPM) describe los procesos que se llevan a cabo en la
organización. Se lo utiliza para analizar la organización y comprender sus procesos, parte de los
cuales (o todos), serán soportados por el sistema a desarrollar. El modelo de secuencia de
transacciones (TSM) parte de la especificación de alto nivel del BPM y lo traslada en requerimientos
para la aplicación. El TSM se corresponde conceptualmente con lo USE-CASEs de Jacobson
(OOSE).

Diagramas de Interacción de Objetos


Los diagramas de interacción de objetos muestran las interacciones entre objetos requeridas para
proveer al usuario los servicios descriptos en el TSM.

Diagramas de Flujo de Actividad

Los diagramas de flujo de actividad son utilizados para analizar y presentar flujos de actividad
complejos en los procesos de negocio y en las secuencias de transacciones (secuencias, iteraciones,
y decisiones).

Modelo de ciclo de vida de objetos

El modelo de ciclo de vida de objetos es utilizado para describir como un objeto cambia de estados
en el tiempo y que eventos producen dichos cambios de estado.

Modelo global del sistema

El modelo global del sistema es utilizado para dividir el sistema en unidades de diseño manejables.
Es una herramienta para manejar la complejidad de desarrollo de grandes sistemas. Especifica la
interfaces entre las unidades de diseño.

Modelo de Estructura de Objetos (OSM)

Conceptos y propósito del modelo de estructura de objetos

El OSM es el modelo fundamental que provee un medio uniforme para modelar el sistema desde la
captura de requerimientos en la etapa inicial del análisis hasta la implementación, atravesando todo
el ciclo de desarrollo del sistema.

Este modelo identifica :

• las clases de objetos en la aplicación


• como las clases de objetos se asocian unas con otras
• como se comunican los objetos
• los detalles de cada clase de objetos, incluyendo atributos y operaciones

Durante el proceso de análisis y diseño, el OSM es definido en sucesivos niveles incrementales de


detalle, hasta que el nivel necesario para la implementación es alcanzado.

Todos los demás modelos capturan detalles que alimentan es modelo.

El desarrollo de OSM es un proceso aditivo, diferenciándose esto del enfoque transformacional


característico de otros métodos como el estructurado, donde los DFD del análisis son transformados
en diagramas de estructura durante el diseño, con los consiguientes problemas que esto acarrea.

Durante el ciclo de desarrollo se aportan los siguientes elementos al modelo:

• Análisis del Negocio: se reconocen objetos claves del negocio y generan las abstracciones
en las clases apropiadas (objetos entidad).
• Análisis de Requerimientos: se identifican asociaciones estructurales entre objetos y nuevas
clases (entidad).
• Diseño lógico: Se incorporan todas las clases necesarias para la aplicación incluyendo los
objetos de interfaz y de control.
Braulio Bonilla Sandoval
• Diseño Físico: se incorporan todos los detalles remanentes para la implementación física de
cada clase de objetos.

Componentes del modelo de estructura de objetos.

El componente básico del OSM es la clase de objetos.

Se distinguen tres tipos de clases:

• Objetos Entidad
• Objetos de Interfaz
• Objetos de Control.

Para cada clase identificada se describen:

• Operaciones
• Atributos
• Restricciones

Adicionalmente el OSM describe las asociaciones entre objetos o clases de objetos. Se distinguen
los siguientes tipos de asociaciones:

• Relaciones Estáticas
• Herencia
• Agregación
• Comunicación por mensajes

Braulio Bonilla Sandoval


Braulio Bonilla Sandoval

Você também pode gostar