Modelado Y DISEÑO ORIENTADO A OBJETOS
Enviado por kunkun • 27 de Marzo de 2012 • Informe • 9.164 Palabras (37 Páginas) • 718 Visitas
MODELADO
Y
DISEÑO
ORIENTADO A OBJETOS
Introducción a la Orientación a Objetos
Conceptos fundamentales.
Presentación del método
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 poseeidentidad (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),relaciones comunes 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
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.
• 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
...