Various approaches to programming Overcome low-code limits
11.03.2022A guest article by Christof Langer *
The shortage of skilled workers is also affecting companies and authorities in the course of digitization. That is why software development using low-code is enjoying growing popularity. But not all low-code platforms are able to digitize complex, variant-rich processes.
Related companies
As far as process modeling is concerned, most low-code platforms are not fundamentally different from classical software programming.
(© vege – stock. adobe.com)
The term “low-code” describes an approach to software development that requires less programming effort and requires less programming knowledge. Instead of using text-based programming languages, the developers work in a graphical development environment and assemble their code from predefined building blocks. Configuring instead of programming is the motto.
The aim of the low-code approach is to enable specialists to create applications or parts of them themselves as “citizen developers” and thus relieve the IT team. Low-code programming is on the rise. Gartner predicts that by 2024, 65 percent of companies will be developing with low-code. The global market for low-code development technologies, which according to Gartner reached a volume of $ 13.8 billion last year, is expected to increase tenfold by the end of the decade.
There are now hundreds of low-code platforms and their number continues to grow. In some cases, the platforms differ significantly in the approach to process modeling, the learning effort for the developers and the speed with which they can develop their first applications. This must be taken into account when choosing.
One code for all applications
Classic low-code platforms still generate an individual source code for the individual applications, which is changed and made usable for each installation. In addition, the developer must build a data model and think about how to ensure the persistence of the data, i.e. he must create a database. This not only requires know-how, but also does not allow generic application development.
A new generation of platforms, on the other hand, takes a generic approach, i.e. it serves all applications from a uniform software solution that is only configured individually for the customer. This does not exclude the possibility that the applications can be supplemented with Javascript code. But this – often so-called – “professional” code does not have to be rolled out, but is encapsulated in the platform, so that your core functions can still be updated centrally.
Thanks to the generic approach, these platforms are more universal. They make it possible to map complex administrative, commercial and /or technical processes in the Industry 4.0 environment to 95 to 100 percent purely by configuration. The application for a purchasing process is structured in the same way as that for a technical process, e.g. for monitoring a chemical silo, so that both processes can be linked very easily.
In principle, it is therefore more about no-code than low-code platforms, because they (almost) do without programming. However, the term “no-code” arouses false associations or is often misunderstood because it suggests that no-code platforms have functional limitations and can therefore only be used for the digitization of simple processes. However, this has less to do with a low- or no-code approach than with the question of how the processes have to be modeled or not modeled with the respective platform.
An alternative to process modeling
Most low-code platforms are not fundamentally different from classical software programming in terms of process modeling. The developer first models the process with all gateways to make it executable. This leads to a huge “process wallpaper” for complex, variant-rich processes, which is hardly manageable and rarely covers all exceptions. Each gateway increases the complexity by a factor of two, which results in an exponential growth of process paths and actions. Just think of the story of the grain of rice on the chessboard.
However, there are alternative approaches or technologies that do not control sequentially, but rule-based or event-driven from one action to the next or to an optional selection of several actions. Instead of mapping the process, the software for the process is created by defining actions or action types and action rules that map the business logic. These rules depend on specific process states or statuses and determine when which action is performed. By executing the action, the process then transforms into new states.
The advantage of this generalized rule-based approach is that even complex processes can manage with a manageable number of actions. As the complexity of the processes increases, it does not increase exponentially, but linearly.
Faster than agile sprints
Due to the fact that the citizen developers do not have to create a process model and “pour” it into software, but can create the solution simply by configuration, the approach is highly agile. It’s almost not worth setting up agile sprints, because the apps are often ready before the first sprint ends. The software can be developed “every hour”, so to speak. The developers are not only much faster than with classic low-code programming, but also start configuring their first web apps much earlier, sometimes at the beginning of the two-day training.
A first prototype can be created within a few hours and can be tested immediately at runtime. Using the user interface of the generic software, the developer configures not only the application, but also the generic frontend, so that the solution is immediately available. Parallel to the configuration, the documentation is automatically created, which can be used as a manual or even as a specification for the acceptance of the solution.
Dipl.-Ing. Christof Langer: “At some point, you have to think about a generic approach in order not to have to do everything over and over again.“
Such a generic, rule-based approach to configuration can be perfectly combined with established business processes and IT systems. Numerous interfaces are available for connecting other applications. The system logic can also be used to control external processes via a standardized REST API. This approach thus offers a maximum of flexibility in the digitization of business processes and industrial processes in the I4.0 environment. This enables companies to react faster to new market requirements, integrate existing systems more easily and modernize their software architectures step by step.
* Christof Langer, b. born in 1968, is Managing Partner of Allisa Software GmbH and lecturer for Digital Business Management at the Euro-FH University of Applied Science Hamburg. The qualified aerospace engineer has been working in the software industry since 1998. Mr. Langer lives and works in the greater Hamburg area.