33
1 Unified Modeling Language Lenguaje de Modelación Unificado Modelo de Casos de Uso

Introducción a UML y Diagrama de Casos de Uso

Embed Size (px)

Citation preview

Page 1: Introducción a UML y Diagrama de Casos de Uso

1

UnifiedModelingLanguage

Lenguaje de Modelación Unificado

Modelo de Casos de Uso

Page 2: Introducción a UML y Diagrama de Casos de Uso

2

Los modelos en UMLLos modelos en UML

Estos modelos proyectan diferentes visiones del sistema

Se seleccionan los más apropiados (depende de la aplicación)

Han sido establecido por diferentes enfoques (no necesariamente OO)

Page 3: Introducción a UML y Diagrama de Casos de Uso

3

Las vistas en UMLLas vistas en UML

Cada vista representan al sistema desde una cierta perspectiva

Para cada vista, se define un diagrama Una vista es una descripción de un sistema desde una

perspectiva particular

Page 4: Introducción a UML y Diagrama de Casos de Uso

4

Vistas y Diagramas de UMLVistas y Diagramas de UML

Use CaseDiagramsUse Case

DiagramsDiagrama de Casos de Uso

StateDiagramsState

DiagramsDiagrama de Clases

Diagramas

StateDiagramsState

DiagramsDiagrama de Objeto

EstáticaScenarioDiagramsScenario

DiagramsDiagrama de Actividad

ScenarioDiagramsScenario

DiagramsDiagrama de Secuencia

Use CaseDiagramsUse Case

Diagrams Diagrama de Estados

Interacción

ComponentDiagramsComponent

DiagramsDiagrama deComponentes

ComponentDiagramsComponent

DiagramsDiagrama de Despliegue

Implementación

Diagrama de Colaboración

Actividad

Page 5: Introducción a UML y Diagrama de Casos de Uso

5

Vistas y Diagramas de UMLVistas y Diagramas de UML

Use CaseDiagramsUse Case

DiagramsDiagrama de Casos de Uso

StateDiagramsState

DiagramsDiagrama de Clases

Diagramas

StateDiagramsState

DiagramsDiagrama de Objeto

EstáticaScenarioDiagramsScenario

DiagramsDiagrama de Actividad

ScenarioDiagramsScenario

DiagramsDiagrama de Secuencia

Use CaseDiagramsUse Case

Diagrams Diagrama de Estados

Interacción

Dinámica

ComponentDiagramsComponent

DiagramsDiagrama deComponentes

ComponentDiagramsComponent

DiagramsDiagrama de Despliegue

Implementación

Diagrama de Colaboración

Actividad

Describe las funcionalidades

del sistema a partir de las interacciones del usuario

Modela los conceptos del dominio de la aplicación:

describe el sistema identificando sus objetos,

clases y relaciones

Describe la evolución delos objetos (los cambios de estado del objeto en

su tiempo de vida)

Describe el flujo detrabajo,

muestra las actividades, su secuenciamiento y

coordinación

Describe la interacciónentre los objetos,

ordenada en el tiempoo

en un período de tiempo

Describe la interacción entre componentes de

software

Describe la disposición de instancias de

componentes de ejecución en instancias de nodos

Page 6: Introducción a UML y Diagrama de Casos de Uso

6

Modelo de Casos de UsoModelo de Casos de Uso

Describe lo que el sistema debe hacer y bajo que restricciones

Captura los requisitos funcionalesrequisitos funcionales y el ambiente del sistema

especifican una acción que el sistema debe ejecutar

Permite comprender y describir los requisitos del sistema.

Page 7: Introducción a UML y Diagrama de Casos de Uso

7

Modelo de casos de usoModelo de casos de uso

Especifica el comportamiento de un sistema Describe la secuencia de interacciones y los

resultados observable por un actor Captura el comportamiento del sistema (el qué)

omitiendo la implementación del comportamiento (el cómo)

Identifica las funcionalidades visibles al usuario

Page 8: Introducción a UML y Diagrama de Casos de Uso

8

Modelo de Casos de UsoModelo de Casos de Uso(Componentes)(Componentes)

Actor Es una entidad externa con un

comportamiento que interactúa con el sistema en desarrollo

• una persona• otro sistema• una organización

utiliza el sistema cuando interactúa para iniciar un caso de uso.

actor

Page 9: Introducción a UML y Diagrama de Casos de Uso

9

Modelo de Casos de UsoModelo de Casos de Uso(Componentes)(Componentes)

Casos de Uso especifica una secuencia de

