Development and Managed Hosting
ANEXIA
DEC
30
2020

Low-code platform: A new application (almost) without programming

Written on December 30, 2020 by Stefan Lizelfelner

Low-code platforms are considered as the successors to 4GL programming languages and enable the development of applications using graphical modeling tools. Classic programming languages only have to be used in exceptional cases, which offers significant advantages: On the one hand, the development time is reduced, resulting in lower costs. On the other hand, it is beneficial that the project team members who are involved in the development don’t necessarily require programming skills.

However, low-code programming raises the individual steps required for application development to a very high level of abstraction, which translates into less flexibility in implementation. When solving special problems, it may therefore still be necessary to write classic program code.


 

From service framework to low-code platform

The Anexia Engine was originally designed as a modular framework that provides a broad infrastructure for creating services. This allows the development of new applications, even if they are programmed in the traditional way by software developers, to be simplified and reduced to the essentials.

Low Code Programming in the Anexia Engine

The further development to a low-code platform is the next logical step in the development of this framework, which was initiated by “Generic Services & Automation”. This makes it possible to create new applications and services in a short time and with little effort, even by project staff or users without programming knowledge.

Unlike pure low-code development platforms, which are offered both as open-source solutions (e.g. Eclipse OSBP) and by commercial providers such as Oracle, Anexia’s solution isn’t a separate development environment. Rather, it is directly integrated into the Anexia Engine platform. Services created with it therefore fit seamlessly into the Engine’s user interface and can leverage existing infrastructure and interact with existing services and resources.

 

Anexia Generic Services and Generic Automation

When creating a new Generic Service, you can focus entirely on the components that are essential for the application. This includes, for example, the data model, the application logic and the interaction with other services.

Generic Resource Datatable

All recurring development tasks, which would otherwise take up a large part of the development work, are covered by generic code and are immediately available to the user. These include, among others:

  • Persistence of the data
  • The user interface for input and output and the tabular display of data
  • The user administration with its hierarchical organizational structure and permission handling
  • The graphical representation of the data sets and their dependencies in the CMDB (Configuration Management DataBase) module of the Engine
  • A REST API for read and write access to the data
  • The appearance of the user interface, which can be customized for each customer (branding)

 
The foundation of a Generic Service is the data model, which is created by defining entities along with their attributes and dependencies to other entities.

Generic Attribute Configuration

To bring Generic Services to life, the “Generic Automation” module offers the possibility to create so-called “Automation Rules”. This allows to map application logic through a set of rules consisting of conditions and actions and to link the application with external services via HTTP requests. Automation rules can be triggered either by user interactions (UI/API), by data changes or by periodic background jobs.

Generice Resource Relation in the Anexia Engine

Since Generic Services are integrated into the Anexia Engine, it is possible to develop applications that are linked to existing Engine services as well as standalone applications.

The branding option, which has been available for a long time, ensures that the appearance of the Generic Services can be customized in order to convey the feeling of a standalone application.

 

Prospects

Although the functionality of Generic Services is still in its early stages, it already makes it possible to create applications with complex data structures. Further enhancements are planned for the near future, which will continuously expand the possibilities, such as:

  • The integration of “Generic Metrics” which allows metrics from Generic Services to be stored and visually processed in Anexia CloudLog. It will also be possible to react automatically to this data in the form of alerts and triggers.
  • Through “Service Native Actions”, other Anexia Services Actions can be provided, which are used in Automation Rules. For instance, it can be used to utilize user-defined functions of the prospective Engine service “e5e”, allowing application logic to be implemented in serverless, distributed functions.
  • Custom Permissions, allowing the individual areas of a Generic Service to be flexibly adapted to different user roles.

Cost and Resource Savings

Due to the reduced development overhead and the associated cost savings, Generic Services has the potential to be used in customer projects as well as in the development of Anexia standard services in the future.
This service represents an exciting alternative to the services that are natively developed in the Engine, because it allows to create new services in a relatively short time and without any programming knowledge.
This enables, for example, the rapid implementation of application prototypes for customer projects and the subsequent creation and operation of productive applications. These applications can then be flexibly tailored to the changing user requirements during ongoing operation.

 

More information?

Contact us now and learn more about the Anexia Engine.