AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Ayuda / Conceptos WEBDEV / Parte 4 - Conceptos avanzados
  • Presentación
  • Tipos de diagramas UML
  • Diagrama de clases
  • Diagrama de casos de uso
  • Diagrama de objetos
  • Diagrama de componentes
  • Diagrama de actividades
  • Diagrama de secuencia
  • Diagrama de colaboración
  • Diagrama de transición de estados
  • Diagrama de implementación
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
3. Modelos UML en la práctica
Página anteriorTabla de contenidoPágina siguiente
Presentación
El objetivo principal de un equipo de desarrollo es crear aplicaciones optimizadas, capaces de satisfacer las necesidades cambiantes de los usuarios.
El modelado de una aplicación permite especificar la estructura y el comportamiento esperado de un sistema. Ayuda a comprender su organización y a detectar las oportunidades de simplificación y reutilización, así como a gestionar los posibles riesgos.
Un modelo es una simplificación de la realidad. Le permite entender mejor el sistema a desarrollar.
Un diagrama es la representación gráfica de un conjunto de elementos que componen un sistema. Para ver el sistema desde diferentes perspectivas, el Lenguaje Unificado de Modelado (UML) define nueve diagramas diferentes. Cada diagrama representa un estado del sistema.
WINDEV, WEBDEV y WINDEV Mobile le permiten crear los siguientes nueve tipos de modelos UML:
  • Diagrama de clases,
  • Diagrama de casos de uso,
  • Diagrama de objetos,
  • Diagrama de componentes,
  • Diagrama de actividades,
  • Diagrama de secuencia,
  • Diagrama de colaboración,
  • Diagrama de transición de estados,
  • Diagrama de implementación.
Este capítulo solo ofrece una visión general sobre el UML. Para obtener más información sobre el UML, consulte la documentación específica.
Tipos de diagramas UML

Diagrama de clases

Un diagrama de clases describe la estructura de un sistema a través de clases y de las relaciones entre ellas.
Los diagramas de clases son los más comunes en el modelado de sistemas orientados a objetos.
Por ejemplo, un diagrama puede representar un sistema de gestión de inventarios.
Un diagrama de clases incluye los siguientes elementos:
  • Clase: representa las estructuras de la aplicación. Cada clase está dividida en cuatro compartimentos:
    • el nombre de la clase indica lo que es la clase y no lo que hace.
    • los atributos de la clase determinan las características de la clase.
    • las operaciones de la clase representan las acciones posibles en la clase.
    • las propiedades de la clase. Una propiedad es un tipo específico de atributo cuyo valor puede leerse o escribirse utilizando las funciones getter y setter, respectivamente. El uso de una función permite realizar operaciones complejas al leer o escribir una característica. Por ejemplo, una clase utilizada para modelar un formulario de pedido podría tener una propiedad "TotalValue" accesible en modo de solo lectura. En este caso, el getter no existe y el setter recorre la lista de elementos del pedido y calcula el valor cuando se llama a la función, en lugar de almacenarlo en un atributo.
    Por ejemplo, la clase Inventory contiene el atributo ProductList. Esta clase también agrupa las operaciones AddProduct y DeleteProduct. Estas operaciones se pueden aplicar a las instancias de clase.
    Observación: El UML proporciona tres niveles de visibilidad para los atributos y las operaciones:
    • Público: el elemento es visible para las demás clases.
    • Protegido: el elemento es visible para la clase y sus subclases.
    • Privado: el elemento solo es visible para la clase.
  • Relación: describe cómo interactúan las clases entre sí. Existen tres tipos de relaciones:
    • Asociación: Relación estructural entre clases. Por ejemplo, la clase Orders está relacionada con las clases Product y Customer. Un Customer puede tener varios Orders. Un pedido contiene varios productos. Un pedido debe contener al menos un producto.
    • Dependencia: Relación de uso que establece que las instancias de una clase están relacionadas con las instancias de otro elemento. Por ejemplo, la clase Orders utiliza la clase Inventory: antes de agregar un producto a un pedido, debe asegurarse de que el producto está disponible en las existencias.
    • Generalización: Relación entre una clase general (padre) y una clase específica (hijo) que se deriva de ella. Por ejemplo, las clases Sail Boat y Speed Boat derivan de la clase Boat.
  • Paquetes: divide y organiza la representación del diagrama (del mismo modo que los directorios organizan los archivos). Cada paquete puede contener clases y relaciones.
La generación de un diagrama de clases le permite crear la estructura de las clases WINDEV, WEBDEV y WINDEV Mobile utilizadas en su aplicación.

Diagrama de casos de uso

