What is Low-Code Development?
Smartpedia: Low-Code Development propagates the creation of applications almost without programming by simply clicking together ready-made software modules.
Low-Code – configuration instead of programming
Software development presents many organisations with major challenges: It takes a relatively long time, is often cost-intensive and there is often a lack of necessary development capacities. Wouldn’t it be nice if there was a way to develop software faster, more efficiently and, if necessary, without – or at least without extensive – programming skills? One answer to this wish is low-code development.
Low-code development propagates the creation of applications almost without programming by simply clicking together ready-made software modules. “Configuring instead of programming” is the underlying idea. This is made possible by low-code and low-code platforms.
What does low-code mean?
Already in the early 1990s there was the so-called Rapid Application Development. These were programming environments with which the graphical user interface of a desktop application was first created and only then was the corresponding business logic implemented. This was followed by approaches of Model Driven Development (MDD) – sometimes also referred to as Model Driven Software Development (MDSD) -, Model Driven Architecture (MDA) and various modeling languages such as the Unified Modeling Language (UML), the System Modeling Language (SysML) or Business Process Modeling and Notation (BPMN). In 2014, the US market research company Forrester Research coined the term low-code. And what is low-code? Is it perhaps even a kind of “inferior” code?
The answer to this question can be found in a small detour: in addition to low-code development, there is also so-called no-code development. Low code does not refer to the quality of the code, but to the code creation. In low-code development, the majority of code is generated by configuration using a low-code platform. The share of manual code development is small compared to the configured code quantity, i.e. “low”. In contrast, the promise of no-code development is that all code is configured and manual code generation is unnecessary. Whether this actually works in reality and the quality of the code may be different.
Sometimes it can be read that low-code would be easy to read and understand even for non-programmers. That sounds good, but it may also be questioned.
What is a low-code platform?
If you want to develop low-code, you use a low-code platform – sometimes also called low-code development platform or low-code automation platform. There are a number of providers, including
- Scopeland
- Betty Blocks
- mendix
- Salesforce
- thinkwise
- Progress
- Bizagi
- agilepoint
- Appian
- Power Apps
- zoho Creator
The different platforms pursue different concepts and offer different functions. But basically they all offer
- a presentation layer with visual editors to arrange user interface elements,
- a business logic layer – usually with visual editors – for designing business entities and processes,
- a data layer for the creation of business entities,
- as well as basic services such as authentication, authorization etc.
Some platforms are operated in a cloud, others are installed on-premise. Some deliver executable code and others require a runtime environment. Here is a nice description of how low code platforms work.
Advantages of low-code development
Low-code development can offer the following advantages:
- Low-code platforms are designed for use by internal teams. The generation of low-code can reduce costs, since no external development service providers are needed.
- Large parts of an application can be developed without explicit programming knowledge. This is made possible by the modular principle, sometimes referred to as “software development à la Lego”.
- Companies often lack capacities in software development. Since non-programmers can also develop software with the platforms, the shortage of skilled workers is mitigated to a certain extent. Here you can read how a low-code team should be composed.
- In many companies there are departments that develop software independently – without the support of a central IT department. Former developers and software-affine employees do not want to wait several months for internal solutions. By using low-code platforms, a meaningful coexistence between central IT and shadow IT can be realised.
- The development cycle can be shortened because the application can be created almost parallel to the specification of requirements.
In theory, many advantages sound comprehensible, but in practice they first have to be proven in individual cases. According to the Pareto principle or the 80-20 rule, low-code platforms deliver 80% of the code, but the remaining 20% cause 80% of the effort. In addition, there are questions about the performance of the platforms, possible technical limitations, the learning curves of the users, the effort for services such as training, maintenance and support. Many providers try to answer such and similar questions with application scenarios, reference projects or studies from market research companies.
The Low-Code Manifesto
At the turn of the year 2022/2023, the Low-Code Association e.V.¹ published a Low-Code Manifesto. It was signed by 9 people who are active for platform providers and service providers.
Low-Code
- is revolutionising the design, development and long-term maintenance of software, with customised software increasingly being assembled from pre-built program functions using interactive, visual and declarative methods.
- enables companies to develop software cheaply and quickly for many business processes with high acceptance.
- is an approach beyond technologies or platforms that initiates a rethinking in organisations.
- reduces the complexity of application development and is suitable for all approaches.
- is an answer to the skills shortage, providing an efficient way to process- and data-oriented web and app development, interface and output generation, process control and process automation, data analysis, decision automation, and expands the range of people involved in development.
Here you can download the entire Low-Code Manifesto with all 14 points.
At Heise in the forum you will find exciting pros and cons of low-code development (in German).
Here you will find additional information from our Smartpedia section: