220 likes | 332 Views
TECNICATURA UNIVERSITARIA EN INFORMATICA. SISTEMAS II. UNIDAD Nº 5. DIAGRAMA DE CASOS DE USOS. Los casos de uso describen bajo la forma de acciones y reacciones el comportamiento de un sistema desde el punto de vista del usuario Permiten definir: Los límites del sistema y
E N D
TECNICATURA UNIVERSITARIA EN INFORMATICA SISTEMAS II UNIDAD Nº 5 DIAGRAMA DE CASOS DE USOS
Los casos de uso describen bajo la forma de acciones y reacciones el comportamiento de un sistema desde el punto de vista del usuario • Permiten definir: • Los límites del sistema y • Las relaciones entre el sistema y el entorno (usuarios u otras aplicaciones).
Actor • Es un usuario del sistema, que necesita o usa algunos de los casos de uso. • Es una idealización de una persona externa, proceso o de una cosa que interactúa con el sistema, subsistema o una clase. • Cada actor define un rol que los usuarios de un sistema asumen cuando interactúan con el mismo. Actor: notación para UML
Las instancias de actores se comunican con el sistema mediante el envío y recepción de instancias de mensajes (señales y llamadas), desde y hacia instancias de casos de uso y en el nivel de realización, desde y hacia los objetos que implementan el caso de uso. • ■ Un actor puede listar el conjunto de señales que envía y recibe, y mantener una lista de interfaces que ofrece y requiere. • ■ Las interfaces de un actor restringen las clases con las que pueda corresponderse (que puedan implementar su comportamiento). • ■ Un actor puede tener una lista de atributos que caracterizan su estado.
Existen cuatro grandes categorías de actores: • Los actores principales. Esta categoría agrupa a las personas que utilizan las funciones principales del sistema. • Los actores secundarios. Esta categoría agrupa a las personas que efectúan tareas administrativas o de mantenimiento. • El material externo. Esta categoría agrupa los dispositivos materiales imprescindibles que forman parte del ámbito de la aplicación y que deben ser utilizados. • Los otros sistemas. Esta categoría agrupa los sistemas con los que el sistema debe interactuar.
Generalización de actores: • Modelización de aspectos comunes, los actores descendientes heredarán los roles y relaciones con casos de uso del actor • antecesor. • Una instancia de un actor descendiente siempre se puede utilizar en aquellos casos en los que se espera una instancia del actor antecesor (principio de capacidad de sustitución). • Un descendiente incluye los atributos y operaciones de sus antecesores.
Caso de uso • Es: • • Una unidad coherente de funcionalidad, • Externamente visible, • • Proporcionada por una unidad del sistema y • • Expresada por secuencias se mensajes intercambiados por la unidad del sistema o y uno o más actores. • La definición de un caso de uso incluye todo el comportamiento que implica: • Las líneas principales, • Las diferentes variaciones del comportamiento adicional y • Todas las condiciones excepcionales junto con la respuesta deseada. • ■ Desde el punto de vista del usuario éstas pueden ser situaciones anormales. • ■ Desde el punto de vista del sistema son variaciones adicionales que deben ser descriptas y manejadas.
Cada uno de los casos de uso debe tener un resultado de valor • El resultado de valor nos da la funcionalidad. • El comportamiento del caso de uso se corresponde con las transiciones y operaciones de las clases. • Una colaboración es una realización de un caso de uso. • Los casos de uso pueden tener características y relaciones. • Características: • Un caso de uso es un clasificador y por lo tanto tiene atributos y operaciones. • Atributos: estado; • Operaciones: bloque de trabajo.
Relaciones: • Asociaciones con actores • Asociación con otros casos de uso • Asociaciones con actores • La relación de comunicación (communicates). • Relación entre un actor y un caso de uso, denota la participación del actor en el caso de uso determinado. • Un actor puede comunicarse con varios casos de uso (es decir, el actor puede solicitar servicios diferentes del sistema y un caso de uso puede comunicarse con uno o más actores cuando les proporciona sus servicios).
Asociación con otros casos de uso • La relación de generalización: • Relaciona un caso de uso especializado con otro más general. • El hijo hereda los atributos operaciones y secuencias de comportamiento del padre y puede agregar atributos y operaciones propios. • El caso de uso hijo añade comportamiento al caso de uso padre insertando secuencias de acción adicionales en la secuencia del padre en puntos arbitrarios. • Todas las relaciones de inclusión o extensión con el caso de uso hijo, modifican también efectivamente el comportamiento heredado del padre.
Asociación con otros casos de uso • La relación de extensión : • Es una dependencia estereotipada en la que el caso de uso cliente añade un comportamiento incremental al caso de uso base mediante la inserción de secuencias de acción adicionales a la secuencia base. • La relación de inclusión: • Es una dependencia estereotipada que denota la inclusión de la secuencia de comportamiento del caso de uso proveedor en la secuencia de interacción de un caso de uso cliente. • Se trata de una dependencia, no de una generalización, porque el caso de uso proveedor no puede ser reemplazado en aquellos casos en que aparece el caso de uso cliente.
Escenarios • Un escenario es una secuencia de acciones que ilustra un comportamiento. • Se puede utilizar para ilustrar la interacción o ejecución de una instancia de caso de uso. • Se describe en términos de informaciones intercambiadas y de etapas en la manera de utilizar el sistema. • Un caso de uso agrupa una familia de escenarios de uso según un criterio funcional
Reglas de implementación de los casos de uso • Un caso de uso describe no sólo la funcionalidad o una motivación, sino también una interacción entre un actor y un sistema bajo la forma de un flujo de eventos. • La descripción de la interacción se concentra sobre lo que debe hacerse en el caso de uso, no sobre la manera de hacerlo • Un caso de uso debe ser simple. No hay que dudar en fragmentar un caso de uso si las interacciones se hacen demasiado complejas, o bien si las partes resultan ser independientes. • No mezclar los casos de uso; los actores y las interacciones de otro caso de uso no deben ser mencionadas en la descripción. • Los casos de uso deben evitar el empleo de expresiones borrosas e imprecisas, construidas a partir de palabras como: mucho más, más bien, suficientemente, bastante, etc.
La descripción de un caso de uso comprende los siguientes elementos: • El inicio del caso de uso. • El fin del caso de uso. • La interacción entre el caso de uso y los actores. • Los intercambios de informaciones. • La cronología y el origen de las informaciones • Las repeticiones de comportamiento. • Las situaciones opcionales • El inicio del caso de uso • Llamado también evento que desencadena el caso de uso; • Debe ser claramente estipulado en la frase siguiente: • «el caso de uso empieza cuando X se produce»;
El fin del caso de uso • Es decir, el evento que causa la parada del caso de uso; • Debe identificarse claramente y documentarse con la frase: • «cuando Y se produce, el caso de uso ha terminado»; • La interacción entre el caso de uso y los actores • Que describe claramente lo que es en el sistema y lo que es fuera del sistema; • Los intercambios de informaciones • Que corresponden a los parámetros de las interacciones entre el sistema y los actores. • Se recomienda una formulación no informática, por ejemplo: • «el usuario se conecta al sistema y da su nombre y su palabra clave»;
La cronología y el origen de las informaciones • Que describen cuándo el sistema necesita informaciones internas o externas y • Cuándo los guarda en el interior o en el exterior; • Las repeticiones de comportamiento • Que pueden describirse por medio de pseudocódigo, con construcciones del tipo:
Las situaciones opcionales • Que deben representarse de manera uniforme en todos los casos de uso; • Las diferentes opciones deben aparecer claramente según la formulación: • «El actor elige uno de los elementos siguientes, eventualmente varias veces seguidas: • opción X • opción Y • opción Z • luego el actor prosigue...»
Comportamiento de un caso de uso • La secuencia de comportamiento de un caso de uso puede describirse mediante: • Una máquina de estados • Un grafo de actividades • Escenarios o un texto normal • Realización de un caso de uso • La realización de un caso de uso se puede especificar mediante un conjunto de colaboraciones. • Una colaboración describe la implementación del caso de uso por parte de objetos del clasificador que describe ese caso de uso. • Cada colaboración describe el contexto entre constituyentes del sistema dentro del cual se produce una o más secuencias de interacción
Las acciones descriptas en caso de uso deben ser ubicadas en objetos que colaboran entre si para implementar la funcionalidad. • Un sistema se puede especificar con casos de uso en diferentes niveles de abstracción • Esta realización por capas da lugar a un conjunto anidado de casos de uso y colaboraciones que implementan todo el sistema.