3 pasos simples para construir su modelo de datos en Mendix

¿Qué son los modelos de datos?

La base de muchas aplicaciones de software suele ser su modelo de datos. Un modelo de datos define qué datos se utilizarán e interactuarán dentro de una aplicación. Estos datos se almacenan temporalmente en la memoria o se almacenan de forma permanente en un almacén de datos, como una base de datos.

Los modelos de datos en Mendix se construyen utilizando un lenguaje visual conocido como modelo de dominio. Dentro de un modelo de dominio, puede definir los siguientes componentes:

  • Entidades : pueden ser persistentes o no persistentes y le permiten almacenar datos de forma temporal o permanente. Una entidad persistente es el equivalente a una tabla de base de datos, que viene con una clave primaria única (es decir, una entidad de ubicación o una entidad de transacción financiera).
  • Atributos : son como columnas en una tabla de base de datos (es decir, el nombre y la dirección en una ubicación o la fecha y el tipo de transacción financiera).
  • Asociaciones : definen las relaciones entre dos entidades, como una unión entre dos tablas de base de datos.

Cuando se ejecuta una aplicación de Mendix, el tiempo de ejecución comparará el modelo con la base de datos elegida y ejecutará todos los scripts de actualización necesarios. Mendix admite una variedad de tipos de bases de datos, que incluyen:

  • postgresql
  • Servidor SQL de Microsoft
  • mysql
  • Oráculo
  • base de datos HANA

¡La decisión es tuya!

1. Defina sus entidades

Cada vez que inicia un nuevo proyecto, lo primero que debe definir son sus estructuras de datos. Debe pensar en las entidades que necesita crear para construir su aplicación. En este ejemplo, crearemos una aplicación que permita a los clientes pedir varios productos diferentes.

Para el modelo de dominio de esta aplicación, deberá tener un cliente, un pedido y una entidad persistente de línea de pedido. Esto nos permitirá realizar un seguimiento de qué pedidos ha realizado un cliente para qué productos. Cada entidad persistente da como resultado una tabla en la base de datos con una clave única. El siguiente diagrama muestra nuestras cuatro entidades:

2. Agrega tus atributos

Una vez que haya creado sus entidades, debe agregar más detalles a cada entidad, que es donde entran en juego los atributos. En nuestro ejemplo, el cliente puede tener un nombre o un tipo de cuenta como VIP o general. El producto puede tener un nombre o una descripción.
A medida que completamos las entidades, los detalles de la aplicación se irán concretando. Es muy fácil volver atrás y agregar cualquier otro atributo que se necesite. El siguiente diagrama ilustra cómo se enumeran los atributos dentro de nuestras cuatro entidades:

Agregamos nombres y un número de pedido generado automáticamente, así como una fecha en la que se realizó el pedido. Los atributos son el equivalente de las columnas de la tabla y tienen un tipo y tamaño de atributo, como cadena, entero, booleano y todos los tipos de datos típicos que necesita para compilar la aplicación.

3. Crea asociaciones

Una vez que hayamos determinado las entidades y sus atributos, es hora de determinar cómo se relacionan. En este ejemplo, un cliente puede tener varios pedidos, un pedido puede tener varias líneas de pedido y cada producto se puede pedir varias veces. La siguiente figura representa la relación entre las entidades.

Notará cómo las relaciones se representan visualmente a través de las asociaciones. La relación cliente-pedido es de uno a muchos, como lo indican los asteriscos. Para llevar este ejemplo un paso más allá, también podemos eliminar el comportamiento entre las relaciones.

Por ejemplo, si un cliente tiene pedidos, ¿debo eliminar todos los pedidos asociados con el cliente (lo que se conoce como eliminación en cascada)? O, si un cliente tiene pedidos, ¿deberíamos evitar que el usuario elimine un pedido (lo que se conoce como eliminación de prevención)?

Haga doble clic en las asociaciones para ver el comportamiento y cómo está configurada la opción de eliminación. El comportamiento de eliminación debe depender de las necesidades comerciales. Considere las siguientes preguntas: ¿Es importante mantener al cliente cuando tiene pedidos? ¿O es más importante limpiar la base de datos y no tener pedidos huérfanos al eliminar clientes?

Estas son buenas preguntas para los usuarios comerciales y ayudarán a elaborar las reglas comerciales correctas. La representación visual de esto es azul (para eliminación preventiva) o roja (para eliminación en cascada).

Escríbenos para saber más de Mendix.

    Post a comment

    Tu dirección de correo electrónico no será publicada.

    a

    Magazine made for you.

    Featured:

    No posts were found for provided query parameters.

    Elsewhere: