Low-Code: The Next Generation Of Software Engineering
Simone Leckning
Jul 23rd, 2021
Blog

Low-code application development was a term first used by Forrester in 2014. They stated that low-code application platforms “accelerate app delivery by dramatically reducing the amount of hand-coding required”. Low-code development aims to make building software faster by not only reducing the amount of code, but also by enabling more people to participate in software development. Other technologies, like computer-aided software engineering (CASE), fourth generation programming languages (4GL), and early rapid application development (RAD) tools, have tried to do this before. But low-code can deliver on these promises where they didn’t. This is why low-code development platforms, like Five, are the next generation of software engineering.

 

Next generation software engineering

Computer-Aided Software Engineering

Computer-aided software engineering (CASE) refers to a group of automated tools that assist in the creation and maintenance of software.  CASE emerged in the late 1980s as a way to decrease the time and costs associated with software development. CASE tools were designed to increase programmer productivity.

 

However, the uptake and adoption of these tools was much lower than expected. One of the main reasons suggested for this was that they couldn’t live up to expectations. CASE tools were also difficult to implement as they had a very steep learning curve. This learning curve also caused an initial drop in productivity. Cost was another reason for poor adoption, especially in the face of uncertain benefits. Some CASE tools were already expensive, and the training required added yet another cost.

 

4th Generation Programming Languages (4GL)

Programming languages have evolved over time, with increasing levels of abstraction and understandability to humans. First generation programming languages (1GL), also called machine-language, can be understood directly by the computer. Second generation programming languages (2GL), also called assembly languages, are low-level programming languages that contain some English words. Assemblers then convert 2GL into machine code. Third generation programming languages (3GL), are high-level programming languages that even more closely resemble the English language. Before execution, 3GLs need to be translated into machine-language by a compiler. While 3GLs are more programmer-friendly than earlier generations, they still require specific training. 3GL includes some of the languages most commonly used today, like JavaScript, Java and C#.

 

James Martin introduced fourth generation programming languages in 1982 in his book application development without programmers. He proposed that the use of 4GL technologies would enable non-programmers to develop software. 4GLs were meant to increase productivity and ease of development. This was through an increased level of abstraction, using declarative statements and pre-built components.

 

However, the popularity of 4GL waned over the years. This occurred due to a number of limitations in the technology. The complexity of the software required limited the use of most 4GLs. Once an application became too complicated, it was easier to develop in 3GL. Many 4GLs were also restricted in what type of software they could be used to develop. Some 4GL technologies also limited what they supported in terms of operating systems, databases, and other software. Software built with 4GLs was also more difficult to customize, which further limited their usability.

 

Early Rapid Application Development (RAD) Tools

The term rapid application development (RAD) can refer to either a method of application development or a type of software development tool. The RAD method emphasizes rapidly building prototypes of sections of the final product (modules), with ongoing end-user involvement and feedback during the process. The modules are all developed in parallel, and then combined into the final product. Rapid application development tools enable development using this method. These tools included code generation features to help create software more quickly with less coding.

 

There are still rapid application development tools available today, however they have evolved from the early tools introduced in the 1990s. These early tools were not successful for several reasons. After the launch of early RAD tools, the focus of software development shifted to web development. These tools could not adapt fast enough to this change. RAD was also not suitable for projects that weren’t able to be split into modules or involved more technically challenging software. They were also limited in terms of the scalability of the software. The emphasis on rapid development and the user interface also resulted in a reduced focus on requirements planning and modelling. This then affected the quality and maintainability of the software.

 

Low-code Application Development

Low-code application development has learned from what came before to avoid repeating the same mistakes. These development platforms have a low learning curve. This makes it easier for developers and non-developers alike to use them. These platforms also acknowledge that not everything can be achieved through pre-built components. That’s why they allow for customization through the addition of code. Some platforms also let developers do this in common coding languages, which further lowers barriers to adoption. Low-code platforms also harness the benefits of cloud computing.

 

Low-code is essential to meet the increased demand for software today. Businesses now need to become more digital to remain competitive. According to IDC, by 2023 over 500 million new apps will be developed and deployed using cloud-native approaches. Building software using only hand-coding cannot meet this demand. In addition, there is an IT skills shortage that makes developing this number of applications even more unrealistic. Over half of CIOs identify an IT skills shortage is holding their organization back. We need a way to not only build software faster, but also to widen the developer pool. This is why low-code application development is currently growing in popularity.  Gartner predicts that by 2024, almost two-thirds of application development activity will be due to low-code development.

 

Five: The Next Generation

Throughout the history of software development, new technology continues to aim to increase speed, ease of development, and abstraction. The evolution of programming languages clearly shows this, from 1GL through to 4GL. Five is the next generation of software engineering.

 

Five is a low-code development platform built by developers for developers. Five gives you the flexibility to quickly build whatever you need, from simple to complex applications. When adding full code, Five lets you do this using common coding languages like JavaScript, TypeScript, C# or SQL, all of which are commonly used and have great communities. This further lowers the learning curve and means that developers knowledgeable in these programming languages can get started easily. Five also allows you to easily deploy your applications to the cloud and has development, testing and production environments for each application and application instance.

 

Contact us to find out more about Five, the next generation of software engineering, simplified.


TL; DR: Low-Code: The Next Generation Of Software Engineering

Five is a low-code development environment built by developers for developers. Five accelerates and simplifies software engineering. Software engineering is a discipline that is constantly evolving. Low-code solutions are the next generation of software engineering by introducing higher levels of abstractions than traditional full-code approaches to building applications.

Share Post:

Thank you for your message!

Our friendly staff will contact you shortly.

CLOSE