Dirección General de Servicios de Cómputo Académico (DGSCA) Dirección de Sistemas Modelado de Sistemas con UML Agosto, 2003 Integrado por: Rebeca Núñez.

Slides:



Advertisements
Presentaciones similares
U.M.L A/Gx. Diego Gutiérrez Application Analysis and Design.
Advertisements

Diagrama de estado Alumnos: Hernández Darwin ( )
DIAGRAMA DE ACTIVIDAD Roberto Certain Leonardo Molina.
Lenguaje Unificado de Modelado
Programación Orientada a Objetos y Lenguaje de Modelado Unificado
Ingeniería de Software I
Análisis y Diseño de Sistemas II “Exposición Diagramas UML”
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA 2006.
Metodologías OMT Republica bolivariana de Venezuela
Introducción a la Orientación a Objetos
Análisis y diseño orientado a objetos con UML
Fundamentos de Ingeniería de Software
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
LENGUAJE UNIFICADO DE MODELADO UML
DIAGRAMAS DE SECUENCIA
DIAGRAMA DE COMPONENTES INTEGRANTES Córdova Vásquez Giovanny Escobar Alvares Calixto Gomez Quinteros Adelaida Pinto Flores Yarmila.
Sistemas Distribuidos “Técnicas de Especificación Formal”
DIAGRAMAS DE ESTADOS ¿Qué es un Diagrama de Estados?
Desarrollo Orientado a Objetos con UML
Unified Modeling Language (Lenguaje de Modelamiento unificado)
Análisis y Diseño orientado a objetos con UML.
Profesor: Miguel Angel Vidal
Diagramas de Interacción
UML Diagramas. Diagramas de Interacción Muestran como los objetos de la aplicación cooperan e interactúan para cumplir con los requisitos. Suele construirse.
Sistemas a Eventos Discretos
Algunas Herramientas de Apoyo al Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos.
Lenguaje de Modelado Unificado Unified Modeling Languaje
Como empezar en Access 2000 Abrir Access 2000 Pulsamos INICIO
Análisis y Diseño Orientado a Objetos utilizando UML CAPITULO V DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS.
Ingeniería de Software
UNIDAD 3: “Desarrollo Orientado a Objetos con UML”
Fundamentos de programación
Análisis y Diseño Orientado a Objetos utilizando UML
Dirección General de Servicios de Cómputo Académico (DGSCA) ‏ Modelado de Sistemas con UML Septiembre, 2007 Integrado por: Rebeca Núñez Alonso Eduardo.
INGENIERIA DE SOFTWARE
INTEGRANTES: RAMIREZ TICONA ESTHER NELIDA SUAREZ MONTOYA HECTOR FREDDY PINTO CARVAJAL JUAN CARLOS UNIVERSIDAD SALESIANA DE BOLIVIA.
CASOS DE USO Ing. Sonia Godoy H..
UML 2.0 Integrantes: Diana Carolina Valencia M. Jhon Fernando Lopez T. Carlos Alberto Castillo.
Vista de interacción  Una vista de interacción muestra el flujo de control requerido que se establece entre los objetos.
Diagrama de Clases ACI 570.
Algunas Herramientas de Apoyo al Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos.
UML Carlos Becerra C. ¿Qué es orientación a objetos? Conceptos de OO  Objetos, características de los objetos, clases e instancias,
El modelo de análisis tiene como objetivo generar una arquitectura de objetos que sirva como base para el diseño posterior del sistema. Dependiendo del.
DEFINICIÓN DE OBJETO Un objeto es aquello que puede ser observado, estudiado y aprendido CARACTERÍSTICAS nos permiten conocerlos mediante la observación,
I NGENIERÍA DE S OFTWARE L ABORATORIO VII Diseño - Diagramas: Actividades, Secuencia y Clases Eduardo Saavedra A. 13/10/2009.
TEMA 9: DIAGRAMA DE CLASE EN UML
Ingeniería de Software
UML 2.0 Diagramas de Comportamiento
Modelo Dinámico (I) Prof. Leonid Tineo Departamento de Computación
Introducción a UML Departamento de Informática Universidad de Rancagua
Conceptos Fundamentales
Ingeniería de Requisitos
Desarrollo de aplicaciones empresariales con Web Services
DIAGRAMA DE SECUENCIA Y ACTIVIDADES.
UML.
(Lenguaje Unificado de Modelado)
¿QUE ES EL DIAGRAMA DE ESTADO ?
DIAGRAMA DE ESTADO.
Sandra Muñoz Blanca González Patricia Lázaro
Unified Modeling Language (Lenguaje de Modelamiento unificado)
UNIDAD 2: “Características del Modelado UML” CONTENDIDO Elaborado por: Ingeniero Harold Cabrera Meza Actualizado por: Ingeniero Nilson Albeiro Ferreira.
Diagramas de máquina de estado
Diagrama de Clases.
MODELAMIENTO VISUAL Y UML
PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS
1 Qué es UML Es un Lenguaje de Modelado Unificado basado en una notación gráfica que permite especificar,construir, visualizar y documentar los objetos.
Máquinas de Estados Diagrama de Actividades
Unified Modeling Language UML. Ejemplo a desarrollar La Universidad XXX desea computarizar su sistema de registración – El secretario establece el plan.
CURSO:PRACTICA INTEGRAL III ALUMNO: RARÁZ TINOCO, JORGE LUIS PROFESOR:DAVILA, JUAN CICLO:II CICLO.
Diseño Orientación a Objetos Lenin Herrera Sesión 3.
Transcripción de la presentación:

