July 27, 2023

Are you taking chances with your low-code platform?

Authored by Adithya Raman, Senior Manager, Customer Success, WaveMaker, Inc

Selecting a low-code product requires a clear understanding of your most common requirements. Are you dealing with a variety of data and workflows? Do your apps need to integrate with partner APIs? Are your business requirements changing often? Are your users finicky about the experience? Do you have both citizen and professional app development teams? Are you finding it difficult to hire skills?

All low-code platforms give you a promising start. You get off the block at speed, simple apps are easy, and tough ones seem possible. But missing key requirements in your platform means you will soon find yourself skipping deadlines or you need to hire developers to finish the job - defeating the purpose of buying a low-code product. That's why setting some criteria for choosing a low-code application platform is important. Here is our list.

What are your goals for using the low-code platform?

Using a low-code application development platform offers several benefits.
Here are some common goals of using a low-code platform:

Accelerated Development, Increased productivity, Faster time to market

Low-code platforms enable faster application development by providing pre-built widgets, custom reusable components, and visual development interfaces like out-of-the-box themes, templates, and layouts. Developers can rely on drag-and-drop methodology, automatic code generation that provides open-standards-based code that is human readable, and auto-API documentation which is all handled by the low code platform. This allows developers to focus on the core functionality of the application without spending excessive time on repetitive coding tasks and reducing the manual coding effort drastically. Consequently, development cycles are shortened, and applications can be delivered to the market quickly.

Cost Savings, Reduced TCO (Total Cost of Ownership) of Applications

Low-code platforms can reduce development costs by minimizing the need for seeking/hiring proprietary developer skill sets, and extensive coding, reducing the development cycle, and streamlining maintenance and updates. With faster development times and increased productivity, organizations can achieve cost savings in terms of development resources, resource allocation, and time to market. Low-code platforms priced based on developer seats are hassle-free when it comes to developing applications, as there is no limit to the number of applications or end users. In addition, it is vital that these platforms do not have any runtime dependency or hidden costs that can later impact the TCO of applications.

Simplified Integration & Deployments

Low-code platforms offer seamless integration capabilities with third-party systems, databases, and APIs. This simplifies the process of connecting and interacting with external services, eliminating the need for extensive custom coding. As a result, integrating disparate systems becomes straightforward, enabling enterprises to leverage existing enterprise assets and data sources effectively with minimal to no disruption in existing practices. The LCDP should also provide the ability to deploy anywhere without any runtime implications. This will enable enterprises the freedom of deploying their apps built using LCDP to either merge with their existing CI/CD process or deploy to an orchestration layer like K8s or Redhat OpenShift or a cloud of their choice or an on-premise setup.

Agility and Flexibility

Low-code platforms provide the ability to make rapid changes, prototyping, and updates to applications. With visual development interfaces that include the WYSIWYG approach, developers can easily modify and adapt applications in response to changing business requirements or user feedback. This agility allows organizations to iterate quickly, experiment with new ideas, and respond accurately to market demands.

Collaboration and Transparency

Low-code platforms come with built-in collaboration features, allowing multiple developers to work together on a project. By providing centralized governance and enterprise-grade features like role-based access control at a development level which enhances project management for a development team. These platforms facilitate communication, version control, knowledge, and application asset sharing among team members by providing an internal artifact repository that resembles an internal developer marketplace. This promotes transparency, enhances teamwork, and improves the overall developer community.

Who are the users? What’s their coding expertise?

There are primarily two user personas when it comes to low-code platforms - developers and business users. There are low code development tools that are developer-focused and built using standards frameworks like Java, Angular, HTML, CSS, and Javascript that are tailored to developers to boost their productivity and make them efficient while minimizing the learning curve.

  • The developer-centric LCDPs are designed to deliver enterprise-grade applications and are used to solve real-world enterprise product gaps and deliver customized user journeys that provide heavy customizations creating value for enterprises and their end users.
  • The developer-centric LCDP acts like a force multiplier over existing skill sets of development professionals, transforming them into full-stack developers, so teams can manage the entire application life cycle end-end.
  • It is hard to find an LCDP that is completely tech stack agnostic to the type of preferred developer. That being said, for a developer-centric LCDP which is either Java-based/.Net based, it would be easy to find the relevant talent pool in the market and relatively easy to adopt and adapt to.

On the other hand, there are LCDPs that are business user-oriented, which deliver a workflow-based approach to application development that may or may not fall under the category of solving serious enterprise-grade applications, like basic approval flows, data collection, etc., they do provide value in creating simple user journeys and flow-based applications. But here, the application delivery cycle times can be delayed due to a handoff between the business user and the development/delivery teams.

