Data Driven Model

Note that Appway 2022.2 has been renamed FNZ Studio 2022.2 In the article below it is also referred to, generically, as Platform.

The latest Appway/FNZ Studio Platform versions (starting from Appway 10) and all Application Business Components (ABCs) have seen a significant paradigm shift. Our new approach is known as Data-Driven Model and it is the result of continuous exchange with our customers and developers. Its main goal is to render complex user interfaces based on modeled business logic. The main reason behind this change is reducing the time and effort needed to configure an Appway/FNZ Studio Solution to be ready on the market.

Data-Driven Model Principles

The following section illustrates the main principles guiding our Data-Driven Model.

Data-Centric and Rule-Centric Approach

The new data-centric approach moves away from our traditional Screen-based strategy, which is more time-consuming and demanding. Information is modeled mainly around the Data Class and Data Logic Editors, which have been greatly enhanced in the latest Platform versions. In particular, the Data Logic Business Object is responsible for handling all the logic around data, such as data visibility, editability, grouping and validation. On the other hand, Rule Business Object allow for high modularity and reusability of the business logic.

Low-Code Principle

The low-code principle has always been pivotal in our Platform. However, we are bringing this approach even further, by limiting the use of scripting and low-level programming. With the new data approach, developers can obtain the same results by using the necessary Data Class, Data Logic or Catalog. LowVSHighCode.png

Autogenerated UI and Configuration (VS Customization)

Building a Solution UI might be highly time-consuming with a Screen-based approach, where the interface relies on elements such as Style Business Objects. Although styling may be useful in specific circumstances, where a high degree of customization is necessary, in most cases it may be extremely lengthy. The new data approach comes up with a new unified, consistent UX that can be reused in all Solutions. Developers will just need to define the data model and data logic, and the Platform will take care of generating the presentation layer. AutoGeneratedUI.png

Features such as the Theme Editor allows for a unified approach, where all low UI details are defined by the Platform itself.

ConfigVSCustom.png

Declarative (VS Imperative) Approach

In previous versions, developers needed to "instruct" the Platform on how to achieve specific goals (e.g., showing or hiding an item) through precise and concrete steps. This might be called Imperative approach. The data-driven model, on the other hand, allows developers to focus on their final goal instead of addressing low-level details. For example, features such as Data Class Behaviors provide semantic information at Data Class level to ensure that the final representation in a Data Driven UI is coherent with the data contained in the Data Class. In other words, a Behavior defines the way in which a Data Class behaves when it is represented in an automatically-generated UI.

DeclarativeBehaviors.png

Benefits

The new data-driven model provides several benefits, which are summarized below:

  1. Easier configuration — The low-code, declarative approach significantly reduces the complexity involved in Solution configuration.
  2. Reduced implementation effort — The configuration-oriented approach dramatically decreases the time and effort required to set up Solutions.
  3. Minimal effort for visual presentation — The auto-generation of the UI allows developers to focus on differentiating factors, such as data and business logic
  4. Simplified maintenance — Since the business logic is centralized in one single place, it is significantly easier to implement new requirements or update existing logic.
  5. Modularization and reusability — Since configuration is shared across Application Business Components (specifically, App Tasks), the business logic can be defined once and then reused throughout a Solution.
  6. Reduced training time for developers — Thanks to a uniform approach across Application Business Components and the reduced complexity of configuration, training time for developers is significantly reduced.

Related Sources

The Data-Driven Model landing page of our Knowledge Base lists all the related documentation. Developers will find all the necessary information on the following topics: