i
Conceptos Generales
Para el desarrollo de una aplicación con Deyel se utiliza un conjunto de conceptos que permiten realizar el modelado fácil e intuitivo de cada uno de los objetos que la componen.
Una aplicación Deyel se compone de un conjunto de procesos, entidades de negocio, páginas, formularios, listas de valores, reglas avanzadas, adaptadores, roles, permisos, tableros, indicadores y reportes, relacionados entre sí, con el objetivo de resolver un requerimiento determinado. Estos objetos pueden estar definidos dentro de la misma aplicación o ser compartidos desde otras aplicaciones.
Las aplicaciones desarrolladas con Deyel pueden ser web o móviles (Android y IOs) En ambos casos las aplicaciones pueden ser desarrolladas responsivas para que se adapten a los distintos dispositivos que las usen.
A través del modelador de aplicaciones se modelan fácilmente y de manera intuitiva aplicaciones independientes. Se pueden diseñar los flujos de navegación de las mismas a través del modelado de sus user flows, wireflows y las páginas que implementan la interfaz de la aplicación.
Las aplicaciones pueden ser creadas desde cero o a partir de plantillas predefinidas. El uso de plantillas ayuda a crear aplicaciones más rápidamente utilizando patrones y funcionalidades habituales en las aplicaciones de negocio.
Una entidad o entidad de negocio es una representación de un concepto del mundo real en una aplicación. Por ejemplo, una entidad puede representar un producto, un cliente o un pedido. Las entidades tienen atributos que las describen, como por ejemplo su nombre, su precio o su fecha de creación. Las entidades almacenan en sí mismas los datos de la aplicación.
Las entidades de negocio pueden ser modeladas por citizen developers en forma clásica tabular o gráficamente, sin necesidad de conocimientos técnicos. A través del modelador de entidades se pueden modelar tal como se las perciba en el mundo real, arrastrando y soltando elementos que definen su apariencia. Dichos elementos tienen propiedades configuradas con valores predeterminados, de manera que los citizen developers no deban configurar propiedades técnicas, pero permite a los desarrolladores de TI adecuar su funcionamiento en detalle.
Se pueden establecer relaciones entre las distintas entidades, ya sean entidades de negocio propias de la aplicación o entidades de parametrización como las listas de valores. También se pueden establecer relaciones con otros objetos a través reglas de integración.
Las entidades a partir de su modelado generan automáticamente:
•La estructura de persistencia en la base de datos.
•La interfaz de usuario para el mantenimiento de sus datos y también para ser usada en las actividades de procesos de negocio.
•Un API Rest para que la entidad pueda ser utilizada por otras aplicaciones.
Alcance
Las entidades pueden ser utilizadas en la aplicación en la que fueron definidas o también en otras.
Un atributo es la unidad de información dentro de una entidad.
Las páginas definen la UI de las aplicaciones de Deyel. A través del modelado de páginas las aplicaciones Deyel logran una UX perfecta. Las páginas muestran, crean y editan información de las entidades de las aplicaciones y también permiten que los usuarios puedan invocar automatizaciones a través de reglas y procesos de negocio.
Las páginas se componen de uno o más elementos gráficos.
Alcance
Las páginas pueden ser utilizadas en la aplicación en la que fueron definidas o también en otras.
Tipos
•Páginas Modeladas
A través del modelador de páginas se pueden obtener interfaces de usuario perfectas a nivel de pixel definiendo el comportamiento de cada elemento en cualquiera de los breakpoints propuestos.
•Páginas Predefinidas
Las páginas predefinidas en la plataforma son páginas de uso común en todas las aplicaciones y que ya están disponibles para ser usadas por cualquier aplicación sin codificación.
Ejemplos
•Páginas de acceso, de registración
•Olvide mi clave
•Abm y grillas de formularios
•Tableros
•Chats
•Lista de tareas
•Mis casos
•Calendarios
•Perfil de usuario
Los elementos gráficos son los componentes de la interfaz gráfica de las páginas Deyel. Existen elementos de estructura (sección, contenedor, diseño, repetidor, deslizador, página), simples (texto, botón, imagen, campo, iframe, video, ícono, indicador) y avanzados (botones de proceso, navegación de relaciones, botones de operaciones, encabezado).
Un proceso es una secuencia de tareas humanas o automáticas (servicios), cuya realización permite cumplir con un objetivo de negocio. La secuencia tiene inicio, finalización y puede contener conectores. Se representa como un diagrama de proceso basado en el estándar de BPMN 2.0 (Business Process Model and Notation).
Alcance
Los procesos pueden ser utilizados en la aplicación en la que fueron definidos o también en otras.
Un formulario es la interfaz de usuario de las entidades de negocio. Puede ser usado en las actividades de usuario de los procesos o en la administración de datos de la entidad en sí misma.
Las entidades de negocio de las aplicaciones pueden ser modeladas gráficamente por citizen developers sin necesidad de conocimientos técnicos. A través del modelador de formularios se pueden modelar las entidades de negocio de las aplicaciones tal como se los perciba en el mundo real, arrastrando y soltando controles que definen su apariencia. Los controles tienen propiedades configuradas con valores predeterminados de manera que los citizen developers no deban configurar propiedades técnicas pero permite a los desarrolladores de TI adecuar su funcionamiento en detalle. Pueden establecerse las relaciones entre las distintas entidades, ya sean entidades de negocio propias de la aplicación, entidades de parametrización como las listas de valores o con otros objetos a través reglas de integración.
El modelador de formularios junto con el motor de Deyel, son los encargados de resolver la persistencia del modelo de datos generado por las entidades de negocio de las aplicaciones.
Alcance
Los formularios pueden ser utilizados en la aplicación en la que fueron definidos o también en otras.
Ejemplos
●El formulario "Solicitud de Vacaciones" se usa en el proceso "Vacaciones".
●El formulario "Empleado" se utiliza para actualizar los datos almacenados en sus campos durante su ciclo de vida. Además, los campos de dicho formulario pueden utilizarse desde diferentes procesos que lo tengan vinculado y que contengan actividades de usuario.
Un control permite definir la apariencia de un campo de un formulario en la interfaz de usuario. Además, el control puede agregar características predeterminadas de comportamiento y persistencia al campo del formulario, que posteriormente pueden ser modeladas.
Por medio de un conjunto de controles se puede definir una guía de diseño de interfaces basada en patrones con el objeto de resolver situaciones comunes y lograr una interfaz homogénea.
Los formularios se crean a partir de una galería de controles, cada uno de ellos permite definir:
●La apariencia de un campo de un formulario en la interfaz de usuario.
●La disposición de los campos y elementos gráficos dentro del formulario.
●Acciones a realizar desde la interfaz de usuario.
Ejemplos
●Caja de Texto
●Número
●Contenedor
Las reglas de negocio permiten definir el comportamiento de los objetos de las aplicaciones. Pueden ser usadas en validaciones, en lógica de negocios específica, control de flujos de procesos, integración con otras aplicaciones, control de visualización de campos en formularios, tareas programadas, calendarios, indicadores y agentes, entre otras funcionalidades.
Existen reglas que pueden modelarse sin necesidad de programación y otras basadas en código Java.
Tipos
•Reglas Embebidas
Las reglas embebidas se utilizan para definir el comportamiento, validaciones y cálculos de los campos de las entidades, así como también validaciones de las páginas. Las reglas embebidas permiten definir condiciones lógicas y expresiones aritméticas, que se evalúan al utilizar las entidades, las páginas y los procesos relacionados. La definición se realiza utilizando un asistente integrado en los correspondientes modeladores. Este asistente se encuentra en los paneles de definición de propiedades de los campos y contenedores de las entidades.
Alcance
Las reglas embebidas pertenecen solo al objeto que las contiene.
Ejemplos
- Definir condiciones en flujos dentro de un proceso.
- Ejecutar acciones automáticas en actividades de un proceso.
- Definir obligatoriedad, visibilidad, edición, cálculos y validaciones en campos de una entidad o página.
•Reglas Avanzadas
Las reglas avanzadas están basadas en Java y se utilizan para incluir lógica compleja o integraciones con otras aplicaciones. Se desarrollan usando el SDK para Java de Deyel, tanto desde el modelador de reglas avanzadas incluido en Deyel como en cualquier IDE Java que se desee utilizar.
Alcance
Las reglas avanzadas son globales para todas las aplicaciones.
Ejemplos
- Ejecutar acciones automáticas en actividades de un proceso.
- Ejecutar tareas programadas.
- Ejecutar lógica de negocio dentro de la fuente de un indicador.
Unidad de software que realiza una tarea particular que se ejecuta al ser invocada desde un código de programación o de los asistentes de modelado. Puede recibir parámetros de entrada y devuelve un resultado.
Lista de Valores
Una lista de valores es un conjunto de datos predeterminados que se utilizan para informar y unificar criterios en el momento de utilizar un campo. Se componen de opciones que el usuario puede desplegar y seleccionar cuando está completando una entidad, una página o un formulario.
Alcance
Las listas de valores pueden ser utilizadas por los formularios, entidades o páginas de la aplicación en la que fueron definidas o también en otras.
Ejemplos
●Tipo de Cliente.
●Industria
●Estado
Indicador
Los indicadores permiten conocer la evolución del negocio mediante la utilización de una representación gráfica, basándose en el análisis de la ejecución de las aplicaciones. La información que se representa por medio de gráficos se obtiene de las entidades de la aplicación o mediante el uso de reglas avanzadas.
Los indicadores pueden ser representados por ejemplo como métricas, como gráficos de torta, de columnas, de barras horizontales, de áreas o de líneas, entre otros tipos de gráficos.
Alcance
Los indicadores pueden ser utilizados en la aplicación en la que fueron definidos o también en otras.
Tablero
Un tablero es una colección de indicadores que presentan información relevante para el usuario de negocio, con alto impacto visual.
Alcance
Los tableros pueden ser utilizados en la aplicación en la que fueron definidos o también en otras.
Tipos
•De Aplicaciones
Son modelados a través del modelador de tableros por usuarios modeladores de TI y se encuentran definidos en las aplicaciones.
•De Usuarios
Son modelados por los usuarios de negocio y solamente pueden utilizarlos quienes los definieron ya que no forman parte de las aplicaciones.
Adaptador
Un adaptador permite la integración con distintas aplicaciones y plataformas mediante el uso de reglas de negocio avanzadas. Su finalidad es intercambiar datos y compartir comportamientos.
Un adaptador encapsula la complejidad propia de la comunicación con un componente externo. Permite que las diferentes reglas avanzadas lo utilicen para invocar las operaciones que dicho componente expone.
Alcance
Los adaptadores son globales para todas las aplicaciones.
Tipos
•Predefinidos
Son adaptadores definidos en Deyel, disponibles en todos los ambientes desde la grilla del modelador. Solamente puede existir uno de cada tipo en cada ambiente.
Ejemplos
- Mercado Libre
- Deyel SDK
- Docusign
- GoogleDrive
•Estándar
Estos adaptadores permiten acceder a servicios web de proveedores externos, en sus diferentes arquitecturas de comunicación, como son API Rest y SOAP.
•Base de Datos
Son adaptadores que permiten definir el acceso a bases de datos relacionales mediante el protocolo JDBC de Java. Deyel provee adaptadores personalizados para los motores de bases de datos más populares del mercado, facilitando la configuración y optimizando la interacción con dichos motores.
Reporte
Un reporte contiene información de entidades que es presentada según un diseño. El reporte puede modelarse en forma muy simple seleccionando la información que lo compone y diseñando rápidamente su presentación. Al modelarlo se eligen los campos de las entidades que forman parte del reporte y de aquellas entidades relacionadas. Se puede modelar el orden de dichos campos y mediante el uso de filtros se pueden seleccionar la información contenida en el reporte.
Alcance
Los reportes pueden ser utilizados en la aplicación en la que fueron definidos o también en otras.
Tipos
•De Aplicaciones
Son modelados a través del modelador de reportes por usuarios modeladores de TI y se encuentran definidos en las aplicaciones.
•De Usuarios
Son modelados por los usuarios de negocio y solamente pueden utilizarlos quienes los definieron ya que no forman parte de las aplicaciones.
A continuación se describen algunas consideraciones relativas al uso de los conceptos descriptos en este tópico.
Propiedad
Describen en forma general a aplicaciones, entidades, procesos, reglas y funciones, entre otros objetos.
Control
El término control se utiliza solo en el modelado de la interfaz gráfica de los formularios.
Campo
Las entidades, las páginas y los formularios almacenan sus datos en un conjunto de campos. En los modeladores de entidades, páginas y formularios, un campo puede definirse a partir de un atributo de otra entidad, en este caso se lo llama atributo relacionado y puede tener persistencia.
Atributo
Es la menor unidad de información de una entidad, corresponde al modelo de datos.
Variable
Una variable corresponde al atributo de una entidad, página o formulario, y es utilizada por los procesos de negocio para definir su estado y comportamiento. Puede contener datos de las condiciones temporarias de las instancias de los procesos(casos), de los objetos de negocio o referencias a estos últimos.
Alcance
•Local: Solamente puede ser accedida y modificada durante la ejecución del caso del proceso que la usa. Las variables de casos finalizados pueden ser accedidas pero no modificadas.
•Global: Puede ser accedida y modificada por las operaciones del formulario o entidad correspondiente, por los procesos que la usan o por reglas de negocio.