La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Programación Orientada a Objetos y Lenguaje de Modelado Unificado

Presentaciones similares


Presentación del tema: "Programación Orientada a Objetos y Lenguaje de Modelado Unificado"— Transcripción de la presentación:

1 Programación Orientada a Objetos y Lenguaje de Modelado Unificado

2 Objetivos Adquirir la terminología necesaria para realizar el análisis y diseño bajo UML Conocer las herramientas de análisis y aprender como utilizarlas y en qué momento. Asimilar los conceptos teóricos aprendidos mediante la exposición de ejemplos prácticos.

3 Agenda Programación Orientada a Objetos Que es UML?
Modelos del Proceso Unificado Tipos de Diagramas – Aplicación Diagramas Estáticos vs. Diagramas Dinámicos ¿Qué es un Caso de Uso? Diagrama y Especificación Ejemplos

4 Programación Orientada a Objetos
¿Qué es un Objeto? Un Objeto es la representación de un conocimiento abstracto de un problema del mundo real Una cosa tangible y/o visible. Algo que puede comprenderse intelectualmente. Algo a lo que se dirige un pensamiento o acción.

5 Un Objeto tiene: Estado, Comportamiento e Identidad Estado
Mediante todas las propiedades del mismo (normalmente estáticas), más los valores actuales ( normalmente dinámicas), de cada una de esas propiedades. Comportamiento A través de la forma en que responde a los estímulos a los que es sometido Identidad Mediante la propiedad que distingue al objeto de otro objeto

6 ¿Cómo identificamos a los objetos?
Usando herramientas gramaticales tales como sustantivos y verbos Objetos --> nombres; servicios --> verbos Usando entidades tangibles, (cosas), en la aplicación de dominios Productos, Clientes, Gerencia, Reuniones, etc... Determinando participantes y comportamientos, tanto a nivel general como particular Participantes son objetos y los comportamientos son servicios.

7 Tipos de Relaciones entre Objetos
Las relaciones entre Objetos son: Asociación (conocimiento) Agregación Generalización

8 Tipos de Relaciones entre Objetos
Asociación (mensajes): Conexión semántica entre instancias de clases Proporciona una “conexión” entre los objetos para el envío de mensajes. Enlace: Instancia de una asociación Lista ordenada de referencias a objetos

9 Tipos de Relaciones entre Objetos
Agregación: Mientras que los enlaces denotan relaciones igual-a-igual la agregación denota una jerarquía todo/parte. Con la capacidad de ir desde el todo, (el agregado), hasta sus partes, (conocidos también como atributos). Cliente “tiene un” Orden Item “tiene un” Precio “tiene un”

10 Tipos de Relaciones entre Objetos
Generalización: Relación taxonómica entre una descripción general y otra más específica que la extiende. Relación “es un tipo de”.

11 ¿Qué es UML? UML es un conjunto de herramientas que permite modelar sistemas orientados a objetos No es un método de desarrollo, por lo tanto, no va a decir cómo pasar del análisis al diseño y de éste al código Y al no ser un método de desarrollo, es independiente del ciclo de desarrollo que se utilice

12 ¿Qué es UML? UML es un lenguaje “unificado” de modelado para:
Visualizar Especificar Construir Documentar Los artefactos de un sistema de software. Representar y Comunicar Ideas Modelos precisos, no ambiguos, completos Trasladar en forma directa a un leng. prog. Los artefactos construidos durante un proyecto

13 Modelos de Proceso Unificado
Un modelo es una representación en algún medio que captura los aspectos importantes del sistema modelado desde un determinado punto de vista. Propósitos de los modelos Capturar y precisar requerimientos de un dominio de conocimiento, que sea comprensible por los Sponsors del proyecto. Pensar sobre un diseño de un sistema. Capturar decisiones de diseño de un sistema. Explorar posibles soluciones a un problema económicamente. Generar productos de trabajo útiles. Documentar.

14 Modelos de Proceso Unificado
Iterativo Incremental Dirigido por Casos de Uso Centrado en la Arquitectura Enfocado en los Riesgos

15 Diagramas UML Diagrama de Casos de Uso (Dinámico)
UML cuenta con distintos tipos de diagramas los que muestran distintos aspectos de las entidades representadas. Ellos son: Diagrama de Casos de Uso (Dinámico) Diagrama de Clases (Estático) Diagrama de Estados (Dinámico) Diagrama de Secuencia (Dinámico) Diagrama de Colaboración (Dinámico) Diagrama de Actividades (Dinámico) Diagrama de Componentes (Estático) Diagrama de Distribución (Estático)

16 Diagramas UML

