ingeniería del software i 2er. cuatrimestre 2002 casos de uso gustavo pifarre

39
Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Upload: herminia-cruz

Post on 23-Jan-2016

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I

2er. Cuatrimestre 2002Casos de Uso

Gustavo Pifarre

Page 2: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

2

Agenda

Introdución: Qué es un caso de uso?Los casos de usos en el contexto de la

captura de requerimeintosArtefactosPerfiles de trabajoFlujo de trabajo

Page 3: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

3

Casos de Uso

Un sistema de software tiene sentido para dar servicios a sus usuarios. Los casos de usos son una herramienta para especificar los requisitos de un sistema mediante la descripción de los servicios que presta

Un caso de uso es un fragmento de funcionalidad que proporciona al usuario un resultado importante

Page 4: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

4

Casos de Uso

El caso de uso se plantea desde el punto de vista del usuario, desde sus necesidades, su interacción y su propia evaluación de importancia

Los casos de uso pueden dirigir el proceso de desarrollo. Guían el diseño, la implementación y la prueba del sistema

Page 5: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

5

Casos de Uso

Usuario hace referencia a alguien o algo que interactua con el sistema.

Los requisitos reales son aquellos que agregan valor a los usuarios del sistema

Page 6: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

6

Captura de requerimientos

Enumerar los requerimientos candidatosComprender el contexto del sistema

Modelado del dominio Modelado del negocio

Capturar requerimientos funcionalesCapturar requerimientos no funcionales

Page 7: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

7

Captura de requerimientos

El objetivo es desarrollar un modelo del sistema que se va a construir

Los casos de uso son una forma adecuada de crear ese modelo

Los requerimientos funcionales se estructuran naturalmente como casos de uso

Los requerimientos no funcionales están asociados en general a un caso de uso

Page 8: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

8

Artefactos

Modelo de Casos de Uso Casos de Uso Los actores Descripción de Arquitectura Glosario Prototipo de interfaz de usuario

Page 9: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

9

Modelo de casos de uso

Es el acuerdo entre los desarrolladores y el cliente

Es un modelo que contiene Actores Casos de uso Sus relaciones

Page 10: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

10

Actor

El modelo describe lo que hace el sistema para cada tipo de usuario

Cada tipo de usuario será representado con uno o mas actores

Cada sistema o dispositivo externo será representado con uno o mas actores

Los actores representan terceros fuera del sistema que colaboran con el sistema

Page 11: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

11

Actor

El entormo de un sistema es el conjunto de todos los actores

Los actores suelen corresponder con trabajadores

El rol del trabajador define lo que hace el trabajador en un proceso de negocio concreto

Dotamos a cada trabajador con un caso de uso del sistema para cada uno de sus roles

Page 12: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

12

Actor

El actor juega un papel por cada caso de uso con el que colabora

Una instancia de un actor es un usuario concreto que interactua con el sistema

Cualquier entidad que se ajuste a un actor puede actuar como una instancia del actor

Page 13: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

13

Casos de uso

Un caso de uso especifica una secuencia de acciones que el sistema puede llevar a cabo interactuando con sus actores, incluyendo alternativas dentro de la secuencia

Un caso de uso es una especificaciónEspecifica el comportamiento de cosas

dinámicas, de instancias de los casos de uso

Page 14: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

14

Descripción de Casos de uso

Un caso de uso tiene operaciones y atributos

Una descripción puede incluir: Diagrama de estado Diagrama de actividad Colaboraciones Diagramas de secuencia

Page 15: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

15

Descripción de Casos de uso

Los diagramas de estado especifican el ciclo de vida de las instancias de los casos de usos en terminos de estados y transiciones entre los estados

Cada transicion es una secuencia de acciones

Los diagramas de actividad describen el ciclo de vida con mas detalle describiendo la secuencia temporal de acciones dentro de una transición

Page 16: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

16

Descripción de Casos de uso

Los diagramas de colaboración y los de secuencia se emplean para describir las interaciones entre una instancia típica de un actor y la instancia típica de un caso de uso

La instancia de una caso es la realización ( o ejecución) de un caso de uso

Los atributos de un caso de uso representan los valores que una instancia de un caso de uso utiliza y manipula durante la ejecución de su caso de uso

Page 17: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

17

Propiedades del modelo

El único tipo de interacione en el modelo de casos de uso tiene lugar entre instancias de actores e instancias de casos de uso

Esto asegura que el modelo sea simple e intuitivo

Consideramos atómicas las instancias de los casos de uso

El comportamiento de cada caso de uso puede interpretarse independiente de los otros

Page 18: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

18

Descripción de Arquitectura

Contiene una vista de la arquitectura del modelo de casos de uso, que representa los casos de uso más significativos

Page 19: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

19

Glosario

Define términos comunes importantes que los analistas utilizan al describir el sistema

Page 20: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

20

Prototipo de Interfaz

Ayudan a comprender y especificar las interacciones entre actores humanos y el sistema

Page 21: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

21

Perfiles de trabajo

