A12 Product News (Release 2023.06-ext, November 2023)

In the following A12 Product News, we take a look at the innovations that emerged from the release “A12 2023.06-ext” in November 2023.

The mgm A12 Enterprise Low-Code Platform is a powerful tool for developing enterprise applications in complex IT landscapes. A12’s modeling platform enables the rapid creation and long-term maintenance of applications, even without extensive programming knowledge. The A12 runtime platform provides the flexibility to seamlessly integrate low-code apps with professional custom software development and system integration, thus facilitating the development of fully integrated enterprise applications.

1. SME Introduces Support for Model Refactorings

In software development, automated support for refactorings has been a standard feature of development environments since around 2005. For example, if you change the name of a function, then all calls to that function in the code will automatically have their names changed as well. This reduces the effort of structural changes and eliminates a number of error sources. On the level of modeling, this principle is a novelty.

The Simple Model Editor (SME) now offers first automated refactorings in the area of Document Models. A new refactoring dialog clearly shows all affected places when deleting, renaming or moving elements. In most cases, the changes can already be made automatically. When deleting an element and changing field types, the user is only notified of the changes, as the desired adjustments are difficult to predict here. Renaming enumeration field values and refactoring operations within a single document model are not yet supported. However, the refactoring functionalities of the SME will be continuously expanded in the coming releases and also extended to other model types such as Form Models.

2. R&D Around Model Changes

Model changes in general are currently a subject of research in the context of low code platforms. Some colleagues from the SME team recently presented a method for comparing different model versions at MODELS 2023 in Sweden – the largest international conference for Model Driven Software Engineering. A summary is provided in the paper Model and Data Differences in an Enterprise Low-Code Platform.

Download Paper

The findings from this will be incorporated into new functionalities of the SME.

3. A12 e-learning platform for partners and customers // A12 certificates

The new A12 e-learning platform gives A12 customers and partners access to digital knowledge in the form of training and tutorials. Login is made easy with the GetA12 access credentials at https://training.geta12.com/. As a first step, certificates will be made available for the following training programs after successfully completing an assessment (30-60 min): A12 Modeling Certificate (Basic) and A12 Dev Certificate (Basic).

mgm’s Training team is working on adding more learning content in digital and blended formats to the e-learning platform, this is just the start.

4. New: A12 Partner Support Portal

The launch of the new A12 Support Portal ensures efficient collaboration between A12 partners and the A12 Platform team. With access to the new mgm Jira service management system, our partners now have a ticket-based helpdesk to submit general questions, issues, training needs and feedback via tickets and track their processing. Of course, the A12 Partner Management Team is still available for all inquiries. For an overview of our current support offerings, please visit https://geta12.com/support/.

5. Several Improvements Around Ad Hoc Tests

Since the beginning of 2023, the SME supports so-called ad-hoc tests. Modelers can use them to test selected sections of a document model – especially validations and calculations – in isolation in a preview. Several newly introduced convenience features now simplify the use of these tests. First, the test of the entire model can now be triggered directly via the context menu of the root of the model tree. It is no longer necessary to select all fields via multiselect. Second, the test preview is now updated live when model changes are made – enabling a more seamless testing workflow.

6. Optimized Handling of Thumbnails

The Data Services component of A12 now provides two new configuration options around thumbnail usage. With attachments.thumbnail.optimization.enabled=true (default: false) LOAD_ATTACHMENT_HEADER returns the URLs of thumbnails if the ATTACHMENT_HEADER is already loaded. This way, the requests to retrieve the URLs can be minimized. In addition, attachments.thumbnail.optimization.performance.enabled=true (default: false) can be used to activate an alternative algorithm that speeds up the creation of thumbnails by up to 50% – but also generates different thumbnails than before. The use of this option should be evaluated depending on the project requirements.

7. Vanilla Images for A12 Components

A12 introduces vanilla images, which provide additional options to ensure secure and scalable operation of A12 applications. Their use is particularly beneficial for projects with high complexity. Vanilla images encapsulate the standard functionality of individual A12 components. They accelerate the deployment of new releases and ensure high performance as well as compliance with security standards. In the first step, a vanilla image is available for the server component “Data Services”. Images for other components such as UAA and workflows are planned.

8. Workflows: Higher performance with Manual Data Synchronization

In the default configuration, the workflows component of A12 automatically synchronizes all document fields that are annotated with “availableInProcessAs”. The option to perform data synchronization manually has now been added. This opens up opportunities for better performance, as synchronization is only triggered when it is actually needed. In the first step, automatic synchronization must be deactivated (mgmtp.a12.workflows.automatic-synchronization.enabled=false). In the second step, synchronization can be triggered with syncAvailableFieldsDelegate> directly before a field is used in BPMN.

9. Project Template: Variants With Additional Functionality

The A12 Project Template offers development teams a basis for setting up projects quickly and in a standardized way. In addition to the basic template, several variants are now available. They provide additional functionalities out-of-the-box that are needed in many – but not all – projects. Currently, for example, there is a variant which is configured for the use of Relationships. Another variant includes the Workflows component from the get-go. Thanks to the variants, projects now have more options to set up the A12 runtime platform quickly according to the respective requirements.

10. Data Distribution – Now Available in V1.0 With Detailed Documentation

With the help of the Data Distribution component, A12 applications can be equipped with effective offline capabilities. It enables highly scalable data synchronization between a server-side infrastructure and a potentially very large number of clients that are not permanently online. This is typically the case when business applications on mobile devices are involved. The component’s origins lie in an e-commerce project in which it manages the data synchronization of a global network of stores.

Since its first introduction in October 2022, the A12 component has been continuously refined and is now available in version 1.0. New detailed documentation clearly shows development teams how to use the corresponding Data Distribution libraries in the front-end and back-end, and how to add offline capabilities to A12 applications. Data Distribution is not included in the A12 Platform license, but can be licensed separately as needed.

11. Secure Field-Level Authorization – UAA Property Authorization Supports A12 Documents

In many business application scenarios, the role of the user determines which fields of a data set they are allowed to access. In web applications, such authorizations must always be explicitly checked in the backend as well. If not, the result will be a security vulnerability. The OWASP API Security Top 10 lists this case as a so-called Broken Object Property Level Authorization. The UAA component of A12 has provided the possibility for property authorization in the backend for quite some time now. So far, this kind of authorization has worked with resources as Java objects – more precisely Plain Old Java Objects (POJO). Now UAA also supports resources as A12 documents out-of-the-box. This makes it much easier to define the corresponding authorizations in the backend of A12 applications.

You can find out what the OWASP security recommendations for A12 applications actually mean in this blog post.

12. Tree Engine supports pagination

With the help of the Tree Engine of A12, data can be displayed in a tree-like hierarchy. However, if the underlying data set is very large, the loading times for displaying the tree can also be very high. With the new modellable paging support, it is now possible to set how many nodes are displayed directly in each case. In applications with very large tree-like structures, this can significantly improve performance. Users of the application can show more or all nodes using the “Load more” or “Load all nodes” buttons. Paging support can be activated in the SME in the configuration of a tree via the “Enable Pagination” option. The “Page Size” parameter determines how many nodes are displayed.

More News in a Nutshell

  • The new TypeScript API for validations and calculations introduced by the kernel team in release 2023.06 is now mature and no longer experimental.
  • A guide on how to integrate A12 Notification Center into your project (backend, frontend, deployment) will be available soon in the documentation in GetA12.