Introducción a UML y Diagrama de Casos de Uso

Preview:

Citation preview

1

UnifiedModelingLanguage

Lenguaje de Modelación Unificado

Modelo 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)

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

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

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

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.

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

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

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

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.

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

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

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

14

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

SISTEMA

¿Sistema?

17

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

SISTEMA

Actor

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

18

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

SISTEMA

Actor

Esto

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

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

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

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 *

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

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

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

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

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.

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

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

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.

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

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

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

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>>

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

Recommended