Diagrama de Actividad (Gp:) Buscar Bebida (Gp:) Poner café en filtro (Gp:) Añadir agua al depósito (Gp:) Coger taza (Gp:) Poner filtro en máquina (Gp:) Encender máquina (Gp:) Café en preparación (Gp:) Servir café (Gp:) Coger zumo (Gp:) Beber (Gp:) [no hay café] (Gp:) [hay café (Gp:) [no zumo] (Gp:) [hay zumo] (Gp:) / cafetera.On (Gp:) indicador de fin
Emitir billete Pasajero Vendedor Airline … Otro Ejemplo (con swim lines) Solicitar pago Reservar plazas Confirmar plaza reservada Pagar pasaje Informar alternativas y precios Verificar existencia vuelo Dar detalles vuelo Solicitar pasaje Seleccionar vuelo
Diagrama Componentes
Diagrama de Despliegue
Resumen UML define una notación que se expresa como diagramas sirven para representar modelos/subsistemas o partes de ellos
El 80 por ciento de la mayoría de los problemas pueden modelarse usando alrededor del 20 por ciento de UML– Grady Booch
¿Por qué la Orientación a Objetos? Proximidad de los conceptos de modelado respecto de las entidades del mundo real
Mejora captura y validación de requisitos Acerca el “espacio del problema” y el “espacio de la solución”
Modelado integrado de propiedades estáticas y dinámicas del ámbito del problema
Facilita construcción, mantenimiento y reutilización
¿Por qué la Orientación a Objetos?
Conceptos comunes de modelado durante el análisis, diseño e implementación
Facilita la transición entre distintas fases Favorece el desarrollo iterativo del sistema Disipa la barrera entre el “qué” y el “cómo”
Sin embargo, existen problemas …
“…Los conceptos básicos de la OO se conocen desde hace dos décadas, pero su aceptación todavía no está tan extendida como los beneficios que esta tecnología puede sugerir” “…La mayoría de los usuarios de la OO no utilizan los conceptos de la OO de forma purista, como inicialmente se pretendía. Esta práctica ha sido promovida por muchas herramientas y lenguajes que intentan utilizar los conceptos en diversos grados” –Wolfgang Strigel Problemas en OO
Un objeto contiene datos y operaciones que operan sobre los datos, pero … Podemos distinguir dos tipos de objetos degenerados: Un objeto sin datos (que sería lo mismo que una biblioteca de funciones) Un objeto sin “operaciones”, con sólo operaciones del tipo crear, recuperar, actualizar y borrar (que se correspondería con las estructuras de datos tradicionales) Un sistema construido con objetos degenerados no es un sistema verdaderamente orientado a objetos “Las aplicaciones de gestión están constituidas mayoritariamente por objetos degenerados” … Problemas en OO
Reflexiones respecto de Situación Actual de Desarrollo de SI Análisis Diseño Enfoque Estructurado Enfoque OO Diagramas de Casos de Uso Diagramas de Actividad Diagramas de Secuencia Diagramas de Colaboración d DFDs Diagrama de Clases Diagrama de Estados Diagramas de Actividad DEs Modelo Relacional !! Implementación Entornos de Programación Visual Bases de Datos (Objeto-) Relacionales Modelo Relacional E-R
Objetos Objeto = unidad atómica que encapsula estado y comportamiento
La encapsulación en un objeto permite una alta cohesión y un bajo acoplamiento
Un objeto puede caracterizar una entidad física (coche) o abstracta (ecuación matemática)
… Objetos El Modelado de Objetos permite representar el ciclo de vida de los objetos a través de sus interacciones En UML, un objeto se representa por un rectángulo con un nombre subrayado (Gp:) Otro (Gp:) Objeto (Gp:) Un Objeto (Gp:) Otro (Gp:) Objeto (Gp:) más
… Objetos Ejemplo de varios objetos relacionados:
… Objetos Objeto = Identidad + Estado + Comportamiento El estado está representado por los valores de los atributos Un atributo toma un valor en un dominio concreto
Clases y Objetos
Oid (Object Identifier) Cada objeto posee un oid. El oid establece la identidad del objeto y tiene las siguientes características:
Constituye un identificador único y global para cada objeto dentro del sistema
Es determinado en el momento de la creación del objeto
Es independiente de la localización física del objeto, es decir, provee completa independencia de localización Identidad
Es independiente de las propiedades del objeto, lo cual implica independencia de valor y de estructura
No cambia durante toda la vida del objeto. Además, un oid no se reutiliza aunque el objeto deje de existir
No se tiene ningún control sobre los oids y su manipulación resulta transparente
Sin embargo, es preciso contar con algún medio para hacer referencia a un objeto utilizando referencias del dominio (valores de atributos) … Identidad
Estado El estado evoluciona con el tiempo
Algunos atributos pueden ser constantes
El comportamiento agrupa las competencias de un objeto y describe las acciones y reacciones de ese objeto
Las operaciones de un objeto son consecuencia de un estímulo externo representado como mensaje enviado desde otro objeto
Comportamiento Ejemplo de interacción:
… Comportamiento Los mensajes navegan por los enlaces, a priori en ambas direcciones
Estado y comportamiento están relacionados
Ejemplo: no es posible aterrizar un avión si no está volando. Está volando como consecuencia de haber despegado del suelo
Página anterior | Volver al principio del trabajo | Página siguiente |