Un diagrama de casos de uso se utiliza para ver el comportamiento de un sistema de tal manera que:
  • el usuario pueda entender cómo utilizar cada elemento.
  • el desarrollador pueda implementar estos elementos.
Por ejemplo, el comportamiento de un teléfono móvil puede ser descrito a través de un diagrama de casos de uso.
Un diagrama de casos de uso está compuesto por los siguientes elementos:
  • Actor: representa el rol de los usuarios que interactúan con la aplicación. Por ejemplo, una persona que trabaja en un banco como administrador de préstamos. Si tiene una cuenta en el mismo banco, también desempeñará el papel de cliente.
  • Caso de uso: describe una secuencia de acciones realizadas por la aplicación. Por ejemplo, realizar un pedido, crear una factura, crear una nueva entrada de cliente, etc, ...
    Un caso de uso describe las acciones que realiza una aplicación, pero no especifica cómo las realiza.
  • Relación: describe el comportamiento de un actor con un caso de uso. Existen tres tipos de relaciones:
    • Asociación: Relación estructural entre dos elementos relacionados.
    • Dependencia: Indica que un elemento utiliza o depende de otro elemento. Por ejemplo, el cliente de un banco puede obtener efectivo de un cajero automático. En este caso, la acción Obtener dinero en efectivo depende del Cliente.
      Para retirar dinero, el Cliente debe introducir su número PIN. En este caso, la acción Obtener dinero en efectivo depende de la Contraseña.
    • Generalización: Relación en la que los elementos se organizan según una jerarquía.
      Por ejemplo:
      - hay dos tipos de actores Cliente: Cliente individual o Cliente empresarial.
      - hay dos maneras de verificar la identidad del usuario: una contraseña o una huella digital.
  • Paquete: divide y organiza la representación del diagrama (del mismo modo que los directorios organizan los archivos). Cada paquete puede contener actores y casos de uso.

Diagrama de objetos

Un diagrama de objetos representa un conjunto de objetos y cómo se relacionan entre sí en un momento determinado.
Un diagrama de objetos se utiliza para mostrar un contexto (antes o después de una interacción entre objetos, por ejemplo).
Por ejemplo, el siguiente diagrama presenta una sección de la estructura general de las motocicletas:
Un diagrama de objetos incluye los siguientes elementos:
  • objeto: representa una instancia de clase.
    Observación: Si hay un diagrama de clases abierto, se puede crear un objeto a partir de una clase de este diagrama (Arrastre y suelte el objeto desde el panel "Análisis UML").
  • objeto compuesto: representa de forma visual un objeto formado por otros objetos. Por ejemplo: una ventana que contiene barras de desplazamiento, botones, etc.
  • enlace: representa la relación entre diferentes objetos.
  • Paquete UML: divide y organiza la representación del diagrama (del mismo modo que los directorios organizan los archivos). Cada paquete puede contener objetos y objetos compuestos.

Diagrama de componentes

Un diagrama de componentes muestra la arquitectura física y estática de un sistema de software. Por ejemplo: archivos fuente, bibliotecas, ejecutables, etc.
Por ejemplo, el siguiente diagrama presenta el modo de funcionamiento de un programa que permite iniciar sesión en modo de texto en Unix. El programa "login" utiliza los datos del archivo "etc/passwd" y una biblioteca:
Un diagrama de componentes incluye los siguientes elementos:
  • módulo: representa los diferentes elementos físicos que construyen un sistema de software. Por ejemplo: un archivo, una biblioteca, etc, ...
    Un módulo puede estar representado:
    • por una especificación que muestra la interfaz del módulo. Esta especificación puede ser genérica para las clases configurables.
    • por su cuerpo que presenta la implementación del módulo.
  • tarea: representa un componente que posee su propio flujo de control (thread).
  • programa principal del sistema de software.
  • subprograma: agrupa los procedimientos y funciones que no pertenecen a ninguna clase.
  • paquete: divide y organiza la representación del diagrama (del mismo modo que los directorios organizan los archivos).

Diagrama de actividades