Dirección General de Servicios de Cómputo Académico (DGSCA) Dirección de Sistemas Modelado de Sistemas con UML Agosto, 2003 Integrado por: Rebeca Núñez Alonso Eduardo A. Sánchez Rodríguez

Diagramas de Estado Comportamiento dinámico MODELADO DE SISTEMAS CON UML

Diagramas de Estado Orientación a Objetos = Estructura + Comportamiento Los diagramas de clase representan la estructura y el comportamiento estático de los objetos. ¿Cómo representamos el comportamiento dinámico? Desde la creación de un objeto hasta su fin DIAGRAMA DE ESTADOS El Diagrama de Estados modela el trabajo interno de los objetos

Diagramas de Estado Un diagrama de transición de estado se usa para mostrar la historia de vida de una clase dada, los eventos que causan una transición de un estado a otro, y las acciones que resultan de un cambio de estado El espacio de estado de una clase dada es la numeración de todos los estados posibles de un objeto El estado de un objeto es una de las condiciones posibles en las que puede existir un objeto  Contiene todas las propiedades del objeto o Usualmente estático  Más los valores actuales de cada una de estas propiedades o Usualmente dinámico DIAGRAMA DE ESTADOS

Representación del Comportamiento Modelado del aspecto Dinámico Interacción –Comportamiento de una sociedad de objetos Máquina de Estados –Comportamiento de un objeto

DIAGRAMA DE ESTADOS Características de una Máquina de Estados Una máquina de estados bien estructurada es: –Eficiente –Simple –Adaptable –Entendible

DIAGRAMA DE ESTADOS Máquina de Estados Representa la secuencia de estados del tiempo de vida de un objeto, suscitados por Eventos –Señales –Operaciones –El paso del Tiempo Ocurrencia de un Evento Ejecución de una Actividad Dependiendo del Estado Actual del Objeto

Diagramas de Estado numStudents < 10 Open Le número máximo de alumnos por curso es 10 numStudents > = 10 Closed numStudents = 7 English101 : Course Course numStudents Los estados pueden distinguirse por los valores de ciertos atributos DIAGRAMA DE ESTADOS

Diagramas de Estado ProfessorCourse 0..*1 Los estados también pueden distinguirse por la existencia de ciertas ligas Las instancias de la clase Profesor puede tener dos estados: –Impartir cuando existe una liga a un curso –En sabático cuando no existe liga Estado de un objeto es una de las posibles condiciones en que un objeto puede existir propiedades (estático) y sus valores (dinámico) DIAGRAMA DE ESTADOS

Estado Condición o situación de un objeto durante su tiempo de vida, en la cual: –Satisface una condición –Realiza alguna actividad –Espera la ocurrencia de un evento La respuesta es afectada por el pasado. Un estado se representa como un rectángulo redondeado DIAGRAMA DE ESTADOS Rastreando entry/activarModo(enRastreo) do/rastrea() exit/activarModo(noRastreo)

Un estado representa cierta duración de proceso o intervalo de tiempo Un estado tiene varias partes: Nombre.- Una cadena de texto que distingue al estado de otros estados; un estado puede ser anónimo, es decir, puede no tener nombre, pero se recomienda nombrar a los estados para indicar su duración. Acciones de entrada/estancia/salida.- Acciones realizadas al entrar, estar y salir del estado, respectivamente. Subestados.- Estructura anidada de un estado, que engloba subastados disjuntos (activos secuencialmente) o concurrentes (activos concurrentemente). DIAGRAMA DE ESTADOS Rastreando entry/activarModo(enRastreo) do/rastrea() exit/activarModo(noRastreo)

