Análisis empresarial: casos de uso
Uno de los nueve diagramas de UML es el diagrama de casos de uso. Estos no solo son requisitos importantes sino necesarios para los proyectos de software. Básicamente se utiliza en los ciclos de vida del software. Como sabemos, hay varias fases en el ciclo de desarrollo y la fase más utilizada para los casos de uso sería durante la fase de recopilación de requisitos.
¿Qué es un caso de uso?
Un caso de uso describe una secuencia de acciones, realizadas por un sistema que proporciona valor a un actor. El caso de uso describe el comportamiento del sistema bajo varias condiciones, ya que responde a una solicitud de una de las partes interesadas, llamadaprimary actor.
El actor es el Quién del sistema, es decir, el usuario final.
En la ingeniería de software y sistemas, un caso de uso es una lista de pasos, que típicamente definen interacciones entre un rol (conocido en UML como "actor") y un sistema, para lograr un objetivo. El actor puede ser un humano o un sistema externo.
Un caso de uso especifica el flujo de eventos en el sistema. Se preocupa más por lo que realiza el sistema para realizar la secuencia de acciones.
Beneficios de un caso de uso
Un caso de uso proporciona los siguientes beneficios:
Es un medio fácil de capturar el requisito funcional con un enfoque en el valor agregado para el usuario.
Los casos de uso son relativamente fáciles de escribir y leer en comparación con los métodos de requisitos tradicionales.
Los casos de uso obligan a los desarrolladores a pensar desde la perspectiva del usuario final.
El caso de uso involucra al usuario en el proceso de requisitos.
La anatomía de un caso de uso
Nombre : nombre descriptivo que ilustra el propósito del caso de uso.
Descripción : describe lo que hace el caso de uso en un par de oraciones.
Actor : enumere todos los actores que participan en el caso de uso.
Precondición : condiciones que deben cumplirse antes de iniciar el caso de uso.
Flujo de eventos : Descripción de la interacción entre el sistema y el actor.
Condición posterior : describa el estado del sistema después de que un caso de uso haya seguido su curso.
Orientación para la plantilla de caso de uso
Documente cada caso de uso utilizando la plantilla que se proporciona al final de este capítulo. Esta sección proporciona una descripción de cada sección en la plantilla de caso de uso.
Identificación de casos de uso
Use-Case ID- Asigne a cada caso de uso un identificador numérico único, en forma jerárquica: XY Los casos de uso relacionados se pueden agrupar en la jerarquía. Los requisitos funcionales se pueden rastrear hasta un caso de uso etiquetado.
Use-Case Name- Indique un nombre conciso y orientado a resultados para el caso de uso. Estos reflejan las tareas que el usuario necesita poder realizar utilizando el sistema. Incluya un verbo de acción y un sustantivo. Algunos ejemplos:
Vea la información del número de pieza.
Marque manualmente la fuente de hipertexto y establezca un enlace al destino.
Realice un pedido de un CD con la versión de software actualizada.
Historial de casos de uso
Aquí, mencionamos los nombres de las personas que son las partes interesadas del documento de caso de uso.
Created By - Proporcione el nombre de la persona que documentó inicialmente este caso de uso.
Date Created - Introduzca la fecha en la que se documentó inicialmente el caso de uso.
Last Updated By - Proporcione el nombre de la persona que realizó la actualización más reciente a la descripción del caso de uso.
Date Last Updated - Introduzca la fecha en la que se actualizó el caso de uso por última vez.
Definición de caso de uso
Las siguientes son las definiciones de los conceptos clave del caso de uso:
Actor
Un actor es una persona u otra entidad externa al sistema de software que se especifica que interactúa con el sistema y realiza casos de uso para realizar tareas. Los diferentes actores a menudo se corresponden con diferentes clases de usuarios, o roles, identificados en la comunidad de clientes que utilizarán el producto. Nombre los actores que realizarán este caso de uso.
Descripción
Proporcione una breve descripción del motivo y el resultado de este caso de uso, o una descripción de alto nivel de la secuencia de acciones y el resultado de la ejecución del caso de uso.
Condiciones previas
Enumere las actividades que deben realizarse, o las condiciones que deben cumplirse, antes de que se pueda iniciar el caso de uso. Numere cada condición previa.
Examples
- Se ha autenticado la identidad del usuario.
- La computadora del usuario tiene suficiente memoria libre disponible para iniciar la tarea.
Condiciones de publicación
Describe el estado del sistema al final de la ejecución del caso de uso. Numere cada condición de publicación.
Examples
- El documento contiene solo etiquetas SGML válidas.
- El precio del artículo en la base de datos se ha actualizado con un nuevo valor.
Prioridad
Indique la prioridad relativa de implementar la funcionalidad requerida para permitir que se ejecute este caso de uso. El esquema de prioridad utilizado debe ser el mismo que el utilizado en la especificación de requisitos de software.
Frecuencia de uso
Estime la cantidad de veces que los actores realizarán este caso de uso por unidad de tiempo apropiada.
Curso normal de eventos
Proporcione una descripción detallada de las acciones del usuario y las respuestas del sistema que tendrán lugar durante la ejecución del caso de uso en condiciones normales y esperadas. Esta secuencia de diálogo conducirá finalmente a lograr el objetivo establecido en el nombre y la descripción del caso de uso. Esta descripción puede escribirse como una respuesta a la pregunta hipotética: "¿Cómo <logro la tarea indicada en el nombre del caso de uso>?" Esto se hace mejor como una lista numerada de acciones realizadas por el actor, alternando con las respuestas proporcionadas por el sistema.
Cursos alternativos
Documente otros escenarios de uso legítimos que pueden tener lugar dentro de este caso de uso por separado en esta sección. Indique el curso alternativo y describa las diferencias en la secuencia de pasos que se llevan a cabo. Numere cada curso alternativo utilizando el ID de caso de uso como prefijo, seguido de "AC" para indicar "Curso alternativo". Ejemplo: XYAC.1.
Excepciones
Describa cualquier condición de error anticipada que podría ocurrir durante la ejecución del caso de uso y defina cómo el sistema responderá a esas condiciones. Además, describa cómo responderá el sistema si la ejecución del caso de uso falla por alguna razón no anticipada. Numere cada excepción utilizando el ID de caso de uso como prefijo, seguido de "EX" para indicar "Excepción". Ejemplo: XYEX.1.
Incluye
Enumere cualquier otro caso de uso que esté incluido ("llamado") por este caso de uso. La funcionalidad común que aparece en múltiples casos de uso se puede dividir en un caso de uso separado que está incluido por aquellos que necesitan esa funcionalidad común.
Requisitos especiales
Identifique cualquier requisito adicional, como requisitos no funcionales, para el caso de uso que pueda necesitar ser abordado durante el diseño o la implementación. Estos pueden incluir requisitos de desempeño u otros atributos de calidad.
Supuestos
Enumere todas las suposiciones que se hicieron en el análisis que llevaron a aceptar este caso de uso en la descripción del producto y escribir la descripción del caso de uso.
Notas y problemas
Enumere cualquier comentario adicional sobre este caso de uso o cualquier problema pendiente restante o TBD (por determinar) que deba resolverse. Identifique quién resolverá cada problema, la fecha de vencimiento y cuál es la resolución en última instancia.
Gestión de cambios y control de versiones
El control de versiones es la gestión de cambios en documentos, grandes sitios web y otra recopilación de información. Los cambios generalmente se identifican mediante un código numérico o de letra, denominado número de revisión o nivel de revisión. Cada revisión está asociada con una marca de tiempo y una persona que realiza el cambio.