Un diagrama de actividades representa el comportamiento de un método o el flujo de un caso de uso.
Por ejemplo, el siguiente diagrama presenta el flujo de una represa:
Un diagrama de actividades incluye los siguientes elementos:
  • actividad: representa una etapa específica en un flujo de trabajo. Por ejemplo: "Crear un presupuesto", "Abrir una ventana", "Evaluar", etc.
  • barra de sincronización: sincroniza diferentes actividades:
    • indicando las actividades que deben realizarse antes de una actividad determinada. Por ejemplo: "Presionar el embrague" y "Cambiar de velocidad" antes de "Liberar el embrague".
    • indicando las actividades que se desarrollarán en paralelo.
  • objeto: relaciona las actividades con el objeto que las realiza. Por ejemplo, las actividades "Ordenar" y "Pagar" están relacionadas con el objeto "Cliente"; y las actividades "Enseñar" y "Evaluar" están relacionadas con el objeto "Profesor".
  • envío de señal: representa una señal enviada a un objeto.
  • recepción de señal: representa la aceptación de un evento procedente de un objeto.
  • transición: muestra el paso de una actividad terminada a otra actividad. Por ejemplo: "Demasiada agua", "Suficiente dinero", etc.
  • paquete: divide y organiza la representación del diagrama (del mismo modo que los directorios organizan los archivos).
  • estado inicial: representa el estado del proceso antes de que inicie la actividad. Puede haber varios estados iniciales diferentes.
  • estado final: representa el estado del proceso al final de la actividad. Puede haber varios estados finales diferentes.

Diagrama de secuencia

Un diagrama de secuencia representa el orden cronológico de los mensajes enviados y recibidos por un conjunto de objetos.
Por ejemplo, el siguiente diagrama representa el comienzo de una llamada telefónica:
Un diagrama de secuencia incluye los siguientes elementos:
  • objeto: representa los diferentes objetos utilizados. Cada objeto está representado por un cuadrado en la parte superior de una línea de puntos. Esta línea representa la vida útil del objeto. Por ejemplo: "Caller", "Callee", etc.
  • período de activación del objeto: Puede insertar períodos de activación en la línea de vida de un objeto. Estos períodos representan los momentos en que el objeto está activo.
  • mensaje: representa, mediante flechas horizontales, el mensaje intercambiado entre los diferentes objetos. Estas flechas están orientadas del emisor del mensaje al destinatario. El orden de envío de los mensajes se establece según la posición de las flechas en el eje vertical.
    Por ejemplo: "Picks up", "Ring", etc.
  • paquete: divide y organiza la representación del diagrama (del mismo modo que los directorios organizan los archivos).

Diagrama de colaboración

Un diagrama de colaboración presenta la organización estructural de los objetos que envían y reciben mensajes.
Por ejemplo, el siguiente diagrama presenta el proceso de una persona que utiliza un ascensor:
Un diagrama de colaboración incluye los siguientes elementos:
  • objeto: representa los diferentes objetos utilizados.
  • actor: representa un elemento externo al sistema. Una persona, por ejemplo.
  • mensaje: representa los mensajes intercambiados entre los diferentes objetos.
  • paquete: divide y organiza la representación del diagrama (del mismo modo que los directorios organizan los archivos).

Diagrama de transición de estados

Un diagrama de transición de estados presenta una secuencia de estados por los que pasa un objeto durante su ciclo de vida. Permite describir los cambios de estado de un objeto o componente.
Un estado se define por su duración y estabilidad.
Una transición representa el cambio de un estado a otro.
Una transición es desencadenada:
  • por un evento.
  • automáticamente cuando no se especifica ningún evento desencadenante.
Por ejemplo, el siguiente diagrama presenta las diferentes etapas de una máquina de lavado de autos:
Un diagrama de transición de estados incluye los siguientes elementos:
  • estado: representa el valor de los atributos de un objeto en un momento determinado.
  • estado inicial: representa el estado cuando se inicia el sistema.
  • estado final: representa el estado del sistema al final de la operación.
  • superestado: permite estructurar el diagrama especificando varios niveles de distinción entre los estados.
  • historial: representa el último estado activo de un superestado o estado compuesto.
  • puntos de entrada y salida: representan los estados en un superestado. Esto permite vincular estos estados con otros que no pertenecen al superestado.
  • transición: representa el cambio de un estado a otro.
  • paquete: divide y organiza la representación del diagrama (del mismo modo que los directorios organizan los archivos).

Diagrama de implementación

Un diagrama de implementación presenta la distribución física del hardware (nodos) utilizado en un sistema, así como la asociación de este con los programas ejecutables.
Por ejemplo, el siguiente diagrama muestra los diferentes componentes de hardware utilizados en una empresa:
Un diagrama de implementación incluye los siguientes elementos:
  • clase de nodo: representa una clase de un recurso físico. Por ejemplo: servidor, PC, impresora, etc.
  • instancia de nodo: representa un recurso físico. Por ejemplo: servidor 3, impresora 70, etc.
  • conexión: representa la comunicación entre dos nodos. Por ejemplo: Enlace RDSI o TCP/IP.
  • paquete: divide y organiza la representación del diagrama (del mismo modo que los directorios organizan los archivos).
Página anteriorTabla de contenidoPágina siguiente
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 05/07/2023

Señalar un error o enviar una sugerencia | Ayuda local