Transiciones Una transición representa un cambio de un estado original a un estado sucesor como resultado de algunos estímulos Open Canceled Cancel course Add student DIAGRAMA DE ESTADOS

Transición Relación de cambio entre dos estados Una transición es una relación entre dos estados que indica que un objeto que esté en el primer estado realizará ciertas acciones y entrará en el segundo estado cuando ocurra un evento especificado y se satisfagan unas condiciones determinadas. DIAGRAMA DE ESTADOS AdeudoPagado Pagar Transición

Una transición cuenta con cinco partes:  Estado origen o inicial.  Evento de disparo.  Condición de Guarda.  Acción.  Estado destino o final. DIAGRAMA DE ESTADOS

Estados Inicial y Final El estado inicial es registrado cuando se crea un objeto Un estado inicial es obligatorio Solo un estado inicial es permitido El estado inicial se representa como un círculo sólido Un estado final indica el final de vida de un objeto (la destrucción del objeto). Un estado final es opcional Puede existir más de un estado final Un estado final se indica con un “ojo” DIAGRAMA DE ESTADOS

Evento Especificación de una ocurrencia significativa que tiene una ubicación en el tiempo y el espacio Ocurrencia de un estímulo que dispara la transición de un estado DIAGRAMA DE ESTADOS

Evento (2) –Un evento es la ocurrencia de alguna situación que sucede en un punto del tiempo El estado del objeto determina la respuesta a diferentes eventos –Ejemplo: Agregación un alumno a un curso Creación de un curso nuevo DIAGRAMA DE ESTADOS

Condiciones de guarda Una condición de guarda es una expresión booleana de valores de atributos que permiten una transición solo si la condición es verdadera; si la expresión toma el valor falso, la transición no se dispara y si no hay otra transición que pueda ser disparada por el mismo evento, éste se pierde OpenRegistration Complete [ numStudents >= 3 ] DIAGRAMA DE ESTADOS

Acciones Una acción es una operación que se asocia a una transición Toma una cantidad insignificante de tiempo para completarse. Se considera no-interruptible Una computación atómica ejecutable que puede actuar directamente sobre el objeto asociado a la máquina de estados, e indirectamente sobre otros objetos visibles al objeto. No vale la pena modelar la estructura del control interno simple. Las acciones por el general [re-]asignan valores a los atributos. DIAGRAMA DE ESTADOS

Acciones Las acciones pueden generar otros eventos para coordinar operaciones. La notación es “ / ” Las acciones especifican un comportamiento en respuesta a un evento DIAGRAMA DE ESTADOS En tránsitoEnviado Paquete enviado/Producir factura

Actividad Ejecución no-atómica dentro de una maquina de estados. Produce –Cambio de Estado –Regresa un valor DIAGRAMA DE ESTADOS Dependiendo del Estado Actual del Objeto Ocurrencia de un Evento Ejecución de una Actividad Cambio de Estado del Objeto

Actividad Una actividad es una operación que toma tiempo para completarse Las actividades se asocian con un estado Una actividad Inicia cuando se introduce el estado Puede ejecutarse hasta el fin o puede ser interrumpida por una transición que sale Closed do: Report course is full DIAGRAMA DE ESTADOS

Diagramas de Estado - Ejemplo addStudent Initialize do: Initialize course object Unassigned do: Assign professor to course Open entry: Register a student Closed do: Report course is full Canceled do: Send cancellation notices addStudent/ numStudents = 0 cancelCourse RegistrationComplete do: Generate class roster cancelCourse [ numStudents = 10 ] cancelCourse [date = end] registration closed[ numStudents < 3 ] DIAGRAMA DE ESTADOS

 Los estados anidados pueden ser usados para simplificar diagramas complejos.  Un superestado es un estado que incluye estados anidados, llamados subestados.  Las transiciones comunes de los subestados son representadas en el nivel del superestado.  Cualquier número de niveles de anidación son permitidos.  Los estados anidados pueden llevar a reducciones sustanciales en la complejidad gráfica, permitiendo modelar problemas más largos y complejos. Estados Anidados Los diagramas de transición de estado pueden volverse inmanejablemente largos y complejos. DIAGRAMA DE ESTADOS

Estados Anidados DIAGRAMA DE ESTADOS

Estados Anidados

Estados Anidados con Historia (1)  Al retornar a un superestado, se entra a subestado visitado más recientemente (y no al inicial).  Se denota con una (con historia).  Sin historia se entra siempre a subestado inicial. Ejemplo:  En el sistema de registro de cursos, la selección de curso hace lo siguiente : Acepta cursos primarios Acepta cursos alternativos DIAGRAMA DE ESTADOS

