Requisitos de Software y Modelado Visual con UML: Conceptos Clave y Diagramas Esenciales

Enviado por Comunidad Wikiteka y clasificado en Informática

Escrito el en español con un tamaño de 4,86 KB

Requisitos Funcionales y No Funcionales en Ingeniería de Software

Un requisito funcional define el comportamiento interno del software: cálculos, detalles técnicos, manipulación de datos y otras funcionalidades específicas que muestran cómo los casos de uso serán llevados a la práctica. Se complementan con los requisitos no funcionales.

Un requisito no funcional es, en la ingeniería de sistemas y la ingeniería de software, un requisito que especifica criterios que pueden usarse para juzgar la operación de un sistema en lugar de sus comportamientos específicos, ya que estos corresponden a los requisitos funcionales. Por tanto, se refieren a todos los requisitos que no describen información a almacenar ni funciones a realizar.

Lenguaje Unificado de Modelado (UML)

El Lenguaje Unificado de Modelado (UML) es el lenguaje de modelado de sistemas de software más conocido y utilizado en la actualidad; está respaldado por el OMG (Object Management Group).

Es un lenguaje gráfico para visualizar, especificar, construir y documentar un sistema. Se utiliza para definir un sistema, detallar sus artefactos, y para su documentación y construcción.

UML significa Lenguaje Unificado de Modelado; no es programación, solo permite diagramar la realidad de un requerimiento o su utilización.

Es una de las herramientas más emocionantes en el mundo actual del desarrollo de sistemas, ya que permite a los creadores de sistemas generar diseños que capturen sus ideas de forma convencional y fácilmente comprensible por otras personas.

UML cuenta con varios tipos de diagramas, los cuales muestran diferentes aspectos de las entidades representadas.

Tipos de Diagramas UML

Los diagramas UML se clasifican generalmente en dos categorías principales:

  • Diagramas Estructurales: Representan la estructura estática del sistema.
    • Diagrama de Clases
    • Diagrama de Objetos
    • Diagrama de Componentes
    • Diagrama de Despliegue
  • Diagramas de Comportamiento: Representan el comportamiento dinámico del sistema.
    • Diagrama de Casos de Uso
    • Diagrama de Estado
    • Diagrama de Actividad
    • Diagrama de Secuencia
    • Diagrama de Colaboración

Diagramas de Clases

Una clase es una categoría o grupo de cosas que tienen atributos y acciones similares.

Ejemplo: Lavadora.

  • Atributos: Marca, Modelo, S/N, etc.
  • Acciones: Agregar ropa, detergente, iniciar, secar la ropa, etc.

Diagramas de Casos de Uso

Un Caso de Uso es una técnica para capturar información de cómo un sistema o negocio funciona actualmente, o de cómo se desea que funcione. Es una técnica fundamental para la captura de requisitos.

Ejemplo: Un usuario utiliza una lavadora.

Diagramas de Estados

En cualquier momento, un objeto se encuentra en un estado particular. Una persona puede estar en diferentes estados: activo, en reposo, durmiendo, etc. Este diagrama busca mostrar todos los estados posibles de un objeto.

Diagramas de Secuencia

Un diagrama de clases y de objetos muestran información estática, pero en un sistema los objetos interactúan entre sí y estas interacciones se desarrollan a lo largo del tiempo.

El diagrama de secuencia muestra la mecánica de la interacción basada en el tiempo.

Ejemplo Lavadora: Entre los componentes de la lavadora se encuentran diferentes objetos como la manguera, el tambor y un sistema de drenaje (y a su vez, estos objetos pueden contener otros objetos). Cada uno de estos objetos cumple una función específica.

Ejemplo de Secuencia de Lavado

¿Qué sucede si programo la opción "lavar", entendiendo que ya realicé las funciones de llenar con ropa y detergente?

  1. La manguera comenzará con el llenado de agua del tambor.
  2. El tambor estará inactivo durante la carga.
  3. Se terminará el llenado de agua.
  4. El tambor girará de un lado a otro durante X tiempo.
  5. El agua será expulsada por el drenaje.
  6. Comenzará nuevamente el ciclo de llenado de agua (para enjuague, luego el proceso de centrifugado, etc.).

Diagramas de Actividades

Las actividades que ocurren dentro de un caso de uso se dan, normalmente, en secuencia, como los pasos anteriores.

Diagramas de Colaboración

Este diagrama está diseñado para representar cómo los elementos de un sistema trabajan en conjunto.