Citizen Development is flourishing under the COVID-19 crisis, but has a direct impact on the maintainability of the application landscape of your organization.
Recently, Dutch newsletter 'Het Financieele Dagblad' reported on a substantial growth in the usage of low-code application platforms during the COVID-19 lockdown. Low-code platforms, sucvelopment work, as well as minimal upfront investment in setup, training, and deployment. They are offered as platform as a service (PaaS) and are intended for developing and delivering enterprise web and mobile applications, which run in the cloud, on-premises, or in hybrid environments.
The article by Het Financieele Dagblad points out that low-code vendors identify similar growth with every (economic) crisis – low-code is regarded by many organizations as a means to develop applications on a smaller budget. Furthermore, the Corona-crisis has led to an increasing demand for applications related to logistics due to the difficulties many organizations are currently facing.
Expectations from Gartner show an increase of the use of low-code platforms over the upcoming years, presumably leading to a situation in which low-code application development will be responsible for more than 65% of application development activity by 2024. Imagine what impact this trend could have based on the expectations Gartner posed.
Despite the many advantages of low-code platforms, such as enabling business users to velop simple applications tailored to their needs without much training, the following aspects of software development are not surpassed:
- Low-code development remains software development.
Nowadays’ applications are rarely standalone applications. Applications interface with each other to exchange data, process, enrich and feed back to others. Even with low-code development, attention to architecture remains important to prevent an equivalent to the ‘spaghetti’ created between Legacy systems and Client-Server applications with increasing networking possibilities in the early 90s.
- Low-code development also does not stop after a first release.
Every newly deployed application immediately becomes part of the organizations application portfolio. Most, if not all, applications continue to be developed further to support changing business needs and undergo technical changes (e.g. with regard to changing interfaces, implemented fixes towards security exploits or updated libraries or re-used components). So, as soon as an application is delivered, it is part of the legacy and application maintenance commences.
Low-code platforms have led to an increase of citizen developers: non-professional software developers who build applications for use by other people. Citizen developers, often business users, do not report to IT but merely make use of tools such as low-code platforms that are, at best, sanctioned by IT. This oversight by IT distinguishes citizen development from so-called 'shadow-IT', which takes place without the knowledge or control of IT. Although the risk remains that some business-valuable shadow IT is created and the IT department becomes responsible for the proper and undisrupted functioning of these applications without being aware of their existence. If shadow IT is created within your company expect budget overruns of your IT department within a few years.
The introduction of low-code platforms works as a catalyst for citizen development: the ease of use and abstraction from traditional programming that these platforms offer, almost invites tech-savvy business users to start building their own applications. With non-professional developers added to the equation, the technical quality of delivered applications may be in jeopardy.
A survey by OutSystems conducted in 2018 shows that approximately 50% of organizations claimed not to have any citizen developers within their organization at that time. Under organizations that already apply low-code platforms, 60% of all respondents confirmed citizen development. The actual share of citizen developers in the IT landscape might be even higher as it is questionable how many of these respondents are even aware of business-led development or subject to wishful thinking.
In the survey conducted by OutSystems, out of the 52% of respondents that claimed citizen development in their organization, 31.8% claimed to have little or no control or oversight in the development efforts and delivered quality of citizen developers, and identified a risk for the organization. All-in-all a rather large population of (often) less tech-savvy users is adding applications to your application landscape, especially with the sudden increase due to COVID-19 in mind.
Citizen development under control
Nowadays, a lot of different tools are available to developers. Some tools cover the functional testing of software where others focus more on evaluating and enhancing the quality of the actual coding of an application.
Static analysis tooling, such as offered by KPMG and Omnext, uses quality models to assess, in an automated manner, the application sources based on the ISO/IEC 25010 standard for software quality. By analyzing the application sources and evaluating its quality based on industry standards and good practices, metrics on quality aspects such as maintainability, security, reliability and performance can be acquired – without putting a burden on the citizen developer, IT can gain insight in the technical quality of the developed applications and, from there, take action if needed.
As the aim is to create high quality, easy to maintain and easy to adapt software, tooling can be of great help for developers to double check their work in a very time and cost-efficient way and make their lives a bit easier while enhancing the quality in one go.