Estados Anidados con Historia (2) DIAGRAMA DE ESTADOS

Las opciones son:  El usuario puede renunciar en cualquier momento  El usuario puede suspender una sesión por un máximo de 30 minutos mientras selecciona cursos  El formulario es grabado después de que todos los cursos han sido seleccionados  El formulario es enviado a procesar después de que ha sido grabado Estados Anidados con Historia (3) DIAGRAMA DE ESTADOS

Diagramas de Estado – Ejemplo 1 DIAGRAMA DE ESTADOS

Diagramas de Estado – Ejemplo 2 addStudent Initialize Register Unassigned do: Assign professor to course Open entry: Register a student Unassigned do: Assign professor to course Open Closed Canceled RegistrationComplete do: Generate class roster Add student / numStudents = 0 [ numStudents = 10 ] cancelCourse registration closed [date = end] registration closed[ numStudents < 3 ] addStudent do: Report course is closed DIAGRAMA DE ESTADOS

Diagramas de Estado – Ejemplo 3 DIAGRAMA DE ESTADOS

NeutralReversa Avanzar PrimeraSegundaTercera Cambiar a R Cambiar a N Cambiar a F Subir Bajar DIAGRAMA DE ESTADOS

La notación para generalización puede ser usada para estados complejos. PrimeraSegundaTercera Subir Bajar Palanca Transmisión ReversaNeutralAvance Presiona N Presiona RPresiona A

DIAGRAMA DE ESTADOS La notación de agregación puede ser usada para concurrencia. Despacho al cliente Do: Despachar efectivo Do: Despachar tarjeta SM División de control: Inicia dos subestados concurrentes que son independientes S Unión de control: Ambas acciones deben de terminarse antes de pasar al siguiente estado, sin importar el orden M

 Enfocarse sólo en los objetos que sean interesantes, complejos o de una problemática dinámica.  Considerar la interdependencia entre eventos y objetos.  Buscar cambios en el estado de los objetos causado por las ocurrencias de eventos.  Buscar eventos cuyos efectos son regidos por los estados del objeto.  En sistema de información busca objetos con estados regidos por valores de atributos y ligas entre objetos.  En sistemas en tiempo real busca objetos con estados regidos por el comportamiento. Aplicar el modelado de estados de manera selectiva. DIAGRAMA DE ESTADOS

 Cada estado debe tener un predecesor (estado o estado inicial).  Tratar al estado sin un sucesor (estado o estado final) con suspicacia.  Seguir los efectos de un evento de entrada de objeto a objeto a través del sistema para verificar coherencia.  Verificar que los eventos correspondientes a diferentes diagramas de estados sean consistentes.  Cada evento debe tener un emisor y un receptor. Verificar la consistencia de los diagramas de estados. DIAGRAMA DE ESTADOS

 ¿Todas las actividades y acciones aparecen como operaciones en el diagrama de clases?  El diagrama de clases soporta completamente al diagrama de estados. o¿Existen atributos y asociaciones que describen estados? o¿Existen atributos y asociaciones que evalúan condiciones de seguridad? o¿Hay operaciones públicas para todos los mensajes? o¿Hay operaciones privadas para entradas, salidas y acciones internas? Verificar consistencia entre diagramas dinámicos y de clases. DIAGRAMA DE ESTADOS

MODELADO DE SISTEMAS CON UML B ibliografía y Referencias

BIBLIOGRAFÍA Y REFERENCIAS Orientación a Objetos Booch, Grady. Análisis y diseño orientado a objetos, 2ª Edición México, Addison-Wesley Iberoamericana Jacobson, Ivar. Object oriented software engineering. EE.UU, Addison-Wesley Rumbaugh, James y otros. Object oriented modeling and design. EE.UU, Prentice-Hall

BIBLIOGRAFÍA Y REFERENCIAS UML Booch, Grady. El Lenguaje Unificado de Modelado España, Addison-Wesley Iberoamericana Booch, Grady. El Lenguaje Unificado de Modelado. Manual de Referencia España, Addison-Wesley Iberoamericana Fowler, Martin UML Gota a Gota México, Addison-Wesley, 1999.

BIBLIOGRAFÍA Y REFERENCIAS Ligas de interés Objetct Management Group Rational Software Corporation Cetus Links - Object-Orientation The Object Agency The Object-Oriented Page Sinan Si Alhir’s Web Site Object Orientation Tips