acciones, incluyendo sus variantes, que el sistema puede realizar cuando es requerido por un actoractor y produce un resultado observable válido para ese actoractor particular.

caso de uso

Page 10: Introducción a UML y Diagrama de Casos de Uso

10

Modelo de Casos de UsoModelo de Casos de UsoEspecificaciónEspecificación

Diagrama de casos de uso muestra un conjunto de casos de uso

y actores con una asociación entre cada par actor/caso de uso.

describe una parte del modelo de casos de uso.

Page 11: Introducción a UML y Diagrama de Casos de Uso

11

Diagrama de Casos de Uso: ComponentesDiagrama de Casos de Uso: Componentes

Actor: entidad externa que interactúa con el sistema activando los casos de uso

Caso de uso: secuencia de transacciones iniciadas por un actor y que constituye una funcionalidad del sistema

La notación UML

A

B

ActoresCasos de uso

usuario2

usuario1

Page 12: Introducción a UML y Diagrama de Casos de Uso

12

Diagrama de Casos de Uso: Diagrama de Casos de Uso: ComponentesComponentes

La notación UML

curso

estudiante

profesor

Realizar exámen

2

Prepararexámen

1

Participación de un actor en un caso de uso

Page 13: Introducción a UML y Diagrama de Casos de Uso

13

Diagrama de Casos de UsoDiagrama de Casos de UsoNotaciónNotación

nombre del caso de uso

número del caso de uso

nombre del sistema

Nombre del actor

Nombre del actor

Participación de un actor en un caso de

uso

nombre del caso de uso

número del caso de uso

Page 14: Introducción a UML y Diagrama de Casos de Uso

14

¿Cómo determinar los Casos de Uso?¿Cómo determinar los Casos de Uso?

SISTEMA

¿Sistema?

Page 15: Introducción a UML y Diagrama de Casos de Uso

17

¿Cómo determinar los Casos de Uso?¿Cómo determinar los Casos de Uso?

SISTEMA

Actor

¿Qué quiere el actor?, ¿metas?, ¿Objetivos?

Page 16: Introducción a UML y Diagrama de Casos de Uso

18

¿Cómo determinar los Casos de Uso?¿Cómo determinar los Casos de Uso?

SISTEMA

Actor

Esto

Page 17: Introducción a UML y Diagrama de Casos de Uso

19

¿Cómo determinar los Casos de Uso?¿Cómo determinar los Casos de Uso?

Actor

Ahora defino los casos de uso

caso de uso B

caso de uso A

Page 18: Introducción a UML y Diagrama de Casos de Uso

21

Diagrama de Casos de UsoDiagrama de Casos de UsoRelacionesRelaciones

Relaciones entre actores y casos de usoAsociación

Relaciones entre casos de uso:Extensión (<<extend>>)Generalización Inclusión (<<include>>)

Relaciones entre actores:Generalización

Page 19: Introducción a UML y Diagrama de Casos de Uso

22

Diagrama de Casos de UsoDiagrama de Casos de UsoRelaciones entre Relaciones entre Actores y CActores y Casos de asos de UUsoso

Asociación

Relaciona la participaciónde

un actor en

un caso de usoIr al cine

Actor Caso de uso

Page 20: Introducción a UML y Diagrama de Casos de Uso

23

Diagrama de Casos de UsoDiagrama de Casos de Uso

En la relación de Asociación puede indicarse la cardinalidad

Ir al cine

Actor Caso de uso

1 *

Page 21: Introducción a UML y Diagrama de Casos de Uso

24

Diagrama de Diagrama de CCasos de asos de UUso so Relaciones entre Relaciones entre ccasos de asos de uusoso

Extensión (<<extend>>)

Inclusión (<<include>>)

Generalización

Relación que define uncurso alterno opcional(dependiendo de una

condición)de otro caso de uso

Page 22: Introducción a UML y Diagrama de Casos de Uso

25

Relaciones «extend» e «include» Relaciones «extend» e «include»

A

B

<<extends>>

C<<include>>

“A incluye C”: una instancia de A siempre incluye el comportamiento especificado por C

“B es una extensión de A” : una instancia del caso de uso A puede incluir el comportamiento especificado por B

Page 23: Introducción a UML y Diagrama de Casos de Uso

26

Diagrama de Casos de UsoDiagrama de Casos de UsoRelación «extend»Relación «extend»

Relación extend: Es una asociación que especifica un comportamiento adicional de un caso de uso, describe un curso alterno y opcional (la extensión) de otro caso de uso (base).

Ir al cine