17 Diagramas Estáticos vs. Dinámicos
Podemos ver al modelos desde un punto de vista dinámico y estático. Esto se representa mediante la siguiente distinción: Modelo estático (estructural): Diagrama de despliegue Diagrama de componentes Diagrama de clases Diagrama de objetos Los diagramas estructurales de UML permiten visualizar, especificar, construir y documentar los aspectos estáticos de un sistema

18 Diagramas Estáticos vs. Dinámicos
Modelo dinámico (comportamiento): Diagrama de estados Diagrama de actividades Diagrama de secuencia Diagrama de colaboración Diagrama de casos de uso Mientras que los diagramas de comportamiento de UML se emplean para visualizar, especificar, construir y documentar los aspectos dinámicos de un sistema

19 Diagrama de Casos de Uso (dinámico)
Organizan los comportamientos del sistema. Un diagrama de caso de uso representa un conjunto de casos de uso y actores (un tipo especial de clases) y sus relaciones. Un diagrama de Casos de Uso consta de los siguientes elementos: Actores Casos de Uso Relaciones

20 Consideraciones claves
El nombre de un Caso de Uso se expresa con verbo en infinitivo Los Casos de Uso tienen las siguientes características: Están expresados desde el punto de vista del actor Se documentan con texto informal Describen tanto lo que hace el actor como el sistema, aunque se hace énfasis en la interacción Son iniciados por un único actor Están acotados a una única funcionalidad (claramente diferenciada) del sistema

21 Consideraciones claves
Relación más básica que indica la invocación desde un actor o caso de uso a otra operación (caso de uso) Asociación Este tipo de relación es el más utilizado, cumple una doble función según el estereotipo <<include>> o <<extends>> Generalización

22 Consideraciones claves
La relación <<Extiende >> se utiliza cuando un caso de uso es similar a otro pero con alguna característica nueva. La relación << usa – Include >> se utiliza cuando se tiene una parte del comportamiento común de más de un caso de uso y se desea simplificar el uso de la descripción de este comportamiento.

23 Descripción de los Casos de Uso
Caso de Uso: Breve Descripción: Actores: Precondición: Post-Condición: Referencias: Curso Normal: Curso Alternativo: Supuestos y Dependencias: Problemas y Comentarios:

24 Caso de Ejemplo Se quiere realizar un Sistema que controla una máquina de reciclamiento de botellas y tarros. Para ello, el sistema debe permitir: Registrar el número de ítems ingresados Imprimir un recibo cuando el usuario finalice el deposito Comenzar el proceso al detectar el deposito de un nuevo ítem Saber cuántos ítems han sido retornados en el día Que el operador obtenga un resumen al final del día de todo lo depositado Cambiar información asociada a cada ítem Emitir una alarma en caso que el ítem se atore

25 1) Como primera aproximación se identifican los actores que interactúan con el sistema
Cliente Operador Sistema Máquina de Reciclaje

26 2) Luego, tenemos que un cliente puede Depositar Ítems y un operador puede cambiar información de un Ítem, o bien, puede imprimir un informe: Generar Reporte Operador Cliente Depositar Ítem Cambiar Ítem

27 3) Pero a su vez, podemos notar que un ítem puede ser una botella o un tarro por lo tanto:
Depositar Ítem <<extends>> <<extends>> Depositar Tarro Depositar Botella

28 4) A su vez, existe la impresión de comprobantes, que puede ser realizada después de depositar algún ítem por un cliente o bien, puede ser pedida por el operador: Depositar Ítem Generar Reporte <<include>> <<include>> Imprimir

29 Ejemplo: Diagrama de Casos de Uso

30 Ejemplo: UCS_Depositar Item
Caso de Uso: Depositar ítem Breve Descripción: El presente caso de uso describe los pasos a seguir por el usuario para depositar un item en la recicladora Actor: Usuario Precondición: La maquina recicladora debe estar en funcionamiento Post condición: El ítem fue depositado y registrado Referencia: * Incluye CU: Depositar Botella. * Incluye CU: Depositar Tarro * Incluye CU: Eliminar Alarma Curso Normal: 1) El usuario deposita un ítem en la maquina recicladora. 2) La recicladora valida el ítem. Valida que: * Sea un ítem valido (Se un tarro o una botella) * Se encuentre en la posición correcta

31 3) El sistema obtiene información del tipo de ítem.
4) El sistema registra el ítem según su tipo. *Ítem Botella. Caso de uso “Depositar Botella” *Ítem Tarro. Caso de uso “Depositar Tarro” 5) El sistema queda a la espera de un nuevo ítem. Curso Alternativo: 2.1 En caso que el ítem ingresado no sea valido, el sistema informa la situación por medio de un mensaje al usuario. 2.1.1 El usuario retira el ítem. 2.2 En caso que el ítem no se encuentre en la posición correcta, el sistema informa la situación al operador mediante una alarma. Para ello llama al caso de uso “Emitir Alarma” 2.2.1 El operador corrige el ítem atascado Supuestos y Dependencias: N / A Problemas y Comentarios:La maquina recicladora debe contar con un detector de ítems.

