Under increasing pressure to quicken their time to market, organizations across every industry have caught on to the advantages of low-code software engineering as a way to support rapid development.
The adoption of low-code platforms, such as Mendix and OutSystems, is growing fast and furiously, and it’s likely to become a standard across many organizations.
Low-code quality scores above average
The 2020 SIG Benchmark Report included a code maintainability ranking by tech stack, where low-code applications placed first, receiving an above-market-average score of 3.23 SIG stars (out of a possible five).
An important caveat here, however, is that many low-code applications are relatively small. That’s an important aspect when looking at build quality and maintainability according to ISO25010, the international standard for software quality. As low-code applications mature and increase in both size and complexity over time, it’s important that the foundation (architecture) and adherence to clean coding principles (avoiding anti-patterns) are still taken into account.
In this article, we explain a 5-step model, based on SIG best practices, to increase productivity of your (citizen) developers while establishing high build quality standards for your low-code applications.
Step 1. Establish a Center of Excellence and governance model for business-critical applications
Many organizations using low-code development for business-critical and core systems have seen the effectiveness of designating a low-code specialist/coach (or, in larger organizations, building a Center of Excellence) and implementing a governance model for the quality and security of their applications.
One of the biggest benefits of low-code development is also its greatest challenge. Low-code makes it simple to build functionalities without having to focus on the underlying architecture and software engineering that actually takes place; in fact, that’s often not enforced by the platform. That’s fine if you need to quickly build a prototype or a small app for temporary use. But if the application will be used for production purposes and may be expected to grow over time, then a different approach should be considered and a governance model implemented.
All applications start small indeed, but should be managed with the goals of the future state in mind. This enables anti-patterns in the software to be eliminated, more easily and at a lower cost as well.
Step 2. Continuously measure productivity and build quality
High productivity shouldn’t lead to low build quality and security issues, and this is a threat to guard against when developing with (citizen) developers on low-code platforms. Ideally, the goal should be to build high quality applications, while optimizing the productivity of your development resources. In practice, SIG sees that this is absolutely achievable.
The first tasks of the Center of Excellence include defining the baseline for build quality standards and selecting a platform to measure them consistently. Although it differs a great deal from traditional technologies, such as Java or C#, low-code development is still software engineering – and that means the same best practices for software quality management must be taken into account. Failure to do so can easily result in low-quality applications, presenting significant drawbacks to business stability and agility. For that reason, training (citizen) developers in software engineering best practices is crucial. (For further insight along these lines, take a look at the eight guidelines in this eBook by our colleague, Rick Klompé.)
Step 3. Facilitate ongoing learning and improvement for long-term success
A governance model should include at least one low-code specialist/coach to monitor the landscape of applications and assess the quality and security of each against pre-defined thresholds. It’s important that anti-patterns occurring during the daily development activities are checked by the developers themselves in order to continuously learn what they did well, and what could be done better to continuously improve their development activities.
The low-code specialist/coach can also help to fix any anti-patterns, which will be easily corrected in most cases if feedback loops are frequent and based on accurate insight.
Step 4. Collaborate with suppliers in applying quality standards
A focus on high quality and optimal productivity is essential for subcontractor management. When working with specialized low-code development partners, both productivity and quality are important criteria by which to measure these suppliers, in addition to their rates.
Figure 1: A Center of Excellence can help all internal and external teams move to the upper right quadrant (with optimal balance between productivity and quality).
While initial focus will likely be on the lower left quadrant in the figure above, where both quality and productivity score low, the upper left (low quality) and lower right (low productivity) quadrants are also areas to potentially discuss for improvement and success in the long term.
Providing your suppliers with access to quality and productivity metrics, and, based on these insights, allowing them to review their application themselves and improve its build quality and security, enables effective collaboration in achieving the best result.
Step 5. Implement a dashboard – starting day 1
Nobody intentionally builds applications poor in quality and security. A low-code dashboard delivering continuous insights and actionable recommendations based on reliable measurement creates a win-win for all: the customer, the subcontracted developers, and the low-code platform vendors.
A dashboard provides an important single source of truth about the application quality, ensuring that all stakeholders are using the same data to make decisions. Activating your low-code dashboard can be done within a day and greatly help you to rapidly mature your low-code organization.
Developing business applications with low-code platforms can boost an organization’s innovation speed and agility. However, the benefits of a low-code platform can be lost over time if technical quality is neglected and the technology isn’t properly used.
The only way to keep your low-code development velocity high is by actively steering on software quality. When your development teams and organization recognize that software development best practices can and should be applied for low-code platforms, you put yourself in a strong position to capture the low-code advantage for the long haul.
Sigrid®, the software assurance platform from SIG, is the default application quality monitor solution for Mendix. Sigrid is also highly recommended for OutSystems (along with the OutSystems Architecture Dashboard) and supports more than 285 other Low-Code and High-Code development technologies.
About the Authors:
Hugo Schoonewille is a software consultant at SIG, specializing in low-code technologies.
Michel van Dorp is Vice President of Strategic Partnerships at SIG.