ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Modelado Y DISEÑO ORIENTADO A OBJETOS

kunkunInforme27 de Marzo de 2012

9.164 Palabras (37 Páginas)749 Visitas

Página 1 de 37

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 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

Objetos entidad

Representan algo real o abstracto sobre el cual el sistema necesita almacenar datos. Representan la memoria esencialdel negocio. Los objetos del negocio (business objects) son normalmente objetos entidad. Ejemplos de objetos entidad pueden ser empleado, alumno, etc.

Se representan en el diagrama de estructura de objetos con el siguiente símbolo:

Objetos Interface

Representan lo objetos técnicos requeridos para vincular la aplicación con el entorno. Representan el vínculo a través del cual el sistema recibe o suministra datos e información al entorno. Típicamente incluyen interfaces con el usuario (pantallas, reportes, etc.) e interfaces con otras aplicaciones.

Se representan en el diagrama de estructura de objetos con el siguiente símbolo:

Objetos de control

Contienen comportamiento que no pertenece naturalmente ni a objetos entidad ni de interfaz. Son normalmente objetos transitorios, como ser un controlador de reportes.

Se representan en el diagrama de estructura de objetos con el siguiente símbolo:

Clases abstractas y concretas

Una clase de la cual pueden generarse instancias particulares (objetos), se denomina clase concreta.

Una clase abstracta es aquella que no instancias (objetos) propias. Las clases abstractas son un poderoso mecanismo conceptual para definir estructuras comunes de atributos, operaciones, y restricciones, reutilizadas a través de la herencia por múltiples clases concretas.

En el diagrama de estructura de objetos una clase abstracta se representa con un rectángulo punteado.

Operaciones

Una operación define un servicio ofrecido por un objeto junto con la información que debe suministrarse cuando es invocado (nombre, argumentos de entrada/salida).

También puede contener una especificación de método, el cual especifica una implementación para la operación.

Notación: Durante la etapa de Análisis o Diseño lógico pueden utilizarse típicamente texto libre o pseudocódigo. Durante el Diseño físico dichas especificaciones son trasladadas en un lenguaje de programación específico como ser C++, Java, Visual Basic, etc.

Algunas operaciones pueden asumirse que existen para cada clase de objetos sin identificarlas formalmente. Estas son llamadas operaciones implícitas. Las operaciones implícitas más importantes son Crear, Destruir, Leer, y Actualizar.

...

Descargar como (para miembros actualizados) txt (64 Kb)
Leer 36 páginas más »
Disponible sólo en Clubensayos.com