32 Diagrama de Secuencia (dinámico)
Los Diagramas de Secuencia y de Colaboración son usados para describir gráficamente un escenario El Diagrama de Secuencia muestra los objetos de un escenario mediante líneas verticales y utiliza flechas de conexión para mostrar los mensajes entre objetos Los mensajes son dibujados cronológicamente desde arriba hacia abajo Los rectángulos en las líneas verticales representan los períodos de actividad de los objetos.

33 Ejemplo: Diagrama de Secuencia

34 Diagrama de Colaboración (dinámico)
El Diagrama de Colaboración modela la interacción entre los objetos de un Caso de Uso Los objetos están conectados por enlaces (links) que representan los mensajes enviados acompañados de una flecha indicando su dirección Este tipo de diagrama ofrece una mejor visión del escenario cuando el analista está intentando comprender la participación de un objeto en el sistema

35 Ejemplo: Diagrama de Colaboración

36 Diferencias El Diagrama de Secuencia destaca la sucesión de las interacciones. El Diagrama de Colaboración destaca el contexto y organización general de los objetos que interactúan. El Diagrama de Secuencia se organiza de acuerdo al tiempo. El Diagrama de Colaboración de acuerdo a la interacción entre los objetos.

37 Diagrama de Clases (estático)
Es el diagrama principal para el análisis y diseño del sistema Un diagrama de clases presenta las clases del sistema con sus relaciones estructurales y de herencia Para cada clase se describen los atributos y operaciones El modelo de casos de uso debería aportar información para establecer las clases, objetos, atributos y operaciones

38 Ejemplo: Diagrama de Clases

39 Diagrama de Estados (dinámico)
El diagrama de estados presenta los estados en los que pueden encontrarse un objeto junto con las transiciones entre los estados, y muestra los puntos inicial y final de una secuencia de cambios de estado. Los diagramas de clase o casos de uso ya vistos modelan el comportamiento de un sistema o al menos un grupo de clases, mientras que el diagrama de estados muestra las condiciones de un solo objeto. Es necesario contar con diagramas de estados dado que permiten a los analistas, diseñadores y desarrolladores comprender el comportamiento de los objetos de un sistema.

40 Modelo

41 Diagrama de Actividades (dinámico)
Es una extensión del Diagrama de Estados Fue diseñado para mostrar una visión simplificada de lo que ocurre durante una operación o proceso, mostrando los pasos, puntos de decisión y bifurcaciones. El Diagrama de Actividades puede especificar: El comportamiento de los objetos de una clase La lógica de una operación (método) Parte o toda la descripción de un Caso de uso La descripción de un Flujo de Trabajo

42 Ejemplo: Diagrama de Actividades

43 Diagrama de Componentes (estático)
Los diagramas de componentes describen los elementos físicos - denominados artefactos del sistema - y sus relaciones Muestran grupos de artefactos de software de acuerdo a una funcionalidad común y pueden incluir código fuente, binario y ejecutable, recursos gráficos o textuales, etc. Los componentes representan todos los tipos de elementos software que entran en la fabricación de aplicaciones informáticas. Pueden ser simples archivos, paquetes, bibliotecas cargadas dinámicamente, etc. Las relaciones de dependencia entre componentes se utilizan para indicar que un componente utiliza los servicios ofrecidos por otro componente

44 Modelo

45 Diagrama de Despliegue (estático)
El Diagrama de Despliegue mapea la arquitectura de software creada en diseño con una arquitectura física de sistema que lo ejecuta. Se lo conoce también como Diagrama de Distribución o de Dominio Los Diagramas de Despliegue muestran la disposición física de los distintos nodos que componen un sistema y el reparto de los componentes sobre dichos nodos Los estereotipos permiten precisar la naturaleza del equipo: Dispositivos Procesadores Memoria Los nodos se interconectan mediante soportes bidireccionales que pueden a su vez estereotiparse

46 Modelo <<Cliente>> <<Servidor>> Terminal Punto de Venta <<TCP/IP>> Base de Datos <<RDSI>> <<RDSI>> Control Podemos distinguir tipos de nodos y conexiones por estereotipado

47 Otra forma de representarlo


Descargar ppt "Programación Orientada a Objetos y Lenguaje de Modelado Unificado"

Presentaciones similares


Anuncios Google