i
General Concepts
To develop an application with Deyel , a set of concepts is used to allow easy and intuitive modeling of each of its objects.
A Deyel application is a set of processes, business entities based on forms, value lists, advanced rules, adapters, roles, permissions, dashboards, widgets and reports, related to each other with the objective of solving a specific request. These objects can be defined within the same application or shared from other applications.
The applications developed with Deyel can be web or mobile (Android and IOs). In both cases, the applications can be developed responsively to adapt to the different devices that use them.
Through the applications modeler, independent applications can be easily and intuitively modeled. The navigation flows of these applications can be designed through the modeling of their user flows, wireflows and the pages that implement the application interface.
Applications can be created from scratch or based on predefined templates. Using templates helps to create applications more quickly using patterns and common functionalities found in business applications.
An entity or business entity is a representation of a real-world concept in an application. For example, an entity can represent a product, a customer, or an order. Entities have attributes that describe them, such as their name, price, or creation date. Entities store application data within themselves.
Business entities can be modeled by citizen developers either in a classic tabular form or graphically, without the need for technical knowledge. Through the entity modeler, entities can be modeled as they are perceived in the real world, by dragging and dropping elements that define their appearance. These elements have properties configured with default values, so that citizen developers do not need to configure technical properties, but it allows IT developers to customize their operation in detail.
Relations can be established between different entities, whether they are business entities specific to the application or parameterization entities such as value lists. Relations with other objects can also be established through integration rules.
Entities, through their modeling, automatically generate:
•The persistence structure in the database.
•The user interface for maintaining their data and also to be used in business process activities.
•A Rest API so that the entity can be used by other applications.
Scope
Entities can be used in the application in which they were defined or in other applications as well.
An attribute is the information unit within an entity.
A process is a sequence of human or automatic tasks (services), the performance of which allows meeting a business objective. The sequence has a start, an end, and may contain connectors. It is represented as a process diagram based on the standard of BPMN 2.0 (Business Process Model and Notation).
Scope
Processes can be used in the application in which they were defined or in other applications as well.
A form is the user interface of business entities. It can be used in user activities of processes or in the data administration of the entity itself.
Business entities of applications can be modeled graphically by citizen developers without the need for technical knowledge. Through the form modeler, business entities of applications can be modeled as they are perceived in the real world, by dragging and dropping controls that define their appearance. Controls have properties set to default values so that citizen developers do not need to set technical properties but allows IT developers to adjust their behavior in detail. Relations among different entities can be established, whether they are business entities of the application, parameterization entities such as value lists or with other objects through integration rules.
The forms modeler together with the engine of Deyel, are in charge of solving the data model persistence generated by business entities of applications.
Scope
Forms can be used in the application in which they were defined or in other applications as well.
Examples
●The "Vacation Request" form is used in the "Vacation" process.
●The "Employee" form is used to update data stored in its fields during its life cycle. In addition, such form fields can be used from different processes related to it that contain user activities.
A control allows to define the appearance of a form field in the user interface. In addition, controlling may add default behavior and persistence characteristics to the form field, which can be modeled later.
Through a set of controls, a pattern-based interface design guide can be defined in order to solve common situations and achieve a homogeneous interface.
Forms are created from a gallery of controls, each of them allows defining:
●The appearance of a form field in the user interface.
●The layout of fields and graphic elements within the form.
●Actions to do from the user interface.
Examples
●Text Box
●Integer
●Container
Pages define the UI of Deyel applications. Through page modeling, Deyel applications achieve a perfect UX.
Pages show, create, and edit application entity information and also allow users to invoke automations through business processes and rules.
Pages are made up of one or more graphic elements.
Scope
Pages can be used in the application in which they were defined or in other applications as well.
Types
•Modeled Pages
Through the page modeler, pixel-perfect user interfaces can be obtained by defining the behavior of each element at any of the proposed breakpoints.
•Built-in Pages
Built-in pages in the platform are pages that are commonly used in all applications and that are already available to be used by any application without coding.
Examples
•Login pages, registration pages
•Forgot my password
•CRUD and forms grid
•Dashboards
•Chats
•To do list
•My cases
•Calendars
•User profile
Graphic elements are the graphic interface components of Deyel pages. There are Structure elements (section, container and layout), Essential elements (text, button, image, line) and Advanced elements (carousel, catalog, search, logged-in user, etc.).
Business rules allow to define the behavior of application objects. Rules can be used in validations, specific business logic, process flow control, integration with other applications, field display control in forms, scheduled tasks, calendars, widgets and agents, among other functionalities.
There are rules that can be modeled without programming and others are based on Java code.
Types
•Embedded Rules
Embedded rules are used to define the behavior, validations, and calculations of form fields, as well as form validations. Embedded rules allow to define logical conditions and arithmetic expressions, which are evaluated using forms and their related processes. A wizard integrated in the corresponding modelers is used for definition. This wizard is found in the property definition panels of the fields and containers of forms and of flows themselves.
Scope
Embedded rules belong only to the object that contains them.
Examples
- Define conditions in flows within a process.
- Execute automatic actions in activities of a process.
- Define requirement, visibility, edition, calculations and validations in form fields.
•Advanced Rules
Advanced rules are based on Java and are used to include complex logic or integrations with other applications. They are developed using the SDK for Java of Deyel, both from the advanced rules modeler included in Deyel as in any Java IDE to be used.
Scope
Advanced rules are global for all applications.
Examples
- Execute automatic actions in activities of a process.
- Execute scheduled tasks.
- Execute business logic within the source of an widget.
Software unit that performs a specific task that is executed when invoked from a programming code or from the modeling wizards. It can receive input parameters and return a result.
Value List
A value list is a set of predetermined data used to report and unify criteria when rusing a field. There are options that the user can drop down and select when completing the form.
Scope
Value lists can be used by the application forms in which they were defined or in other forms as well.
Examples
●Client Type
●Industry
●State
Widget
Widgets allow to know the business evolution through the use of a graphic representation, based on the execution analysis of applications. The information represented in the form of charts is obtained from application forms or by using advanced rules.
Widgets can be represented, for example, as metrics, as pie charts, column charts, horizontal bar charts, area charts or line charts, among others.
Scope
Widgets can be used in the application in which they were defined or in other applications as well.
Dashboard
A dashboard is a collection of widgets that present relevant information for the business user, with high visual impact.
Scope
Dashboards can be used in the application in which they were defined or in other applications as well.
Types
•Application
They are modeled through the dashboard modeler by IT modeler users and are defined in the applications.
•User
They are modeled by business users and can only be used by those who defined them since they are not part of the applications.
Adapter
An adapter allows integration with different applications and platforms by using advanced business rules. Its purpose is to exchange data and share behaviors.
An adapter encapsulates the complexity of communicating with an external component. It allows different advanced rules to use it to invoke the operations that such component exposes.
Scope
Adapters are global for all applications.
Types
•Built-in
They are adapters defined in Deyel, available in all environments from the modeler's grid. There can only be one of each type in each environment.
Examples
- Mercado Libre
- Deyel SDK
- Docusign
- GoogleDrive
•Standard
These adapters allow access to web services from external providers, in their different communication architectures, such as Rest API and SOAP.
•Database
Adapters that allow to define access to relational databases through the Java JDBC protocol. Deyel provides custom adapters for the most popular database engines on the market, facilitating configuration and optimizing interaction with such engines.
Report
A report contains entity information that is presented with a certain layout. The report can be modeled very simple way by selecting its information and quickly designing its presentation. When modeling it, choose the fields of the entities that are part of the report and of those related entities. The order of these fields can be modeled and by using filters, the information contained in the report can be selected.
Scope
Reports can be used in the application in which they were defined or in other applications as well.
Types
•Application
They are modeled through the report modeler by IT modeler users and are defined in the applications.
•User
They are modeled by business users and can only be used by those who defined them since they are not part of the applications.
Some considerations regarding the use of concepts described in this topic are described below.
Property
They describe in general terms applications, entities, processes, forms, attributes, rules, and functions, among other objects.
Control
The term control is used only in the modeling of the graphic interface of forms.
Field
Forms store their data in a set of fields. In the forms modeler, a form field can be defined from an attribute of another entity, in this case it is called a related attribute and it can have persistence.
Attribute
It is the smallest unit of information of an entity, it corresponds to the data model.
Variable
A variable corresponds to the attribute of a system or business entity and is used by business processes to define its state and behavior. It can contain data of the temporary conditions of the instances of the processes (cases), of the business objects or references to the latter.
Scope
•Local: It can only be accessed and modified during the execution of the process case that uses it. Variables of completed cases can be accessed but not modified.
•Global: It can be accessed and modified by the operations of the corresponding form or entity, by the processes that use it or by business rules.