What is the scope and scale of the problem to be solved?

There are multiple use cases that can be an ideal fit for low-code platforms:

  • Creating new user experiences: LCDP can provide pixel-perfect UI and screens that enable enterprises to develop end user-facing web responsive & mobile applications as per their customer convenience. Enterprises also need to keep in mind that to maintain customer satisfaction, their offerings need to change as per market demands and conditions to provide the best value to their customers. Having the ability, agility, and flexibility to match or exceed these expectations with minimal effort and maximum productivity is something to look out for in an LCDP.
  • Legacy System Modernization: Enterprises still rely on legacy systems that are outdated or difficult to maintain which leads to increased TCO. Low code platforms can help modernize these systems by allowing developers to build new interfaces, integrate with modern technologies, or even replace specific functionalities with modern application artifacts. It is essential to choose an LCDP that provides a tech stack and a scalable tech stack upgrade plan to maintain and keep your applications relevant and futureproof.
  • Self-Service Portals: Low code platforms can be utilized to create self-service portals, empowering end-users to access and manage their own data, request services, and perform tasks independently. These portals can enhance customer stickiness, reduce support overhead, and improve overall user experience. The LCDP should have an underlying framework that is open and flexible to easily integrate into the existing enterprise assets/core systems with minimal disruption and can provide a modern interface necessary to absorb new requirements faster.

Are there custom integrations with external and internal applications?

The LCDP of choice should have the necessary open framework to support integration for systems already in use within your enterprise to meet your application requirements. Integrations to Swagger API open spec or standards provide LCDPs with a higher acceptance of universally used APIs facilitating integrations with any third-party systems - external or internal.

It is an added benefit when the LCDP is advanced enough to understand the API input and provide the necessary CRUD endpoints automatically based on the API definitions. This heavy lifting of the LCDP will improve developer productivity and reduce the coding effort. In some cases where the already in-use APIs do not meet the universal Swagger spec standards, there would be a need to create custom integrations and custom code configurations to enable the LCDP to accept these APIs. A pitfall to look out for would be that LCDP in consideration could be tied to a particular technology and only supports integrations within the said locked technology landscape (for example - Microsoft™ / Salesforce® / ServiceNow™). This can limit or eliminate the scope of integrating with other third-party systems that use other technologies.

What is the turnaround time needed?

With the LCDP being developer-centric and open standards-based, it is easily adoptable by developers. The ability of the platform to generate standards-based code that is human-readable, editable, and extensible gives developers a sense of security and ownership. This puts the developers in their comfort zone to be able to adopt a new development tool or a platform, and the learning curve is neither steep nor long. With the help of the support channels, documentation, and training, the adoption time coupled with the understanding of best practices creates a seamless transition for developers to feel confident with the platform of choice. A realistic time estimate for a developer to attain low-medium proficiency with an LCDP can be 1-2 months and high-expert proficiency may span 3-4 months.

How much control do users want to retain over code?

An LCDP providing code-level controls is definitely a good-to-have feature when choosing an LCDP. An LCDP that provides access and control to the generated code provides development teams with transparency and ownership which may be in general; lacking in LCDPs that do not provide code control or access. Development teams can now understand and read the generated code allowing the possibility to bring in more complex customizations and integrations to meet the high standards of enterprise-grade use case requirements.

The advantage of an LCDP that generates code and provides code-level controls can be seen in the versatile use cases of the platform. There can also be scenarios where development teams need not want access to the generated code/perform code-level changes, which is befitting for such requirements. A good LCDP platform caters to this segment of developers as well.

Does the application need to factor in security considerations?

All enterprise applications need to come with enterprise-grade security measures to safeguard the applications from external threats making them robust and secure. It is a good practice to look out for LCDP platforms that have certain out-of-the-box security certifications in place like OWASP Top 10 vulnerability attacks. This saves time and effort to perform individual tests as the platform already possesses these safeguards.

LCDPs that generate code need to take care of the code quality and standards to minimize flaws in their first-party code. Having a certified status by companies like Veracode, Checkmarx Acunetix, etc. represents a high standard of security practices in the generated code. In addition to this, LCDP platforms should have the provision to connect with existing enterprise authentication and authorization mechanisms to blend in. Out-of-the-box integrations with LDAP, Active Directory, OpenID, CAS, SAML, etc. with the support for SSO help developers configure security tasks and authentication with ease, for respective application use cases.

Low-code fosters continuous innovation and allows you to create at the speed of change. There is a wide range of low-code tech out there, so be wise to evaluate how these platforms perform in context to your enterprise and development needs, the right platform can accelerate productivity, and produce secure and scalable apps, with great user experiences, enabling your teams to go to market faster.