Story Transcript
Lenguaje de Modelamiento Unificado. Pontificia Universidad Javeriana
Ingeniería de Software Olga Lucía Roa
What can you Model with UML? 1. Structure Diagrams include: • The Class Diagram • Object Diagram • Component Diagram • Composite Structure Diagram • Package Diagram • Deployment Diagram. Ingeniería de Software Olga Lucía Roa
What can you Model with UML? 2. Behavior Diagrams include • The Use Case Diagram (used by some methodologies during requirements gathering) • Activity Diagram • State Machine Diagram. Ingeniería de Software Olga Lucía Roa
What can you Model with UML? 3. Interaction Diagrams, all derived from the more general Behavior Diagram, include: • The Sequence Diagram • Interaction Overview Diagram
Ingeniería de Software Olga Lucía Roa
Área
Vista
Conceptos Principales
Diagramas Clase,
asociación, dependencia, interfaz.
generalización, realización,
Caso
de Uso, Actor, asociación, extensión, generalización.
Vista Estática
Diagrama de Clases
Vista de Casos de Uso
Diagramas de Casos de Uso
Vista de Implementación
Diagramas de Componentes
Vista de Despliegue
Diagramas de Despliegue
Vista de Estados de máquina
Diagramas de Estados
Estado, evento, transición, acción.
Vista de actividad
Diagramas de Actividad
Estado, actividad, transición, determinación, división, unión.
Diagramas de Secuencia
Interacción, objeto, activación.
Diagramas de Colaboración
Colaboración, interacción, rol colaboración, mensaje.
Diagramas de Clases
Paquete, subsistema, modelo.
Estructural Componente, interfaz, realización.
dependencia,
Nodo,
dependencia,
componente, localización.
Dinámica mensaje,
Vista de interacción
Administración o Gestión de modelo
Vista de Gestión de modelo
Extensión de UML
Todas
Ingeniería Todos de Software Olga Lucía Roa
Restricción, estereotipo, etiquetados.
de
valores,
DIAGRAMAS DE CASOS DE USO • Casos de Uso es una técnica para capturar información de cómo un sistema o negocio trabaja, o de cómo se desea que trabaje. Es una técnica para captura de requisitos.
Ingeniería de Software Olga Lucía Roa
El diagrama de casos de uso soluciona …. Que hace el sistema, a diferencia de otros diagramas UML que intentan dar respuesta a un Como logra su
comportamiento el sistema
Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE CASOS DE USO
«extiende» (extend) se emplea para establecer una situación excepcional o de error, que no corresponde al camino normal del caso de uso básico «incluye» (include) se utiliza para extraer las partes comunes de los casos de uso Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE CASOS DE USO Incorporar a lista de espera «extend» Obtener préstamo
Alumno
«include»
Consultar bibliografía
Bibliotecario
«include»
Incorporar material a la biblioteca
Ingeniería de Software Olga Lucía Roa
Un Caso de Uso es empleado con más frecuencia en alguna de las siguientes etapas : • Determinación de Requerimientos: Por lo general nuevos requerimientos de sistema generan nuevos usos-casos, conforme es analizado y diseñado el sistema. • Comunicación con el Cliente: Debido a la sencillez de este tipo de diagramas, son fáciles de emplear para comunicarse con el cliente final del proyecto. • Generación de pruebas de Sistemas: A través de los diagramas uso-caso se pueden generar una serie de pruebas de sistema.
Ingeniería de Software Olga Lucía Roa
DIAGRAMA DE CLASES Es un tipo de modelo estático. Describe la vista estática de un sistema en términos de clases y relaciones entre ellas.
Ingeniería de Software Olga Lucía Roa
Diagrama de Clases y sus asociaciones Un “Cliente” Puede tener una o más ordenes.
Agregación: La “Orden” agrega una lista de elementos tipo “Bebida”
Una Orden tiene un pago, y un pago corresponde únicamente a una orden Agregación: La “Orden” agrega una lista de elementos tipo “Platillo”
“Efectivo” hereda de “Pago”, es un tipo de pago.
“Credito” hereda de “Pago”, es un tipo de pago.
CLASES
1. Leer el enunciado e identificar las entidades, sustantivos, Clases (objetos) que representan algo en la solución del problema siempre en singular. 2. Leer el enunciado e identificar las cualidades ó atributos de las entidades anteriores. 3. Los métodos ó funciones (verbos- acciones) necesarias para cumplir los requerimientos, por ejemplo: registrar, crear, eliminar, modificar XXXX, etc. Ingeniería de Software Olga Lucía Roa
DIAGRAMA DE CLASES
Fig. 1
Fig. 3
Fig. 2
Ingeniería de Software Olga Lucía Roa
DIAGRAMA DE CLASES
Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE COMPORTAMIENTO • Diagramas de estado. • Diagramas de actividad.
Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE ESTADO El Diagrama de Estados modela el comportamiento de una parte del sistema. • Típicamente se elabora un diagrama de Estados para cada clase que tenga un comportamiento significativo. • El comportamiento es modelado en términos del estado en el cual se encuentra el objeto, qué acciones se ejecutan en cada estado y cuál es el estado al que transita después de un determinado evento. Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE ESTADO
Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE ACTIVIDAD • Caso especial de Diagrama de Estados donde: – Todos (o la mayoría de) los estados son estados de acción. – Todas (la mayoría de) las transiciones son “disparadas” como consecuencia de la finalización de la acción.
Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE ACTIVIDAD • 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. Ingeniería de Software Olga Lucía Roa
Diag. Actividad Diag. De Flujo Es importante recalcar que aunque un diagrama de actividad es muy similar en definición a un diagrama de flujo (típicamente asociado en el diseño de Software), estos no son lo mismo. Un diagrama de actividad es utilizado en conjunción de un diagrama uso-caso para auxiliar a los miembros del equipo de desarrollo a entender como es utilizado el sistema y como reacciona en determinados eventos. Lo anterior, en contraste con un diagrama de flujo que ayuda a un programador a desarrollar código a través de una descripción lógica de un proceso. Se pudiera considerar que un diagrama de actividad describe el problema, mientras un diagrama de flujo describe la solución.
DIAGRAMAS DE ACTIVIDAD
Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE ACTIVIDAD
Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE INTERACCIÓN • Diagramas de secuencia. • Diagramas de colaboración.
Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE SECUENCIA • Los Diagramas de Secuencia y de Colaboración son usados para describir gráficamente un caso de uso o un escenario. • Un Diagrama de Secuencia muestra los objetos de un escenario mediante líneas verticales y los mensajes entre objetos como flechas conectando objetos. • Los mensajes son dibujados cronológicamente desde arriba hacia abajo. Los rectángulos en las líneas verticales representan los periodos de actividad de los objetos.
Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE SECUENCIA
DIAGRAMAS DE COLABORACIÓN • 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) en los cuales se representan los mensajes enviados acompañados de una flecha que indica su dirección. • El Diagrama de Colaboración ofrece una mejor visión del escenario cuando el analista está intentando comprender la participación de un objeto en el sistema Ingeniería de Software Olga Lucía Roa
DIAGRAMAS DE COLABORACIÓN Los ‘:’ significa que es un objeto, instancia de una clase
Metodos
Metodos
Ingeniería de Software Olga Lucía Roa