Inicio > Análisis y diseño orientados a objetos con UML > Introducción a los casos de uso

Introducción a los casos de uso

Ya hemos realizado una entrevista al director de la empresa Canteras S.L y tenemos un nuestro poder un documento que especifíca los requisitos funcionales que debe tener el sistema software que desarrollemos.

Casos de uso

Una buena manera de comprender los requerimientos es creando casos de uso.

Un caso de uso es un documento narrativo que describe el comportamiento de un sistema desde el punto de vista de un actor. El actor es una entidad externa del sistema que participa en el caso de uso, suelen ser seres humanos o cualquier tipo de sistema.

Para entenderlo mejor vamos a poner un ejemplo. En nuestro caso de estudio podemos identificar a partir de los requerimientos el caso de uso Registrar empresa y el actor Usuario que es el que registrará la empresa en el sistema mediante una interfaz gráfica.

Un error común es identificar las operaciones o transacciones individuales como casos de uso. Un ejemplo de esto en nuestro caso de estudio es identificar la operación de comprobar si la empresa está registrada en la cantera como un caso de uso. Esa operación forma parte del caso de uso Registrar empresa, pero no es un caso de uso en sí.

Los casos de uso son descripciones amplias de un proceso de negocios, esta descripción abarca muchos pasos o transacciones.

Podemos identificar los casos de uso de nuestro sistema software a partir de los actores. Para ello primero identificamos a los actores y para cada actor vemos los procesos de negocios que inicia o en los que participa.

Diagramas de casos de uso

UML no especifica un formato para describir casos de uso. UML utiliza diagramas de casos de uso para explicar gráficamente un conjunto de casos de uso de un sistema, los actores y la relación entre estos y los casos de usos.

Formatos de casos de uso

Narrativamente podemos escribir un caso de uso en diferentes formatos y con diferentes niveles de detalle:

- Formato de alto nivel: Un caso de uso de alto nivel describe un proceso de negocios del sistema muy brevemente. Utilizamos este tipo de formato durante el examen inicial de los requerimientos para entender rapidamente la funcionalidad del sistema.

Una muestra de un caso de alto nivel:

Caso de uso: Registrar empresa
Actores:  Usuario
Tipo: Primario
Descripción: El usuario registra una empresa en el sistema rellenando los datos de la empresa. El sistema comprueba si la empresa existe. Sino existe registra la empresa en el sistema.

- Formato expandido: Un caso de uso expandido describe un proceso de negocios más a fondo que el de alto nivel. Durante la fase del análisis conviene escribir en este formato solo los casos más importantes.

Una muestra de dos casos expandidos:

Caso de uso: Registrar empresa
Actores:  Usuario
Propósito: Registrar una empresa en el sistema.
Tipo: Primario
Descripción: El usuario registra una empresa en el sistema rellenando los datos de la empresa. El sistema comprueba si la empresa existe.  Sino existe registra la empresa en el sistema.
Curso normal de los eventos:
1.El usuario introduce los datos de la empresa que quiere registrar.
2.El sistema busca entre las empresas registradas si existe una empresa con el mismo identificador.
3.El sistema informa al usuario que la empresa se ha registrado satisfactoriamente.
Cursos alternos:
Línea 3: El sistema informa al usuario que ya existe una empresa con el mismo identificador registrada en el sistema.
Caso de uso: Registrar vehículo
Actores:  Usuario
Propósito: Registrar un vehículo en el sistema.
Tipo: Primario
Descripción: El usuario registra un vehículo a una empresa en el sistema rellenando los datos del vehiculo. El sistema comprueba si el vehiculo existe.  Sino existe registra el vehiculo en el sistema.
Curso normal de los eventos:
1.El usuario introduce los datos del vehículo que quiere registrar.
2.El sistema muestra una lista de empresas registradas en el sistema
3.El usuario selecciona una empresa.
4.El sistema busca la empresa seleccionada y muestra los datos de la empresa.
5.El sistema busca en los vehiculos registrados si el vehiculo ya esta registrado en el sistema.
6.El sistema registra el vehiculo en la empresa y muestra un mensaje satisfactorio al usuario.
Cursos alternos:
Línea 6: El sistema no registra el vehiculo y muestra un mensaje informando al usuario que el vehiculo ya está registrado.

Caso esenciales de uso y casos reales de uso

Los casos esenciales de uso son casos que se expresan de forma muy abstracta, sin detalles de implementación. Los detalles de diseño se dejan para la etapa del diseño.

En la etapa del diseño veremos los casos reales de uso. Estos casos de uso describen concretamente el proceso de negocios con detalles de diseño y sujeto a tecnologías de entrada y salida, como por ejemplo la interfaz gráfica.

Casos de uso dentro de un proceso de desarrollo

En la fase de planificación y especificación de requerimientos (en la que estamos ahora) después de haber definido los requerimientos del sistema software estamos preparados para identificar los casos de uso.

1. Identificamos los actores y los casos de uso.
2. Escribimos los casos de uso en el formato de alto nivel.
3. Relacionamos los casos de uso.
4. Dibujamos un diagrama de casos de uso.
5. Escribimos en el formato expandido los casos de uso más importantes.

En la fase de análisis escribimos los casos esenciales de uso en formato expandido para los que todavía no lo hemos hecho.

En la fase de diseño escribimos los casos reales de uso a partir de los casos esenciales de uso de la fase del análisis.

RESUMEN

Ya hemos visto la teoría de los casos de estudio y ya estamos preparados para identificar los casos de uso de nuestro caso de estudio y de dibujar un diagrama de casos de uso que muestre las relaciones de los actores y los casos de uso de nuestro caso de estudio.

About these ads
  1. Miguel
    29 septiembre, 2010 en 6:05 | #1

    Amigo excelente…!!! justo lo que estaba buscando muchisimas gracias…

  2. 29 octubre, 2010 en 4:51 | #2

    Excelente explicación,

  3. Ezequiel
    5 junio, 2011 en 18:51 | #3

    Buenas amio… montarias elcodigo alguna vez? esta muy bueno tu programa…

    • 26 julio, 2011 en 14:46 | #4

      Uff, la verdad es que era muy novato cuando hice ese programa para la universidad, y con las prisas al final me quedo un churro. He aprendido mucho en los últimos años y no se si seguir esta serie de artículos, porque es una forma de desarrollar que ya no se estila mucho hoy en día. Me gustaría meterme más con desarrollo TDD, BDD, DDD. Pero buscaré el código del programita éste y lo colgaré si lo encuentro por ahí perdido en mis carpetas de la uni.

  1. Aún no hay trackbacks

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Conectando a %s

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 64 seguidores

%d bloggers like this: