Onesait Platform as a Low Code Platform

Onesait Platform as a Low Code Platform



What is a Low Code Platform?

An LCAP (Low Code Application Platform) is a platform that supports quick development, automated deployment, and execution and management of applications using high-level programming abstractions (either visual or declarative).
These platforms support the development of user interfaces, business logic and data services, and they improve productivity when compared to conventional application platforms.
An enterprise LCAP must support the development of enterprise applications, which require high performance, scalability, high availability, disaster recovery, security, SLAs, resource usage tracking and vendor support, and access to local and cloud services.

 

Value proposition of the Onesait Platform as a Low Code platform

Onesait Platform stands on top of four pillars, one of which specifically refers to the agile development of solutions:


Thus, the Platform provides capabilities in the four phases of a project: Start-up (Architecture, Provisioning, etc.), Development, DevOps, and Change management.
We will next see the differences when approaching these phases with traditional development or with development based on Onesait Platform:

 

Start-up

Development

Operation

Change management

Traditional development

-Choice and testing of technologies.
-Need to provide infrastructure and base software.
-Complexity to share environments and infrastructure between different systems.

-Large amount of code.
-Several teams developing on each layer.
-More difficult reuse.

-Effort to deploy in Environments.
-Development environment different from the execution environment.
-Provision of infrastructure and of base components.
-Difficulty to deploy on premise and in cloud.

-Complexity to understand and evolve code over time.
-Dependence on the specific developer.
-Complexity in modifying the infrastructure.

Development with Onesait Platform

-Automatic provision of environments.
-Proven, integrated and ready-to-use technologies.
-Web environment that centralizes development and administration.
-Management of several projects and teams in a single environment.

-Visual development on ready-to-use components.
-Common platform for all layers.
-Reusability between projects.

-Automated deployment.
-Independence at deployment level.
-Infrastructure and base components deployed and supported.

-More maintainable visual development.
-Less dependency on developer.
-Automatically scalable.
-Support in development and production with the ability to prioritise.

Some of Onesait Platform’s Low Code Capabilities

At this point, we are going to detail some of the capabilities offered by Onesait Platform as a Low Code Platform. We are not going to see all of them, but we will see those that give an idea of the added value it offers.
Also, remember that the Onesait Platform is a Data-Centric platform, which makes it possible to manage the information life cycle, by enabling the construction of applications with "data at the core". We will analyse these capabilities on the basis of data processing: 

In the Persistence Layer

In this layer, the Platform provides capabilities such as multistore modelling, where the platform provides both independence of the database used, and the import from a file.

Let’s see some of these capabilities in detail.

Multistore modelling

The platform allows to handle, in a virtually transparent way, databases of different types, from any relational database with JDBC driver, to NoSQL databases such as Mongo, Elasticsearch, Big Data repositories such as HIVE and Kudu, etc. It is also able to treat a REST API or a Digital Twin as another data source.
This abstraction is done through the concept of ontology, which makes it independent from the underlying database, always offering an SQL engine to access it (even when using NoSQL databases such as Mongo or Elasticsearch).


All this implies that:

  • The modelling of the entities is done from the Platform’s Control Panel itself, and when you create the entity in the platform (the famous ontologies), it is responsible for creating the necessary tables or elements in the selected database.

  • The Platform is in charge of provisioning or connecting to the selected databases, thus isolating the development team from this complexity.

  • It also allows to connect to pre-existing databases and to create ontologies from existing tables.

  • The ontology is represented as a JSON-Schema and the instances of the ontologies are JSON files. This is independent of the selected storage engine, as the platform takes care of converting to and from this model.


More information on the concept of Ontologies here.

Import from file

The Platform also offers a UI to easily upload a file, in JSON, CSV or XML format. The Platform will detect the file format and will automatically generate the ontology in the selected repository and load the data into it:

In the Ingestion Layer

In this layer, the Platform offers several capabilities, among which DataRefiner and DataFlow stand out.

Data Refiner

The objective of this component is to "refine" the information that is loaded or extracted from the Platform. To this end, the tool offers an Excel-like interface that allows:

  • An end-user to load, from a UI, data from various places, such as from their own PC, from a URL or from information stored in the Platform itself.

  • Data to be uploaded in the main formats, including XLS, XLSX, XML, JSON, CSV, etc.

  • The user to work with these data with an Excel-like interface to perform data profiling, including data cleansing, enhancement, restructuring or reconciliation.

  • The "refined" data to be downloaded as files, or uploaded to the Platform as an ontology.


More information on this componente here.

Data Flow

This module allows you to create and configure data flows between sources and destinations in a visual way, both for ETL/ELT type processes and for Streaming flows, including transformations and data quality processes among these.
Let’s see a couple of examples:

  • Ingest to Hadoop of the tail of a file with field elimination process:

  • Ingest from a REST endpoint and upload to the Semantic DataHub of the Platform with data quality process.


Beyond this:

  • It offers a large number of connectors for specific communications, both inbound and outbound, as well as processors (int he Platform's Developer Portal, you can see all the connectors). Among the main DataFlow connectors, we can find Big Data connectors with Hadoop, Spark, FTP, Files, Endpoint REST, JDBC, NoSQL DB, Kafka, Azure Cloud Services, AWS, Google, etc.

  • All the creation, development, deployment and monitoring of the flows is done from the Platform’s web console (the so-called Control Panel).