Page 22: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

22

Perfiles de trabajo

Es un puesto al cual se puede asignar una persona real. Una abstración de un ser humano con ciertas capacidades

Cada perfil tiene una descripción de sus responsabilidades Analista de Sistemas Especificado de casos de uso Diseñador de interfaz de usuario Arquitecto

Page 23: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

23

Analista de Sistemas

Es el responsible del conjunto de requisitos que están modelados en los casos de uso

El analista es el responsable de delimitar el sistema, encontrando los actores y los casos de uso, asegurando que el modelo es completo y consistente

Dirige el modelado y coordina la captura de requerimientos

Page 24: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

24

Especificador de casos de uso

Es el responsable de las descripciones detalladas de uno o más casos de uso

Page 25: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

25

Diseñador de interfaz de usuario

Dan forma visual a las interfaces de usuario

Esto puede implicar el el desarrollo de prototipos de interfaces de usuario para algunos casos de usos, uno por cada actor

Page 26: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

26

Arquitecto

Es el responsable de la vista de arquitectura del modelo de casos de uso

Page 27: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

27

Flujo de Trabajo

Page 28: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

28

Flujo de Trabajo

Encontrar actores y casos de usoPriorizar los casos de usoDetallar un caso de uso Prototipar la interfaz de usuario

Estructurar el modelo de casos de uso

Page 29: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

29

Encontrar actores y casos de uso

Identificamos los actores y los casos de uso para: Delimitar el sistema de su entorno Esbozar quién y qué (actores) interactuan con

el sistema, y que funcionalidad (casos de uso) se espera del sistema

Capturar y definir un glosario de términos comunes para la creación de descripciones detalladas de las funcionalidades del sistema ( es decir de los casos de uso)

Page 30: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

30

Encontrar actores y casos de uso

Esta actividad consta de cuatro pasos: Encontrar los actores Encontrar los casos de uso Describir brevemente cada caso de uso Describir el modelo de caso de uso completo

Page 31: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

31

Encontrar los actores

Depende del punto de partidaDos criterios para la elección

debe existir al menos un usuario que represente al actor candidato

debe existir coincidencia mínima entre los roles

El analista de sistemas da nombre a los actores y los describe brevemente

Debemos identificar los actores que representan sistemas externos y los actores para el manteniminto y operación del sistema

Page 32: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

32

Encontrar los casos de uso

El analista va repasando los actores y va proponiendo los casos de usos para cada actor

Elegimos un nombre para cada caso de uso de forma que nos haga pensar en la secuencia de acciones concreta que añade valor a un actor. El nombre empieza generalmente con un verbo, y debe reflejar cuál es el objeto de la iteracción entre el actor y el sistema

Recordar que un caso de uso entrega un resultado que se puede observar y que añade valor a un actor en concreto

Page 33: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

33

Encontrar actores y casos de uso

Esta actividad consta de cuatro pasos: Encontrar los actores Encontrar los casos de uso Describir brevemente cada caso de uso Describir el modelo de caso de uso completo

Page 34: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

34

Priorizar casos de uso

El propósito de esta actividad es determinar el grado de importancia de cada caso de usos, es decir cuales son: necesarios para el desarrollo en las primeras

iteraciones más importantes para la definición de la

arquitectura más exigentes en requerimiento no funcionales

Los resultados se recogen en la vista de arquitectura del modelo de casos de uso

Page 35: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

35

Detallar un caso de uso

Describe su flujo de sucesos en detalle, incluyendo cómo comienza, termina e interactua con los actores

El resultado de esta actividad es la descripción detallada de un caso de uso en particular en forma de texto y diagramas

Page 36: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

36

Estructura de la descripción

El caso de uso define los estados que las instancias de los casos de uso pueden tener y la posible transición entre estos estados

Elegir un camino básico completo y describir este camino en una seción de la descripción

En secciones separadas caminos alternativos o desviaciones del camino básico (significativo)

Page 37: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

37

Qué incluir en la descripción?

Estado inicial (precondición)Como y cuando comineza el caso de usoEl prden requerido en el que las acciones

se deben ejecutarComo y cuando terminanEstado finales (postcondición)Los caminos no permitidosDescripción de caminos alternativos

Page 38: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

38

Qué incluir en la descripción?

La interación del sistema con los usuarios y que cambios producen

La utilización de objetos, valores y recursos

Describir explicitamente que hace el sistema (y separar la responsabilidad de los actores)

Page 39: Ingeniería del Software I 2er. Cuatrimestre 2002 Casos de Uso Gustavo Pifarre

Ingeniería del Software I - 1er C. 2002

39

Estructurar el modelo de casos de uso

El modelo de casos de uso se estructura para: Extraer descripciones de funcionalidad generales y

compartidas que pueden ser utilizadas por descripciones más especificas (generalización)

Extraer descripciones de funcionalidad adicionales u opcionales que pueden extender descripciones más especificas (extensión)

El resultado de esta actividad es un modelo más facil de entender y de trabajar con él