Modelado de Requisitos Esenciales en Ingeniería de Software: Casos de Uso y Clases de Dominio

njZJiAmEVZJ18j+D3fPQt6CY0YaAAAAAElFTkSuQmCC

Diagrama de Casos de Uso (DCU)

Un Diagrama de Casos de Uso (DCU) sirve para representar un conjunto de casos de uso y los actores que se relacionan con ellos. Este tipo de diagramas se genera para mostrar las relaciones entre actores y casos de uso, así como las relaciones entre los propios casos de uso. Es importante destacar que un DCU no representa la secuencia de ejecución de los casos de uso; es decir, no indica si un caso se ejecuta antes o después de otro. Su función principal es mostrar las relaciones existentes entre los casos de uso y los actores.

Caso de Uso

  • Cada caso de uso define una forma particular de usar el sistema.
  • Cada caso de uso constituye un flujo completo de eventos que especifican la interacción entre el actor y el sistema.
  • La identificación de casos de uso es un proceso iterativo, que implica múltiples revisiones hasta alcanzar una solución final estable. Una vez identificados, cada caso de uso debe describirse con mayor detalle.

Escenarios

Los escenarios se refieren a las variantes de ejecución dentro de un caso de uso. Por ejemplo, en un sistema de conmutación telefónica, un actor podría ser un suscriptor, y un caso de uso típico sería ‘Hacer una llamada local’. El caso de uso comienza cuando el suscriptor levanta el teléfono, pero en ese momento, no se sabe qué «opción de servicio» desea solicitar.

Tipos de Actores

Un actor comúnmente representa a un usuario que interactúa con un caso de uso, pero también podría representar a un sistema externo o una base de datos a la cual el caso de uso accede.

Notación para la Construcción de un DCU

Cada caso de uso dentro de un DCU se representa por una elipse con el nombre del caso en su interior o debajo. Cada actor se representa por una figura de ‘muñeco de palo’ (stick figure) con el nombre del actor debajo.

vaiCJotte1MAAAAASUVORK5CYII=

Modelo de Contenido

El Modelo de Contenido contiene elementos estructurales que proporcionan una visión esencial de los requisitos de contenido de una aplicación web (WebApp).

Elementos Estructurales

  • Objetos de contenido
  • Clases de análisis

Objeto de Contenido

Un Objeto de Contenido es cualquier componente de información cohesiva que se presentará a un usuario final. Usualmente, los objetos de contenido se extraen de los casos de uso.

  • Una lista de objetos de contenido con su descripción y jerarquía.

Ejemplos: texto, imágenes, gráficos, fotografías, video, audio.

Pasos para el Objeto de Contenido

  1. Identificar
  2. Definir
  3. Relacionar y jerarquizar

Clases de Análisis

Las Clases de Análisis son entidades visibles para el usuario que se crean o manipulan conforme este interactúa con la WebApp.

Cada clase está compuesta por:

  • Atributos que describen la clase.
  • Operaciones que definen su comportamiento.
  • Colaboraciones (definen la colaboración con otras clases de análisis).

Identificación de Clases de Análisis

Se identifican al examinar el enunciado del problema o al realizar un análisis gramatical sobre las narrativas desarrolladas para el sistema a construir o a partir de los casos de uso. Las clases se determinan al subrayar cada sustantivo relevante e introducirlos en una tabla simple.

Diferentes Formas de las Clases de Análisis

  • Entidades externas: (ej. otros sistemas, dispositivos, personas) que producen o consumen información utilizada por un sistema basado en computadora.
  • Cosas: (ej. reportes, despliegues, documentos, señales) que forman parte del dominio de información del problema.
  • Sucesos o eventos: (ej. transferencia de propiedad o la consecución de una serie de movimientos de robot) que ocurren durante la operación del sistema.
  • Roles: (ej. gerente, ingeniero, personal de ventas) que interactúan con el sistema.
  • Unidades organizacionales: (ej. división, grupo, equipo) relevantes para la aplicación.
  • Sitios: (ej. planta de manufactura o puerto de carga) que establecen el contexto del problema y la función global del sistema.
  • Estructuras: (ej. sensores, vehículos, computadoras) que definen una clase de objetos relacionados.

Pasos para las Clases de Análisis

  1. Identificación de clases de análisis.
  2. Clases de análisis candidatas (aplicando una serie de reglas).
  3. Identificar asociaciones: Se pueden analizar los textos de los casos de uso y la formulación del problema para localizar frases que relacionen las clases ya identificadas. Alternativamente, se pueden especificar estas asociaciones de manera simple, basándose en el conocimiento del dominio del problema. Ejemplos: Un vuelo requiere reservaciones. Un vuelo se dirige a un aeropuerto. Un vuelo contiene tarifas. Un vuelo se efectúa en un avión. Un vuelo tiene asientos. Un vuelo pertenece a una aerolínea. Un vuelo tiene un horario.
  4. Construir el diagrama de clases: Cada cuadro representa una clase. Una clase en un diagrama de clases puede representarse inicialmente sin atributos ni operaciones.
  5. Identificar atributos: Ejemplos: Vuelo (Número), Reservación (Clave).
  6. Elaborar el diccionario de datos y el diagrama de clases de dominio (diagrama de clases de análisis con atributos y cardinalidad).

r5ijIgmJjJBnCgZpv4fj+FSl3Tzqr8AAAAASUVORK5CYII=

Análisis de una WebApp

El producto del proceso de análisis de aplicaciones web es un modelo de análisis. Este modelo contiene elementos estructurales y dinámicos.

Elementos Estructurales

Los elementos estructurales identifican las clases de análisis y los objetos de contenido necesarios para crear una WebApp que satisfaga las necesidades de los clientes.

Elementos Dinámicos

Los elementos dinámicos describen cómo interactúan los elementos estructurales entre sí y con los usuarios finales.

Modelo de Contenido

El modelo de contenido está conformado por una serie de elementos estructurales del modelo de análisis, específicamente, objetos de contenido y clases de análisis.

Objeto de Contenido

De acuerdo con lo anterior, un objeto de contenido puede definirse como un elemento estructural del modelo de análisis de la WebApp. Ejemplos: texto, imágenes, gráficos, fotografías, video, audio.

Clase de Análisis

Una clase de análisis es un elemento estructural del modelo de análisis de la WebApp. Cada clase de análisis define un conjunto de atributos que la describen, un conjunto de operaciones que definen su comportamiento, y un conjunto de colaboraciones que le permiten comunicarse con otras clases.

Identificación de los Objetos de Contenido y de las Clases de Análisis

El modelo de contenido (objetos de contenido y clases de análisis) se deriva de un examen cuidadoso de los casos de uso desarrollados para la WebApp. Los casos de uso se analizan gramaticalmente para extraer estos objetos de contenido y clases de análisis.

wf269MOXe4NJgAAAABJRU5ErkJggg==

Formato de tabla para relacionar casos de uso con clases de análisis.

azvJd52wVAAAAAElFTkSuQmCC

wfUi4PVoZhQ4AAAAABJRU5ErkJggg==

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.