Comprar cotufa

<<extend>>si tengo dinero

1. El caso de uso que extiende apunta al caso de uso base

2. La condición y el punto de extensión pueden ser mostrados en la línea

Page 24: Introducción a UML y Diagrama de Casos de Uso

27

Diagrama de Casos de UsoDiagrama de Casos de UsoRelación «extend»Relación «extend»

Relación extend: el caso de uso Ir al cine puedepuede incluir el comportamiento especificado en el caso de uso Comprar cotufa

Ir al cine

Comprar cotufa

<<extend>>si tengo dinero

1. El caso de uso que extiende apunta al caso de uso base

2. La condición y el punto de extensión pueden ser mostrados en la línea

el funcionamiento del caso de uso Ir al cine puede serpuede ser extendido con el funcionamiento del caso de uso Comprar cotufa

Page 25: Introducción a UML y Diagrama de Casos de Uso

30

Diagrama de Casos de UsoDiagrama de Casos de UsoRelación «extend»Relación «extend»

¿Cuándo usarla? En partes opcionales de un caso de uso Cursos alternativos que raramente ocurren Cursos separados que son ejecutados

bajo ciertas condiciones En situaciones donde se puede

seleccionar entre diferentes alternativas.

Page 26: Introducción a UML y Diagrama de Casos de Uso

31

Diagrama de casos de uso: Diagrama de casos de uso: Relaciones entre Relaciones entre CCasos de asos de UUsoso

Relación que define una instancia de un

caso de uso como un cursoobligatorio en otro

caso de uso

Extensión (<<extend>>)

Inclusión (<<include>>)

Generalización

Page 27: Introducción a UML y Diagrama de Casos de Uso

32

Diagrama de Casos de UsoDiagrama de Casos de Usorelación «include»relación «include»

Relación include:

Es una asociación que relaciona cursos fuertemente acoplados que conforman el curso completo del caso de uso base

el caso de uso Ir al cine siempresiempre incluye el compor-tamiento especificado en el caso de uso Comprar entrada

Ir al cine Comprar entrada

<<include>>

1. El caso de uso base apunta al caso de uso incluido

Page 28: Introducción a UML y Diagrama de Casos de Uso

34

Relaciones entre Relaciones entre CCasos de asos de UUsosorelación «include»relación «include»

¿Cuándo usarla?¿Cuándo usarla? Para particionar un caso de uso complejo

en los casos de usos constitutivos

Cuando se quiere separar una funcionalidad en un caso de uso

Para evitar la repetición de casos de uso.

Page 29: Introducción a UML y Diagrama de Casos de Uso

35

Diagrama de casos de uso: Diagrama de casos de uso: Relaciones entre Relaciones entre CCasos de asos de UUsoso

Relación que define una especialización de un caso de uso (o de un actor)

Extensión (<<extend>>)

Inclusión (<<include>>)

Generalización

Page 30: Introducción a UML y Diagrama de Casos de Uso

36

Relaciones entre Relaciones entre CCasos de asos de UUsoso: : Comparación Comparación «include»«include» / / ««extendextend»»

Diferentes intencionesDiferentes intencionesInclude

permite extraer un comportamiento común o aislar funcionalidades

en general los actores no están relacionados con el caso de uso aislado

Extend permite extraer variantes de un curso normal el actor está relacionado con el caso de uso

base

Page 31: Introducción a UML y Diagrama de Casos de Uso

37

Relaciones entre Relaciones entre CCasos de asos de UUsosoIndique las relacionesIndique las relaciones

responderexámen

ir al baño

colocar identificación

al exámen

pediraclaratoria

solicitarexámen

leerexámen

entregarexámen

estudiante

Utilizar calculadora

buscar Calificación

Tarea 1

Page 32: Introducción a UML y Diagrama de Casos de Uso

38

Relaciones entre Relaciones entre CCasos de asos de UUsoso: : Reacomode e Indique las relacionesReacomode e Indique las relaciones

Solicitar examen

estudiante

Buscar Calificación

leer

exámen <<include>>

colocar identificación

al exámen

<<include>>responder

exámen <<include>>

entregar

exámen <<include>>

pediraclaratoria

<<extend>>

Utilizar

calculadora

<<extend>>

ir al baño

<<extend>>

Page 33: Introducción a UML y Diagrama de Casos de Uso

39

Diagrama de casos de uso: Diagrama de casos de uso: Relaciones entre actoresRelaciones entre actores

Generalización Un actor es una instancia de otro actor

estudiantepersona

una persona es una generalización de un estudiante