Sponsored DZ RC 288 Getting Started Low Code Devel
Sponsored DZ RC 288 Getting Started Low Code Devel
CONTENTS
Low-Code Development
Platforms
ANTHONY MORRIS
TWENTY57
In 2014, Forrester coined the term "low code" to describe development of rapid development can lower costs, increase delivery speed, and
platforms that "accelerated application delivery, reducing the provide greater accessibility.
amount of hand-coding required." Low-code platforms employ visual,
IS LOW CODE NEW?
declarative techniques instead of traditional lines of programming, are
Low-code development platforms trace their roots back to Fourth-
used by both developers and non-developers, and significantly reduce
Generation Programming Language (4GL), a concept developed
the time and effort to deliver applications and automated processes.
from the 1970s through the 1990s. The language introduced some
However, despite the definition, low code still means many things to of the most popular Rapid Application Development (RAD) tools,
different people as several tool types exist under this umbrella term: such as Clarion, Microsoft Access, and Powerbuilder, putting
website generators, form builders, API connectors, database builders, development-like capabilities into the hands of business users with
workflow automation, and more. non-technical backgrounds.
Each of these tools targets different domains and requires varying Modern low-code development platforms take the evolution forward.
technical proficiency levels. The only common theme is that they have These platforms visualize computing or domain concepts and have
a graphical user interface that enables application users to configure added the underlying infrastructure to support them. But perhaps
and adapt solutions to exact requirements. most importantly, they have removed any friction between building
and running the final application.
WHAT IS LOW CODE?
A low-code development platform typically contains:
One of the most prominent reasons for the rise of the low-code model
is faster deliverability and quicker innovation. In addition, it enables
anyone in the organization to build apps — even those with limited
technical knowledge or development experience. Its primary benefit
IS LOW CODE THE SAME AS NO CODE? professionals and citizen developers with tools to collaborate and
The simple answer is no. While both platforms rely on the same visual develop applications. Regardless of the user type, the goal remains:
drag-and-drop development principles, no-code platforms abstract to accelerate development across the organization.
code, whereas low-code platforms have retained some ability to add
code manually when required.
USING LOW-CODE DEVELOPMENT
PLATFORMS
To a large degree, no-code apps are rarely complex, sticking to a Besides the obvious advantages of speed, cost, and ease of use, low
specific domain and functionality. These tools predominantly require code helps citizen developers:
the user to configure solutions and have definite limits on what can
• Speed up the development of solutions that solve critical
be accomplished. As a result, they often need further development to
challenges within the organization
integrate and connect to multiple services or add custom functionality.
• Empower users who understand the opportunities of a new app
WHAT CAN YOU DO WITH LOW CODE? • Improve overall business productivity without replacing undue
Low-code development platforms bridge the gap between the inherent impact on IT
limitations of off-the-shelf software, the rigidity of no code, and the
high costs of developing custom applications from the ground up. The Many platforms also include deeper technical capabilities to support
most popular use cases are: the professional developer and the traditional software development
lifecycle. A good development platform accelerates the mundane,
• Business process applications – One of the chief targets of
repeatable aspects of software development, allowing developers to
low-code platforms is business process management (BPM),
focus more on solving the unique requirements of the application's
allowing the user to build apps that automate processes and
logic that require time, attention, and expertise to succeed.
handle them more productively.
• Database management applications – Using a low-code By doing so, they provide significant advantages over traditional code
platform to bind, view, update, and visualize database tables. within the IT function to:
With most of the popular database formats supported, • Shorten the software development lifecycle
developers can easily tie business logic to the occurrence of
• Apply consistent code quality and lower the maintenance burden
various events that get fired during data management.
• Improve efficiency and agility amongst and across teams
• Omni-channel platforms – These requirements need the
application to fetch data from multiple sources (databases, • Provide a more straightforward path to complex topics such as
APIs, custom business logic, files, and cloud services) and security, infrastructure, and scalability of applications
• Modernizing legacy applications – Building APIs to modernize, into account the following considerations.
When we talk about application development, we usually think of apps solve your immediate problem and accelerate application development
built by experienced developers. Traditionally, this is the case. However, across the entire organization?
CROSS-PLATFORM SUPPORT Before adopting any platform, it's essential to know how easy it is
Most businesses prefer a cross-platform development framework to for developers to bring any external innovations into the low-code
develop solutions for web, mobile, and other platforms. This should platform. Having the capability to build applications quickly while
automatically happen behind the scenes with no extra effort, coding, balancing the requirement for more complex functionality is a
or resources. fundamental factor in developer adoption. To deliver fully customizable
applications, developers demand a pro-code-like experience
HOSTING
where they can quickly implement complexity in their solutions,
Low code was once synonymous with SaaS, but the modern vendor
accommodate for edge cases, or integrate unique solutions into even
allows for greater flexibility. For example, many enterprises don't
the most complicated technology stack.
let their data or application designs leave their carefully controlled
networks, whether for compliance or other regulations. As a result, ENTERPRISE DEVELOPMENT
knowing where and how you will host your application is often just as For adoption in the enterprise environment, the developer may
nuanced as building it, and should not be overlooked or taken lightly. need to consider a deeper feature set related to their particular
circumstances, including how the platform approaches asset reuse,
LOW-CODE FEATURES FOR scalability, DevOps, and compliance and security.
PROFESSIONAL DEVELOPERS
While low code offers several out-of-the-box services to assemble REUSE
an application without writing code, there is a growing need for The reusability of assets is a crucial driver of productivity among IT
more sophisticated features to support the developer mindset and teams. A good low-code platform should allow users to re-use pre-
modern IT. configured modules, core functions, code snippets, and back-end
integrators to build different applications swiftly.
WORKING WITH DATA
Most low-code platforms are extensible, providing direct integrations SCALABILITY
with major vendors and enabling IT to turn APIs, web services, and Low-code solutions should allow scaling for both usage in the
command lines into reusable building blocks. In addition, these out- environment and your application. For instance, you may have the
of-the-box integrations will let you connect to external APIs, allowing infrastructure capacity to develop and deploy apps, but your license
easy use and management of authentication tokens, retrieval of data, terms may restrict it, and vice versa. So when setting up, find out the
and some level of query parameterization. platform's capacity and determine if it suits your scalability needs.
Outside of standard connectors, the developer is often faced with A genuinely scalable low-code platform has well-defined REST APIs
several nuances such as authentication, data validation, and error that separate the UI from the back-end layers, allowing for developing
handling, sometimes making integration to a particular technology applications at scale and ensuring that the key practices in terms
so complex that it can diminish the critical benefits of low-code of performance and design are followed as per industry standards.
development. Therefore, knowing if the platform supports industry- Ideally, the low-code platform must have fast API creation and
standard interfaces and protocols (e.g., REST, JDBC, OData), or binding tools with automated API documentation to help you
whether it is open and extensible with custom code and APIs, will re-architect your monolithic, legacy applications to modern,
significantly influence adoption within larger development teams. microservices-based micro-apps.
COMPLIANCE AND SECURITY as for any other type of app. In fact, in some ways, having a solid QA
While citizen developers often do not have the experience or process in place for low-code environments is even more critical than
understanding of security implications, it's a critical step for enterprise it is for conventional apps as they more often than not form part of
developers. Relying on your internal security team to evaluate larger workflows that must integrate with external data resources.
the platform before purchase should be considered best practice.
6. DEPLOYMENT
An expert is best placed to understand how the platform can
One immediate benefit of low code is the speed of deployment —
accommodate role-based administration, data masking, and other
often with one click. But with so many options — public, private,
considerations, such as HIPAA compliance, hosting constraints, or
other security-related limitations. hybrid clouds, and on-premises — there is still a considerable need for
developer-type skills to manage the infrastructure and architectural
THE LOW-CODE PROCESS nuances of getting your application into production. Take careful note
Low-code apps may be fast to build, but they should still be built with of how you do this to eliminate the addition of excess technical debt
industry-standard practices in mind. In this section are guidelines for associated with managing, validating, and scaling apps as they grow.
how to succeed in low-code tool selection and implementation.
THE LOW-CODE BOTTOM LINE
1. PLATFORM SELECTION
With the inherent benefits of tackling the constraint of cost, scope,
With countless vendors in the space, it can be challenging for
and time, low-code platforms appear to be in it for the long haul. The
companies to know where to start in the selection process. The ideal
business case for low code keeps building while the unfounded fears
strategy should be to let traditional IT help choose the platform,
that it can't meet enterprises' needs, or that they are going to replace
following the same process for any other technical tool or system they
human coders, continue to fall in the face of data to the contrary.
have put into production. This means taking a deep dive into testing
the platform's capability, guiding its use, educating users, ensuring Low code can be tempting if your IT organization is overstretched
it fits into the organization's architecture plans, has a maintenance or unable to meet your delivery times. However, the key to adoption
plan and retirement strategy, etc. is to start small while building up the organization's capabilities and
skills. The low-code approach is simple enough for beginners to build
2. PLANNING YOUR FIRST SOLUTION
high-value apps — and sophisticated enough to meet the needs of
Start with a roadmap. It might be stating the obvious, but it helps
professional developers tackling complex challenges.
focus on the organization's immediate needs. What are the
requirements? What kind of applications do you need? Who will While these platforms might not possess all the answers to every
build it? Lay out the scope for deployable technologies to determine development challenge, they have simplified and shortened several
the standards for data security, testing, ownership rules, etc. A large software development stages. So whether it's that throwaway
part of implementing a low-code platform is understanding your own prototype, a proof of concept, or that business-critical management
needs, both now and in the future. system, low code has high potential to arm the modern business with
agility and innovation.
3. INTEGRATION
Take time to understand how the platform will connect with an
increasingly complex tech stack that can include distributed systems,
legacy applications, third-party APIs, off-the-shelf software, and more. WRITTEN BY ANTHONY MORRIS,
TWENTY57
In addition, data integration, the variety of data formats, and different
Anthony Morris is head of marketing at Twenty57,
types of endpoints found in the modern organization can be complex
a company specializing in delivering industrial-
and a barrier to speed, especially in a large IT environment. strength applications for the financial services
industry. He is a self-trained technologist with a passion
4. BUILD for great software products.
mindset. Encourage the fail-fast mentality with quick prototyping, At DZone, we foster a collaborative environment that empowers developers and
tech professionals to share knowledge, build skills, and solve problems through
rapid feedback, and reiterations. content, code, and community. We thoughtfully — and with intention — challenge
the status quo and value diverse perspectives so that, as one, we can inspire
positive change through technology.
5. TESTING
As low-code programming minimizes the time and effort it takes to
Copyright © 2023 DZone. All rights reserved. No part of this publication may be
write an application, you might be tempted to think it reduces the time reproduced, stored in a retrieval system, or transmitted, in any form or by means
of electronic, mechanical, photocopying, or otherwise, without prior written
QA teams have to spend testing the application. However, functional permission of the publisher.
testing and performance testing for low-code apps are just as critical