Low-Code Development: Empowering Business Users, Enabling Developers
Low-Code Development: Empowering Business Users, Enabling Developers
Low-Code Development: Empowering Business Users, Enabling Developers
Low-Code
Development
Empowering Business Users, Enabling Developers
03 Welcome Letter
Blake Ethridge, Community Manager at DZone
DZONE RESEARCH
ADDITIONAL RESOURCES
“Help, I only have 24 hours a day! I’ve got 500 projects, and and its adoption stand today, how organizations are using
400 of those require IT and dev teams to assist. Suddenly, all these platforms, challenges (getting solution and technical
my teams are remote, and my competition, who has a third architects involved early on), and the areas of opportunity.
of our overall headcount, is eating our lunch!”
Enter low code and its rapid adoption. I recently spoke with Javier Teso, Co-Founder of Kumologica,
about their input on the latest trends around low code.
Citizen developers comprising business teams can now use
low code to do more with less. The citizen automation they What’s driving the adoption of low-code tools?
drive could begin freeing up the significant time spent on Javier: The increasing demand for digital transformations
inefficient processes and in areas where they’d otherwise is exacerbating the current shortage of IT professionals
need dedicated development support. Operationally, worldwide. There is a clear need to change the way software
overnight low-code tools return time and resources to both is developed. Zero- and low-code tools provide a higher
business and IT teams, while also allowing them to use the level of abstraction that allows more people to enter the
same tools to innovate, scale, deploy, and prototype faster. tech industry and for existing professionals to become more
efficient.
In this age of hyper-automation, low-code solutions enable
entire companies — regardless of an individual’s technical What should companies focus on for their low-
background — to increase efficiency, improve collaboration, code efforts?
and strengthen their competitive advantage. Javier: The ultimate goal is for the business domain
experts to participate actively in the development process.
IT and development teams who might often have to assist
Development tools, like zero and low code, should be viewed
business users in building custom tools have seen this
as a “collaboration tool” in the same way email and JIRA are.
work decrease due to the capabilities low code offers, like
automating and scaling processes and workflows without the
usual overhead and project work that could bog them down Everyone is talking about low code, and in this report, you’ll
for months of endless production. For example, a competitor find out how it’s affecting developers, business users, and
might have an entire development team building tools or software development itself through a deep analysis of our
custom features that take months to complete, prototype, extensive industry survey, plus insights from a variety of
and deploy, whereas if you can use low-code tools to achieve experts within the DZone community. Welcome to DZone’s
the same, the resulting velocity and time savings will propel 2021 Low-Code Development Trend Report, and welcome to
you light years ahead of your competition. learning about it from the frontlines of this movement.
DZone Publications
Meet the DZone Publications team!
Publishing Refcards and Trend Reports year- DZone Mission Statement
round, this team can often be found editing At DZone, we foster a collaborative environment that empowers
contributor pieces, working with Sponsors, developers and tech professionals to share knowledge, build
and coordinating with designers. Part of their skills, and solve problems through content, code, and community.
everyday includes working across teams,
We thoughtfully — and with intention — challenge the status
specifically DZone’s Client Success and Editorial
quo and value diverse perspectives so that, as one, we can inspire
teams, to deliver high-quality content to the
positive change through technology.
DZone community.
Lindsay is a Publications Manager at DZone. Reviewing contributor drafts, working with sponsors,
and interviewing key players for “Leaders in Tech,” Lindsay and team oversees the entire Trend
Report process end to end, delivering insightful content and findings to DZone’s developer audience.
In her free time, Lindsay enjoys reading, biking, and walking her dog, Scout.
As a Publications Manager, Melissa co-leads the publication lifecycle for Trend Reports — from
coordinating project logistics like schedules and workflow processes to conducting editorial
reviews with DZone contributors and authors. She often supports Sponsors during the pre- and
post-publication stages with her fellow Client Success teammates. Outside of work, Melissa passes
the days tending to houseplants, reading, woodworking, and adoring her newly adopted cats,
Bean and Whitney.
With twenty-five years of experience as a leader and visionary in building enterprise-level online
communities, Blake plays an integral role in DZone Publications, from sourcing authors to surveying
the DZone audience and promoting each publication to our extensive developer community, DZone
Core. When he’s not hosting virtual events or working with members of DZone Core, Blake enjoys
attending film festivals, covering new cinema, and walking his miniature schnauzers, Giallo and Neo.
John Esposito works as technical architect at 6st Technologies, teaches undergrads whenever they
will listen, and moonlights as research analyst at DZone.com. He wrote his first C in junior high and
is finally starting to understand JavaScript NaN%. When he isn’t annoyed at code written by his
past self, John hangs out with his wife and cats Gilgamesh and Behemoth, who look and act like
their names.
In July 2021, DZone surveyed software developers, architects, and other IT professionals in order to understand the state of low-
code development.
3. Quality and maintainability of software built via low-code vs. full-code methods
Methods:
We created a survey and distributed it to a global audience of software professionals. Question formats included multiple
choice, free response, and ranking. Survey links were distributed via email to an opt-in subscriber list and popups on DZone.
com. The survey was opened on July 1st and closed on July 14th. The survey recorded 680 responses.
In this report, we review some of our key research findings. Many secondary findings of interest are not included here.
Additional findings will be published piecemeal on DZone.com.
Research Target One: Ideal and Actual Low-Code Development by Problem Domain
Motivations:
1. Problem domains vary by depth and breadth — by complexity and openness. We assume that code is more information-
dense than low-code programmer inputs and suppose that, as a result, low-code development methods are applied
more in less complex, more focused problem domains.
Note: We mean “information-dense” in an informal sense, which is necessary because we intend “information” from
both machine and programmer points of view. Both the necessary entailments of the programmer input, given
the definition of the compiler or interpreter (which can be formalized) — and also the less formalizable, hints about
programmer intent. This is conveyed by things like variable naming, class (or struct or other namespace-type bucket)
structures, and file structures.
2. Just as waterfall software development can be overkill with respect to design, full-code development can be overkill with
respect to solution definition.
A major motivator for the Agile Manifesto was that full-complexity specification and implementation are often
premature, considering how poorly defined many business problems are before solutioning. Prototypes and frequent
iterations are common ways to tackle complexity piecemeal, but prototyping and quick iterations can sometimes
seem wasteful or frustrating insofar, as they may be accomplished using “throwaway” code (that has no relation to the
final product, either as reworked code or as a disposable but helpful path to deeper understanding of the problem).
For early prototypes and iterations especially, we supposed that low-code tools could improve software development.
Note: Prototyping and iteration are also good practices in writing code, of course. Agile-style development can often
result in higher-quality code, precisely because early drafts are more aggressively thrown away. But for certain tasks
(e.g., a first pass at user interaction paths), a large amount of the code needed to produce a usefully iterable result is
often too generic to count as a useful “first draft” of code to be rewritten later. These are the situations that become
3. Visual programming tools have been available for decades, and rigorous visual representations of logical, mathematical,
and physical concepts have been around for centuries more (Euler and Venn diagrams, Pierce’s existential graphs,
Frege’s two-dimensional Begriffschrift notation, Feynman diagrams, Spencer-Brown’s laws of form, etc.). Yet the (English
language) phrases “software developer” and “computer programmer” still strongly connote “writes code.”
We wanted to understand why, whether it makes sense to try to change these connotations, and whether thinking
more carefully about low-code development might also improve notation systems used in other programming and
mathematical contexts.
Results (n=672):
Figure 1
5.5%
Sometimes
27.1% Rarely
33.9%
Never
Observations:
1. Far more respondents than we expected have used low-code platforms (82.3%) and more specifically, have used low-
code platforms often (15.8%) or all the time (5.5% — i.e., over a fifth of respondents have used low-code platforms often
or all the time).
This may indicate higher than usual selection bias among respondents, or it may indicate that low-code usage is, in
fact, much higher than we expected.
2. The distribution of responses to “primary programming language at work” is not substantially different among
respondents to this survey vs. respondents to other surveys sent to the same population (e.g., ~50% Java, ~15% Python).
Nor are the distribution curves of years’ experience or company headquarters region (though responses to the latter
question differed somewhat more than the others).
From this comparatively close overlap in respondent demographics across our surveys sent to the same population,
we tentatively conclude that there was not an extremely strong selection bias to this survey. This leads us to interpret
responses to the “how often have you used low-code” question as relevantly accurate. 82.3% of surveyed software
professionals have used low-code platforms at some point.
This is consistent with the marketing of low-code tools and with our data on common low-code use cases,
discussed below.
4. Low-code platform use by senior (>5 years’ experience as a software professional) and junior (≤5 years’ experience)
respondents in Table 1 below may suggest a U-shaped curve in low-code platform usefulness over time, a greater degree
of specialization among those more experienced, or something else.
Table 1
5. Some difference in specialized experience is suggested by significant differences in senior vs. junior opinions on the
utility of low-code integration middleware: Senior respondents are much more likely to consider low code not useful for
integration middleware vs. junior respondents (27.8% vs. 16.1%).
Because (anecdotally) junior software professionals are less likely to be involved in integration design, we suspect that
senior respondents’ stronger rejection of low-code integration middleware comes from having done more integration
overall. However, junior respondents are much more likely to have used low code for integration middleware (75.6% vs.
54.4%), although less likely to have done so often (10.6% vs. 16.3%).
We take these results to mean that senior respondents’ stronger judgment of the inutility of low code for integration
middleware may come from a relative lack of experience using low code for it, despite presumably having more input
on higher-level system design.
So we asked:
In your opinion, what use cases are low-code platforms useful for?
Request handling (e.g., support tickets, inbound lead recording) 13.8% 37.1% 49.1% 658
Simple databases (e.g., address books, product lists) 11.0% 38.7% 50.3% 662
Observations:
1. Interactive web forms were the use case most commonly marked as either somewhat useful (38.8%) or very useful (53.6%),
with very useful easily dominating; only 7.6% marked not useful. The next-closest use cases were simple databases (11%
not useful), followed closely by enterprise CRUD (12.5% not useful), request handling (13.8% not useful), and business
process management (14.6% not useful).
We have not done a comprehensive feature review of all low-code platforms weighted by usage (the latter probably
not a number we would have access to anyway). But on informal scan of feature sets, and based on use cases
advertised, this list of four top use cases (interactive forms, simple databases, request handling, business process
management) seems to be well served by existing low-code platforms.
2. We take a stark difference between “somewhat useful” and “very useful” responses to indicate stronger opinion, and
hence, sometimes better-informed judgment (barring irrational bias). The use case for which “very useful” responses
most strongly outweighed their “somewhat useful” responses was interactive web forms (53.6% very useful vs. 38.8%
somewhat useful — a 14.8% difference). Almost the same magnitude of difference in the opposite direction was obtained
for “physical modeling” responses (41.5% somewhat useful vs. 26.8% very useful — a 14.7% difference).
These results suggest that current low-code tools are well-tuned for interactive forms but poorly tuned for physical
modeling. There may be some good domain-specific reasons for this difference (e.g., physical models are expressed
mathematically, and mathematical notation by modern convention consists of one-dimensional strings; web form
development can easily be WYSIWYG), but this may also indicate some room for improvement in low-code physical
modeling.
For example, the modern, basically Leibnizian notation for an integral ∫ is two-dimensional. And standard multiple-
integral notation — which denormalizes the integration symbol set into a linear sequence: ∫∫∫ — does not leverage the
same visual intuition as the single-integral symbol does. And it also does not clearly distinguish between integrations
that commute and those that do not. At execution (calculation) time, the integrals are denormalized, of course, but
successful mathematical notation represents the mathematical abstraction, not the calculation steps. Presumably,
this is partly why Leibniz’s notation outlasted Newton’s.
We conjecture that some portion of the large gap between “somewhat useful” and “very useful” responses to the
3. The use cases for which the “somewhat/very useful” response difference obtained the least were ETL (40.3% somewhat
useful vs. 37.2% very useful) and enterprise CRUD (46.2% somewhat useful vs. 41.3% very useful).
We interpret these responses’ wishy-washiness, combined with the generally high level of utility expressed, as a
weaker signal of opinion. And hence, it is less useful in determining tool/platform maturity than the larger somewhat/
very differences described above.
4. The three use cases most likely to be marked as not useful are, in order from most likely to least likely: physical modeling;
machine learning pipelines; and (tied for third) integration middleware, e-commerce, and e-procurement. However, the
largest bucket of free-response answers related to integration or middleware (on our qualitative analysis), which suggests
that the response choice of “integration middleware” may have been too specific.
Our suggestions above regarding the somewhat vs. very usefulness of low-code platforms for physical modeling apply
to the high “not useful” response rate as well. Machine learning pipelines are specialized, and answers may reflect bias
from respondents who are guessing. This interpretation is suggested by the significantly lower percentage of “not
useful” responses for machine learning among those who often (20.9%) or all the time (28.2%) use low-code platforms.
See discussion below for more on differences between those who have and have not used low-code platforms with
respect to supposed ideal use cases for low code.
IMPACT OF LOW-CODE PLATFORM USE EXPERIENCE ON JUDGMENT OF SUITABLE LOW-CODE USE CASES
Respondents who build software using low-code platforms often or all the time evaluated low-code use cases somewhat
differently:
Figure 3
Request handling (e.g., support tickets, inbound lead recording) 7.1% 21.3% 71.6%
Simple databases (e.g., address books, product lists) 10.7% 29.3% 60.0%
Observation:
The top five use cases that those who have used low-code platforms often or all the time are least likely to judge not useful
are, in order: enterprise CRUD, interactive web forms, business process management, request handling, and integration
middleware. The number of “often” or “always” responses is comparatively small (143), and the top two responses do not differ
in count (eight — the difference between the two use cases obtained only with respect to percent of respondents for that use
Table 2
TOP FIVE USE CASES FOR WHICH LOW-CODE PLATFORMS ARE NOT USEFUL
Integration middleware, enterprise CRUD, and business process management received the greatest boost from those highly
experienced with low code vs. all respondents. Among all respondents, integration middleware did not even make the top five
marked the least not useful. Between all and experienced respondents, enterprise CRUD moved from third to first place, and
business process management moved from fifth to third. Simple databases, the use case second least likely to be judged not
useful by all respondents, fell out of the top five among highly experienced respondents.
These findings suggest that low code may be better for enterprise CRUD, worse for simple database, and better for business
process management than software professionals generally believe. These three use cases may, therefore, constitute avenues
for significant user experience and marketing improvements for low-code platform creators.
Results (n=533):
Figure 4
Request handling (e.g., support tickets, inbound lead recording) 25.7% 20.0% 25.7% 18.1% 10.6% 526
Simple databases (e.g., address books, product lists) 20.3% 18.1% 27.4% 22.6% 11.6% 526
1. With respect to general utility, actual use maps to ideal use (among all respondents) fairly well. The five low-code use
cases least likely to be judged not useful and the five low-code use cases least likely to be marked as never performed
are both, in order: interactive web forms, simple databases, enterprise CRUD, request handling, and business process
management.
This suggests that the overall functionality of low-code platforms matches software professionals’ imagination of
low-code capabilities reasonably well.
2. The degree of low-code platforms usage by use case and ideal use case do not map quite as well.
Table 3
The difference may suggest, for instance, that business process management has more low-code potential than is
currently actualized. But this may also be accounted for by different degrees of task specialization — for example,
interactive web forms are used in all types of applications, while many application types do not involve any
enterprise CRUD.
3. Junior respondents are significantly more likely to have used low-code platforms than senior respondents for every use
case answer choice available.
This relationship was especially strong (>~20% difference) for interactive web forms (93.3% vs. 80.6%), e-commerce
and e-procurement (70.3% vs. 51.4%), physical modeling (64.7% vs. 54.2%), and machine learning pipelines (65.3% vs.
54.7%), with enterprise CRUD not quite meeting the 20% difference threshold (82.4% vs. 74.9%). Considering that senior
respondents have more years in which to use a low-code platform, the significantly greater use of low code among
junior respondents strongly suggests that low-code platforms are becoming more mature for a variety of use cases.
Note: If only recent years were considered, this difference might be accounted for by the hypothesis that senior
respondents are more likely to be called in to solve problems too complex for low-code solutions. Since the question
does not specify a time period (“have you created”), we take these junior vs. senior differences to reflect differences in
experience, not just differences in present job roles.
As more distributed architectures grow, with looser overall coupling, the need for a single tech stack across an
application decreases as the importance of API contracts increases. If one microservice can be written in Java and
another in Haskell, both part of the same application, then nothing stops an appropriate microservice from being
implemented using low-code tools. Since this can and does happen, we wanted to know where and to what extent.
2. The problem of inaccessible source, already raised by API-first and microservice approaches to design, may be
exacerbated by low-code solutions.
In cases where applications are built using both low-code and full-code methods, we wanted to know how products of
the two pipelines interact.
3. Low-code tools are sometimes (though not always) intended as a way to hand-hold inexperienced creators, allowing
business users to focus only on the business logic being implemented.
Handholding works best along happy paths, so handholding low-code solutions seem likely to do worse along
unhappy paths. Our experience with low-code solutions is consistent with this deductive argument: We think that
low-code systems tend to be difficult to debug. We wanted to know how widely this experience is reflected among
software professionals at large.
USAGE OF LOW-CODE PLATFORMS VS. INTERACTION WITH SOFTWARE BUILT USING LOW-CODE
PLATFORMS
We wanted to know not only how many people build software using low-code platforms, but also how many people deal with
the results of low-code platform use. As systems grow more decoupled, just happening to interact with the output of a low-
code tool becomes more likely. So we asked:
How often have you written code that interacts with software built using a low-code platform?
Results (n=663):
Figure 5
4.7%
Often
Sometimes
27.0% Rarely
33.8%
Never
Observation:
The distribution of “have interacted with software built using low-code platforms” and “have myself used low-code platforms”
responses is remarkably similar (see discussion above). Further, 81.4% of those who have never built software using a low-code
platform have also never interacted with software built using a low-code platform. This is four times the “never interact” rate vs.
overall responses — that is, the intersection of “never built” and “never interacted with” results is large.
We interpret these two results to suggest a bubble of non-low-code-platform users exists that is fairly well segregated from
software built using low-code platforms. This is an interesting finding that we did not expect.
We wanted to see how much software professionals actually do want business users to be able to write their own automations,
so we asked:
How often do you wish business users could create simple automations without involving a professional developer?
Results (n=663):
Figure 6
7.4% 8.1%
All the time
17.5% Often
27.9%
Sometimes
Rarely
39.1%
Never
Observations:
1. Software professionals do indeed want business users to be able to create their own simple automations. Only 8.1% (n=54)
of respondents do not.
2. The reported frequency of this desire, however, in conjunction with respondents’ relatively low fear that low-code tools
threaten their jobs (see discussion below), suggests that software professionals do not deeply trust business users to write
their own automations correctly. 39.1% and 27.9% of respondents reported that they sometimes or often, respectively,
want business users to create their own simple automations, and only 7.4% want this all the time.
3. Senior respondents were significantly more likely to want to empower business users than junior respondents (see
Figure 7 on the next page).
Drawing on our own experience, we account for this difference by hypothesizing that senior-level software
professionals are more likely to realize, with the humility of experience, that solutions are often simpler than they
first appear. And they are also more likely to have accumulated painful experiences of business users vacillating
unpredictably, resulting in many unnecessary rewrites.
These are two very different causes, and we plan to address both in future research (on SDLC and requirements in
general, not for low-code development in particular).
40
Senior
30
Junior
20
10
0
Never Rarely Sometimes Often All the time
So we asked:
Agree/disagree: Prototyping with rapid iteration is usually more effective at gathering requirements than soliciting
requirements by interviewing business users.
Results (n=663):
Figure 8
2.7% 1.8%
Strongly disagree
8.4%
Disagree
26.8%
22.5% Neutral
Agree
Strongly agree
37.7%
Not applicable
Observations:
1. A majority of respondents agreed (37.7%, n=250) or strongly agreed (26.8%, n=178) that prototyping with rapid iteration is
better for requirements gathering than interviewing. Both the assumptions of the Agile Manifesto and this value-add of
low-code platforms are validated.
3. Low-code builders are somewhat more likely to agree with this statement. 41% (n=15) of respondents who have built
software using low-code tools agreed (vs. 37.7% among all respondents) and 28.7% strongly agreed (vs. 26.8% among all
respondents).
4. Senior respondents are much more likely to strongly agree (30%, n=139) than junior respondents (17.2%, n=22).
On the assumption that requirements-gathering is the kind of informal activity that particularly benefits from
experience, we take this result to mean that junior software professionals are overconfident in the power of interviews
to elicit business requirements, and they perhaps would benefit from more prototyping and iteration, whether using
low-code tools or otherwise.
In your experience, did use of low-code tools make development more iterative?
Results (n=564):
Figure 9
9.0%
Yes
13.1%
No
I don’t know
53.7%
24.1%
No opinion
Observation:
Low-code platforms may enable iterative development but not as clearly as the promise suggests. A majority (53.7%, n=303)
thinks that low-code platforms do make development more iterative, but that majority is not overwhelming. Further, almost a
quarter of low-code builders (24.1%, n=136) responded with a positive “no.”
We would be more confident in the ability of low-code platforms to facilitate iterative development if the small majority
of “yes” answers were paired with a slightly smaller minority dominated by “I don’t know” answers, when in fact, only 13.1%
responded “I don’t know” — a little less than half the “no” responses.
In your experience, did use of low-code tools help you release a minimum viable product (MVP) faster?
Results (n=561):
Figure 10
8.9%
12.8%
Yes
No
Observation:
Here, low-code platforms deliver strongly on their promise. More than three quarters of respondents indicated that low-code
platforms did help release an MVP faster.
DISTRIBUTION OF TIME SPENT ON LOW-CODE DEVELOPMENT AT EACH STAGE OF THE SDLC VS.
FULL-CODE DEVELOPMENT
Some conflicting hypotheses regarding the impact of low-code development on the SDLC:
• Low-code platforms might allow you to spend less time on development, so perhaps they enable more time on higher-
level design. On the other hand, abstractions are leaky, and low-code tools cannot handle as much low-level complexity as
popular non-visual programming source code, which suggests that writing code requires more up-front design time.
• Low-code systems may tend toward procedural design, which may be harder to reason about, possibly resulting in slower
development overall — at least for non-trivial solutions. But if many solutions are trivial in a relevant sense, any procedural
tendencies of low-code systems may result in smaller slowdown of complex development than the speedup gained while
developing simpler solutions.
• Low-code platforms are often more constrained than full-code platforms, which might result in easier debugging. But
code precision can also facilitate better unit and integration test definitions, which could result in less time spent blindly
searching for a bug fix.
How much time is spent on each of the following tasks while building software using low-code platforms?
And to compare:
How much time is spent on each of the following tasks while building software by writing code?
Results (n=592):
Observations:
1. On average, low-code development allocates more time to design and testing and less to development than
development by writing code. Low-code development spends 4% more time on design, 6.8% less time on development,
and 2.7% more time on testing.
This consistent with our hypotheses: (a) low-code speeds up development, (b) low-code thereby facilitates more
higher-level design thinking, and (c) low-code solutions are harder to test.
2. Standard deviation of time spent testing low-code applications (31.8) is a high outlier (vs. 17.6 for low-code design).
This may be accounted for by combining two claims made in the hypotheses above: When low-code solutions are
built well within the intent of their (relatively narrower) constraints, testing is especially easy, and when low-code
solutions are not built well within the intent of their constraints, testing is especially hard.
These two hypotheses are also consistent with the empirical claim, anecdotally asserted here, that low-code platforms
are often considerably more powerful than the fat part of the Pareto distribution of intended uses.
1. Professional coders are bad enough at managing complexity. Surely the non-professional coders that low-code platforms
enable are even worse.
2. Procedural code is often harder to maintain than more structured code, and low-code platforms tend to define programs
procedurally. So low-code software should be harder to maintain than full-code software.
3. Low-code platforms enable relatively easy expansion of functionality, but that tends toward spaghetti, as each new
feature is added without reconsidering the overall design. So low-code software probably contains more spaghetti than
full-code software.
4. The more happy-path-dependent a set of constraints is, the harder the constrained system is to debug. Low-code
platforms tend to constrain users more to happy paths than full-code platforms, so we expect low-code platforms to be
harder to debug.
We wanted to know what those who have used low-code tools think of their impact on overall software quality. So we asked:
In your experience, use of low-code tools resulted in overall: {Higher quality software, Lower quality software, The same quality
software as would have resulted from using code only, No opinion}
Results (n=559):
Figure 11
10.9%
23.6% Lower quality software
No opinion
39.2%
Observations:
1. 39.2% (n=219) of respondents judged that low-code tools resulted in higher quality software. This is a major vindication of
the promise of low-code tools — or at least a strong refutation of any knee-jerk dismissal of low-quality tools as inevitably
producing bad software.
2. Roughly the same percent of respondents (~40%) agreed that overall working with a low-code platform was a good
idea (40.7%) and that the software built using a low-code platform would have been better if a technical architect or
professional developer had been more involved (39.6%).
Together, these results suggest that it might be worth investing in combined projects that both involve low-code tools
and higher-level technical inputs from an architect or developer. Two more granular details support the combined
team suggestion in complementary directions:
• 21.2% of respondents strongly agreed that working with a low-code platform was a good idea, making the agree
or strongly agree number a significant majority at 61.9%.
• 27.7% strongly agreed that adding a technical architect or professional developer would have improved the
software, also making the agree or strongly agree number a significant majority at 67.3%.
3. 27.7% strongly agreed that adding a technical architect or professional developer would have improved the software, also
making the agree or strongly agree number a significant majority at 67.3%.
Software built using low-code platforms results in: {More technical debt than software written in code, Less technical debt
than software written in code, The same amount of technical debt as software written in code, I don’t know, but I imagine it
would be more than the mount of technical debt as software written in code, I don’t know, but I imagine it would be less than
the mount of technical debt as software written in code}
Figure 12
Compare with responses from those who have actually built software using low-code platforms:
Figure 13
50
Never built using
low code
40
At least sometimes
built using low code
30
20
10
0
More tech Less tech The same I don’t know I don’t know, but I don’t know, but
debt than debt than amount I imagine it would I imagine it would
software software of tech debt be more than the be less than the
written in code written in code as software amount of tech amount of tech
written in code debt as software debt as software
written in code written in code
Observation:
In the judgment of low-code-experienced software professionals, the reputation of low-code platforms for high technical debt
is not well earned. Almost half (45%, n=165) of low-code-experienced respondents reported that software built using low-code
platforms results in less technical debt, and only 18.5% (n=68) of this group reported increased technical debt from low-code
tools. This is a strong endorsement of low-code tools for long-term software maintainability.
So we asked:
In general, business logic implemented using low-code tools is: {More reusable than business logic implemented in code, Less
reusable than business logic implemented in code, The same level of reusability as business logic implemented in code, No
opinion}
Results:
Figure 14
50
Never built using
low code
40
At least sometimes built
using low code
30
20
10
0
More reusable than Less reusable than The same level of No opinion
business logic business logic reusability as business
implemented implemented logic implemented
in code in code in code
Observations:
1. Again, the maintainability of low-code-built software exceeds its reputation. 40.2% (n=147) of respondents who have
built software using low-code tools reported that the business logic implemented in these tools is more reusable than
business logic implemented in code.
2. Because reusability also implies separation of concerns, these data also suggest that low-code tools can help increase
encapsulation and thereby decrease coupling — perhaps the greatest of software design evils.
This is anecdotally consistent with our experience and points to a helpful side effect of empowering non-developers:
Whereas plumbers may be tempted to mix plumbing and porcelain, and may not even notice when they do, non-
plumbers will not.
So we asked:
Software built using low-code platforms by people who are not professional developers results in spaghetti: {Never, Rarely,
Sometimes, Often, All the time}
Figure 15
50
Never built using
low code
40
At least sometimes built
using low code
30
20
10
0
Never Rarely Sometimes Often All the time
Observations:
1. Results here are mixed. Hardly anyone (3%, n=11) who has built low-code software thinks that low-code non-professional
development never results in spaghetti vs. 12% (n=14) of non-low-code-builder respondents. Here, the promise apparently
exceeds the reality.
2. On the other hand, negative judgments (“often” and “all the time”) are more likely among non-low-code builders than
low-code builders. Together with the “never” discrepancy, we suspect that non-low-code builders here are less likely to
know what is really the case.
Future Research
Our survey included questions we did not have space to discuss here, which covered:
We expect to publish analyses of some of these results elsewhere on DZone.com. Since this is our first survey focused on low-
code software development, and since our data show that the prevalence of low-code development is much higher than we
expected, we intend to conduct significant additional research on this topic soon.
John Esposito works as technical architect at 6st Technologies, teaches undergrads whenever they will
listen, and moonlights as research analyst at DZone.com. He wrote his first C in junior high and is finally
starting to understand JavaScript NaN%. When he isn’t annoyed at code written by his past self, John
hangs out with his wife and cats Gilgamesh and Behemoth, who look and act like their names.
No-Code Automated
Testing
Best Practices and Tools
Getting started with no-code automated testing can be daunting, especially for developers and testers who are used to
creating test cases with the same code they use to develop the application. With so many tools and so much information to
parse through, getting started can seem like an overwhelming task. In actuality, it is easier than it looks. In this article, we will
cover three best practices to help get the ball rolling, as well as cut through the confusion and explore the four most supported
no-code automated testing tools.
Best Practices
Getting started is usually the hardest task on a project. Fortunately, we are not the first developers to make the leap into the
no-code automated testing world, and a sizeable amount of wisdom has built up over the years. Below are some useful best
practices we can utilize to get the ball rolling and to keep the momentum up when creating a no-code automated test suite.
1. Start small and grow: No-code automated tests are usually at a system or application level, which makes creating a test
suite more daunting (since we are dealing with the entire application at once). It is important not to become fixated on
getting 100% test coverage from the get-go. 100% coverage is a great goal, but it can seem so far away when starting
out. Instead, we should focus on getting a handful of test cases created and really understanding how the tools we select
work. Becoming an expert in our tools is much more beneficial than creating dozens of tests in an unfamiliar tool.
2. Focus on the essential use cases first: It can be tempting to focus on every use case all at once, but it is important to
prioritize which use cases to target first. The reality of development and testing is that we may not be able to test every
single use case. In such cases, it is a good idea to start with the following use cases and then focus on the remaining ones
afterward:
• Most revenue-generating use cases (i.e., checking out or sign up for a subscription)
3. Focus on what the user does: It can be tempting to exercise every nook and cranny of an application, but it is important
to start with only the actions the user will take. For example, when testing a login form, it is important to test the fields
visible to the user and the login button, since that is what the user will likely interact with in most cases. Testing the
edge cases is important, but we should always start with the happy-path (the steps where everything goes right) before
moving onto edge cases.
Tools
One of the most difficult aspects of jumping into no-code automated testing is finding the right tools. As with many other
segments of software, no-code automated testing is a maturing ecosystem, and tools range from well-trusted to crude. While
there is no perfect tool for every situation, there are tools that have taken the lead, proving their merit enough and earning the
trust of some of the largest companies in the world. Below is a list of four of the most popular no-code automated testing tools
currently available, along with some key points that provide some insight into how each tool stacks up against the others.
Key Points:
• Built-in tools for creating automated tests for web, mobile, API, and desktop applications
• Desktop-based tool
• Used by some of the largest companies in the world, including Samsung, Toyota, and Siemens
PERFECTO
Unlike Katalon Studio, Perfecto focuses on web and mobile applications. This can be a non-starter for those who work primarily
with REST API development, but for those who are in the business of creating web-based and mobile applications, this
concentration ensures that Perfecto is designed with relevant features, reports, and dashboards in mind (i.e., supports features
that web and mobile developers will appreciate rather than supporting general-purpose features that we do not need). In
addition, Perfecto supports testing of mobile applications on both real and virtualized hardware.
• Web-based GUI
• Includes dashboards that are familiar to those with Continuous Integration (CI) experience
• Used by more than half of the Fortune 500, including Ford, IBM, Salesforce, and Verizon
Figure 2: Perfecto
CLOUDQA
CloudQA takes a simple approach to no-code automated testing. Instead of establishing an elaborate environment in which to
test an application — such as deciding the devices and the browsers in which we wish to run our tests, as well as the granular
details about the values passed to our application — CloudQA works as a Chrome Extension that allows us to navigate our web
application like a user and make assertions after actions are performed. This approach is much closer to the textbook no-code
automated testing approach and makes it easier for less technical personnel and even novices to create new test cases and
quickly build up a substantial test suite.
Key Points:
• Uses a Chrome Extension to record the tests and opens a web application to view and edit recorded tests
• Can make assertions about what we expect to see after performing an action
RANOREX
In many ways, Ranorex combines the benefits of the previous tools into a single automated testing tool. While it may not
have the vastness of support for mobile applications as Perfecto or the simplicity of CloudQA, Ranorex provides an appealing
level of simplicity to get the ball rolling, while at the same time provides an extensible toolkit that can be used to create more
complicated test cases. Additionally, test cases can be created as aggregates of simpler steps — such as clicking a specific
button or submitting a form — which greatly increases reuse. Combining this with its tool suite integration, Ranorex should be
a notable consideration for any tester looking to get moving quickly, but not be hampered by an overly simplistic toolset.
Key Points:
• Integrates with most common development tools, including Git, Jira, Visual Studio Code, and Jenkins
• Allows test cases to be source controlled
• Provides a simple interface to get started, but still allows for expert users to add more complex details when necessary
• Supports desktop, web, and mobile application testing
Figure 4: Ranorex
Justin Albano is a Software Engineer at IBM responsible for building software-storage and backup/
recovery solutions for some of the largest worldwide companies, focusing on Spring-based REST API
and MongoDB development. When not working or writing, he can be found practicing Brazilian Jiu-
Jitsu, playing or watching hockey, drawing, or reading.
CHALLENGE COMPANY
VELCO had 14 existing Volt MX apps in use for field and office personnel, Vermont Electric Power Company
with a few more apps on the horizon, when in March 2020, an urgent (VELCO)
need for a new app emerged.
INDUSTRY
With the onset of the global Covid-19 pandemic, all employees moved to
Utilities
a work-from-home arrangement, and the management team needed
a way to communicate crucial information out to employees as well as
PRODUCTS USED
conduct health checks to ensure its workforce was both informed and
HCL Volt MX
safe — quickly.
PRIMARY OUTCOME
SOLUTION A mission-critical low-code app —
As information around health checks and protocols around safely
built in just a few hours — was key to
returning to the office evolved and emerged, the Health and Safety
creating a safe, informed, and compliant
department at VELCO responded in real time. In just over a week (55
workforce.
hours to be exact), the team built a web-based app for conducting
health checks and providing organization-wide guidance and
communication.
“With our Health and Safety app, built on
HCL Volt MX, we can easily get an overall
The new web-based app is accessible from anywhere and allows
view of the health and well-being of our
employees to log information about their location as well as Covid-
employees and quickly address issues
specific data. Then, employees submit their “health screen” and the
when help is needed.”
information is aggregated and presented in an executive dashboard,
allowing the management team to monitor the health, location, and
— Jarrod Harper,
overall well-being of the entire organization.
Leader, Data Integration/AppDev
VELCO
RESULTS
Using the power of low-code development, HCL Volt MX empowered
VELCO to spin up an essential app quickly to solve a business challenge CREATED IN PARTNERSHIP WITH
in a time of global crisis.
Not only does the management team have a real-time view of overall
health of its workforce — essential to conducting business during a
pandemic and beyond — but the employees find the app to be both
helpful and easy to use. This solution keeps the organization informed,
fosters teamwork and collaboration, and helps ensure the company’s
employees feel safe and cared for.
Low-Code Automation
Myths Debunked
By Eric Schabell, Portfolio Architect Technical Director at Red Hat
Introduction
As a professional developer, you are quite familiar with the concept of coding applications and building out the infrastructure
to deliver that code, and you understand the complexities involved when a team works to meet delivery deadlines. You’ve
spent years becoming proficient at your calling, and then suddenly one day you’re confronted with a new technology platform
referred to as a low-code automation platform. It’s here to deliver solutions with a minimal amount of coding by developers and
provides the flexibility for business users to develop their own solutions.
You might think this story above won’t happen to you, but the latest low-code magic quadrant report from Gartner states
otherwise:
“By 2023, over 50% of medium to large enterprises will have adopted an LCAP as one of their strategic application platforms.”
Time to face the facts — sooner or later you’re going to be faced with a low-code automation platform. As a developer, there
are a few myths around low-code platforms, and if we’re honest with ourselves, anything that tries to provide solutions without
professional developers is concerning, right?
“Low code is a software development approach requiring minimal coding to build applications and processes. A low-code
automation platform uses visual tooling with simple drag-and-drop features and configuration instead of extensive coding
languages.”
This simple definition creates a baseline that low-code automation is a platform of visual and configuration tooling that lets a
user design applications or processes. The results generate a running solution with little professional developer intervention.
Low-Code Myths
To understand what low-code automation stirs in professional developers, we’ll take a look at a few of the more common myths
surrounding it. These myths could just as easily be called fears or deep concerns. The following are a few common myths for
developers that you might hear on a break by the coffee machine.
As always, where there is a need, open-source projects rise to fill the hole. While there are many variations and projects in the
low-code open-source arena, there is one option highlighting that open source can be an option. This open-source project,
shown in the figure above, provides tooling for wiring together hardware devices, APIs, and online services in new and
interesting ways. Furthermore, it’s open to extensions, new features being added, community support, and all the freedom one
expects from an open-source project.
There’s always a need to modify generated components or to add integration logic to the application, ensuring conformity
with existing architectural choices. It’s not very often that you get to build applications and deploy them into a brand-
new architecture due to legacy platform choices, existing product issues, and other architectural problems. This is where
professional developers shine, ensuring that the customization of applications or integration points can be done in a
consistent, secure, and scalable fashion.
Using sound judgement and hard-won experiences, professional developers can ensure that generated solutions can be
managed, extended if necessary, and all done in a safe, scalable fashion. An important fact is understanding that the use of
open-source technologies does not have to end with low-code automation platforms. There are many options in the open-
source ecosystem for you to adopt into your development toolbox during your low-code journey.
Eric is Red Hat’s Portfolio Architect Technical Director. He’s renowned in the development community
as a speaker, lecturer, author, and baseball expert. His current role allows him to share his deep
expertise of Red Hat’s open-source technologies and cloud computing. He brings a unique perspective
to the stage with a professional life dedicated to sharing his deep expertise of open-source technologies
and organizations.
CHALLENGE
Since 1878, Close Brothers Asset Finance has built a strong reputation helping
businesses thrive through invoice, asset, property financing, and premium
financing. With five domains, each unique in their content approach and
optimizations, how does Close Brothers’ marketing team manage such a
broad estate? And what does a multisite web estate with common brand and COMPANY
divergent engagement strategies look like? Close Brothers Asset Finance
SOLUTION
PRODUCTS USED
Coherence built Close Brothers a master website design system using Acquia
Drupal 8 CMS, Acquia Site Studio
Site Studio to support base styles, responsive behaviors, typographies, design
patterns, and interactive elements, ensuring published content renders the best
PRIMARY OUTCOME
standards for user consumption and search visibility. Coherence’s design system
To support a lean but strategically
helped Close Brothers roll out five websites within a year, each passing technical,
minded marketing team with
security, and compliance checks.
distinct content, optimization,
Acquia Site Studio created a flexible design system within Drupal, bringing and customer needs, Close
each site to market in a fraction of the time taken to deliver a standalone, Brothers sought a platform that
native Drupal application. Site Studio allowed Close Brothers to evolve their could deliver consistent branding,
engagement strategies without costly onward development for core publishing user experience, and compliance
tasks. standards.
RESULTS
CREATED IN PARTNERSHIP WITH
While a technical migration of this size often brings marketing activities to a
halt, Close Brothers did not skip a beat. The powerful, flexible drag-and-drop
editing capabilities in their new CMS provided the ability to optimize, message
test, create campaign collateral, and maximize opportunities. This allowed them
to deploy budget on core marketing tasks — to be experimental and curious —
rather than spend time and effort on lengthy agency briefing cycles. Crucially, it
has allowed them to remain highly ranked against a competitive marketplace.
With Acquia Site Studio and the master design system, Close Brothers Asset
Finance has the freedom to target their audience’s needs within a framework
that provides the ability to learn, optimize, and evolve.
If you ride on a sailboat in a steady breeze, it glides through the water effortlessly. Few things can compare to crossing a bay
without the noise and commotion of a thundering internal combustion engine.
The dream of no-code and low-code development is to effortlessly glide from problem to solution. Back in the ‘80s, no-code/
low-code development was called “end-user computing.” Since the invention of the spreadsheet, we’ve had a kind of low-code
computing. The technologies continue to evolve.
Let’s take our boat out of the slip and sail around a little. We’ll look at two ways Python is commonly used to create no-code
and low-code solutions to problems.
The first thing we’ll look at is using JupyterLab to create solutions to problems with minimal code. I liken this to using winches
to help lift the sails. It’s not an internal combustion engine, but it is a machine that helps us manipulate heavy, bulky items
like sails and anchors. The second thing we’ll sail past is using Python as an integration framework to knit together tools and
solutions that aren’t specifically written in Python themselves. In this case, we’re going to be writing integration code, not
solution code. This is how sailboats work; given a hull and some masts, you’ll have to select and set the sails that will make the
boat move.
JupyterLab
As a developer, and as a writer about Python, I rely on JupyterLab a lot. It’s often the tool I start with because I get handy,
pleasant spreadsheet-like interaction. The “spreadsheet” feature that I’m talking about is the ability to change the value of one
cell, and then recompute the remaining cells after that change. This lets me create elegant, interactive solutions where the
bulk of the interaction is handled by the notebook’s internal model: a lattice of inter-dependent cells.
Figure 1
In this picture, we can see the computation of cell 2 depends on prior results in cell 1. I consider this “low code” because there’s
a vast amount of code we don’t need to write. The Jupyter Notebook provides us an interactive framework that’s robust and
reliable. More important than that, the framework fits the way a lot of people have grown to use computers by putting values
into some cells and checking results in other cells. The big difference between Jupyter and a spreadsheet is Jupyter lets us
write extensions and expressions in Python.
I really need a spreadsheet-like calculator, but I need a lot more mathematical processing than is sensible in a spreadsheet.
Consequently, let me apologize to any math-phobic readers. This example involves a lot of math. For folks who don’t like math,
think of using a spreadsheet where you never looked at the formula in a given column. A notebook can (and often does) hide
the details. This specific example doesn’t try to hide the details.
Here’s an example: https://github.com/slott56/replacing-a-spreadsheet. I want to lift up a few key features of this low-code
development approach. I created three notebooks, each of which had a common structure. They all have a collection of
measurements as the input. As the output, it reports a computed volume. The rest of the cells provide some background to
help me make sure the math is right.
Figure 2
Here’s the input cell’s content in the “prism.ipynb” notebook. This is cell 8.
measured = {
# Forward triangle, in inches
"h_f": 8,
"w_f": 10 + Rational(1, 2),
This is a Python dictionary that has a number of input values. This is a bit more complex-looking than spreadsheet cells,
making it solidly “low-code” not “no-code.”
This shows me that the volume of space, given the measurements, is just shy of 51 gallons.
The best part about this data is there are two kinds of changes I can make. The most important change is to the
measurements, which leads to recomputing the notebook. Anyone who can use a spreadsheet can alter the numbers to the
“measured” dictionary to recompute the volume.
The other change I can make is to adjust some of the underlying assumptions. This is a more nuanced change to the model
that is also implemented in the notebook. I find that for a wide variety of problems, a notebook is the place to start. It lets me
gather data, formulate alternative approaches to algorithms and data structures, and work out candidate solutions that are
richly interactive.
The JupyterLab project is like a boat with three masts and dozens upon dozens of sails for all conditions and situations. There
are a lot of features that can be used to create interactive solutions to problems. The idea is to write only the code that’s directly
related to the problem domain and leverage the notebook’s capabilities to present the solution so that people can make
decisions and take actions.
In addition to the notebook for a low-code interactive user experience, we can look at Python as an engine for integrating
disparate applications together.
When we integrate applications with Python, we can easily introduce additional computations and transformations. This can
help to smooth over gaps, remove manual operations, and prevent potential errors.
command = [
"markdown_py", "-v", "-e", "utf-8"
]
temp = options.input.with_suffix(".temp")
output = options.input.with_suffix(".html")
params = dict(CSS=str(options.style), TITLE=options.title)
This is part of a larger and more complex script to publish a complex document written in markdown. It has a lot of code
examples, which are a lot easier to read in HTML format. I must do some pre-processing of the markdown and some post-
processing of the HTML. It seems easiest to execute the markdown_py command from inside a Python script, avoiding a
complex python-bash-python kind of process.
Since I’m not modifying the underlying applications, I find this fits with a low-code approach. I’m using the source application
(markdown_py) for the thing it does best — adjusting the inputs and outputs using Python.
Sailing isn’t effortless. The boat glides only when the sails are set properly, and we keep the rudder in the right position. Just as
skill and expertise are required to make a boat move, so too is careful attention needed to write the minimal Python code to
solve an information processing problem.
Steven has been programming since the 70s, when computers were large, expensive, and rare. As
a former contract software developer and architect, he worked on hundreds of projects from very
small to very large. He’s been using Python to solve business problems for over 20 years. His titles with
Packt Publishing include Python Essentials, Mastering Object-Oriented Python, Functional Python
Programming, Python3 Object-Oriented Programming, and Python for Secret Agents. Steven is
currently a technomad who lives in various places on the east coast of the US.
Qlik solutions enable enterprise customers to turn raw data into remarkable
business outcomes. In a world awash with data, Qlik prides itself on
delivering real-time data intelligence.
CHALLENGE
COMPANY
Qlik likes to emphasize the importance of integrating data into a business.
Qlik
With customers at the center of everything it does, Qlik’s processes are
geared around selling its software and supporting customers. In a competitive
COMPANY SIZE
market, the challenge for Qlik is to ensure customer support is flawless.
2,500 employees | $3.1B market cap
It wants issues to be dealt with quickly, and that all departments — from
finance to R&D to sales — are connected and in the loop. For Qlik customers, INDUSTRY
support should be a singular experience. For Qlik, applications also need to Technology
280 users and on average 19,000 requests a month. The engagement with built on ServiceNow® App Engine,
• Accounts payable has eliminated email requests through an CREATED IN PARTNERSHIP WITH
online portal
• 115 IT users engage with the Now Platform on any given day
Low-code and no-code development is the method for enabling the automation of business processes for both technical and
non-technical developers. It allows for quick setup and deployment of applications for both small businesses and enterprise-
grade companies. Individuals do not require technical skills to improve processes or create lasting value for an organization.
There have been many instances in the world today in which businesses and individuals have an idea for an application, but
they can’t develop it themselves because they aren’t proficient in coding. They can hire a software developer to build it for
them, but oftentimes that path is too expensive. This creates a bottleneck that has prevented businesses and individuals
from creating value for their customers and consumers. However, with the evolution of low-code and no-code platforms, this
bottleneck can be solved.
Low-code platforms enable programmers and non-programmers to develop completely customized applications using
minimal lines of code, while no-code platforms enable applications to be built without writing a single line of code. Through
graphical user interfaces and model-driven logic, a user can build app components using methods such as drag-and-drop.
Data between different systems can be intertwined without using an API or running into any technical barriers. In addition to
creating applications, low-code and no-code platforms can also be used to launch websites and build workflow automations.
BENEFITS
According to Appian, a few benefits of using low-code platforms include higher productivity, decreased costs, better risk
management, and ease of use. Organizations do not have to be reliant on just technology groups to improve processes.
Workflows can be scheduled by super-users across non-technical groups in an organization, therefore, allowing for faster
adoption of process automation.
Higher • More applications can be built in less time Consolidating data from different Excel
productivity • Manual processes are transitioned to automated files with the same format into one
processes summary report
Decreased costs • Does not require hiring more full-time developers Enabling highly skilled workers to create
or employees reports versus hiring consultants
• One vendor can provide solutions across an entire
organization
Better risk • Data quality checks can be implemented Creating a workflow to check data quality
management • Process improvements can help reduce human error of a system
Ease of use • Non-technical workers can build applications from Designing a website mockup
inception to completion
• Functionality includes drag-and-drop
Improved agility • A change in process does not require a developer Automating a repetitive task such as
• Teams can better respond to customer and scheduling emails can be done through
regulatory needs a low-code platform
CHALLENGES
On the contrary, a few notable disadvantages include vendor lock-in, workflow maintenance, and initial permission access
issues. Once software gets included within an organization’s application ecosystem, there becomes downstream application
dependencies of that software. Certain processes become reliant on that software and switching costs enormously rise.
Vendor lock-in • Processes that are reliant on a single vendor Implementing software that captures data
increase the costs associated with switching used for reporting makes it hard to switch to a
vendors and solutions different software
• Your source code is tied to a single vendor
Workflow • Any changes to your systems could have A faulty email address could cause an error on
maintenance downstream effects and break a workflow an email scheduling tool, requiring someone
• Non-technical users may not understand how to without knowledge of the application to debug
debug a workflow
Initial • Any workflow that touches a new system must be Anyone trying to retrieve data from a
permission given permission, which: database needs permission to that system
access issues – Can create a time bottleneck
– Needs approval by every system administrator
The amount of time savings that can be created from low-code platforms outweigh their disadvantages. Making a website
from scratch, designing a data quality check, and automating reporting are just a few examples of tasks that will make one
think why they didn’t switch to a low-code platform sooner. All the time saved can now be spent on more strategic initiatives
instead of manual, repetitive tasks.
There are many low- and no-code platforms that specialize in user experience (UX) and user interface (UI) design. Additionally,
these applications have the ability to hook into the back-end of systems and display any custom data that you would ever want
to show. According to a TechTarget Network article on low-code use cases and industry examples, user interfaces usually need
to work across various devices and platforms, from desktop applications to mobile and web apps. Having the ability to
customize the UX across multiple devices from one platform is a huge time saver and reduces the need to hire pure technical
development talent.
PLATFORM INTEGRATION
Do you or your business ever find yourself interested in analyzing/manipulating data from multiple systems but can’t seem to
merge the datasets without manually downloading data into an Excel file? Low-code and no-code platforms allow you to hook
into the back end of certain systems and software to directly retrieve, manipulate, and export data to whatever format you
need. This can be crucial for analytics and reporting purposes across multiple systems.
For example, as shown in Figure 2, let’s say you house order data in one system and order detail data in another system. Using
a unique identifier, like OrderID, you can combine the datasets in a low-code tool and figure out what products are typically
bought in what cities. This can be done by linking the two tables and aggregating the count of the ProductIDs when grouping
by ShipRegion.
When combining datasets and aggregating by name, Thomas Jonah Smith will be represented as two different people
because of the slight difference in name. To mitigate this risk, especially if such data is shown to customers, having a low-
code platform automate QA for certain checks could be extremely helpful. Similar to how we described platform integration,
ingesting two datasets, merging them, and comparing the values allows all businesses — from small- to enterprise-level — to
achieve better governance over their data.
Conclusion
Low-code and no-code automation platforms can have a near immediate positive impact on your organization. For companies
of all sizes, having a platform that improves the efficiency of business processes can ultimately save an enormous amount of
time and resources. Improving UX/UI, reconciling data, and integrating platforms will lead to higher productivity and better
data governance, helping businesses transform at pace with their industry peers. Because they allow both programmers and
non-programmers to develop applications, low-code and no-code platforms will enable individuals and businesses to create
value for their consumers and customers.
REFERENCES
• https://appian.com/low-code-basics/benefits.html
• https://www.dronahq.com/low-code/
• https://searchsoftwarequality.techtarget.com/tip/Review-these-9-low-code-use-cases-and-industry-examples
• https://codeontime.com/print/learn/sample-applications/order-form/understanding-the-project
Zachary Blitz is currently a Business Analyst in the Portfolio Analysis group at Warburg Pincus. Prior to
Warburg Pincus, he worked as a Financial Services Consultant at Ernst & Young. He graduated from
the University of Michigan in 2019 with a Bachelor of Science in Information and a minor in Economics.
Outside of work, he enjoys the New York Knicks, running, traveling, gaming, and filming.
API Testing - Increase the breadth, scope, and velocity of your API testing and
decrease the time between finding defects and resolution.
Learn more
CASE STUDY
CHALLENGE COMPANY
Private Health Care Service has ambitious scaling plans, and they rely on Private Health Care Service
their technology platform to help get them there. They needed a process
that enables rapid application development (RAD) to replace their modern COMPANY SIZE
legacy systems previously supported by their business. It was necessary that 400+
the new product had a delightful user experience and was as error-free as
possible to compensate for the user base who did not want to migrate from INDUSTRY
the legacy system. Healthcare
RESULTS
Private Health Care Service’s IT delivery team was also able to:
With a headcount of two, Private Health Care Service was able to develop
250+ test scripts (each script containing at least 40 steps) in four weeks,
which allowed them to have full regression coverage over their entire
technology ecosystem. AutonomIQ also served as a platform for the CIO to
complete role-based testing for SOC internal auditing purposes.
When many developers think about no-code and low-code development tools, they often think of citizen developers and
line-of-business experts creating simple insecure apps not suited for the enterprise. But that’s no longer true. Low-code and
no-code apps are now vital for businesses of any size looking to survive and thrive post-COVID.
With companies needing to support extended remote work and streamline business activities amid staff shortages, they’re
looking to mobile apps as one answer. Streamlining traditional iOS and Android app development is required to mobilize all
these processes cost-effectively.
As a result, Gartner projects that by 2024, low-code application tools will be used for more than 65% of all application
development, in both enterprises and smaller companies. Gartner adds that 66% of large companies will use a minimum
of four low-code platforms. “The economic consequences of the COVID-19 pandemic have validated the low-code value
proposition,” explains Fabrizio Biscotti, research vice president at Gartner, in the report. “Low-code capabilities that support
remote work function, such as digital forms and workflow automation, will be offered with more elastic pricing since they will
be required to keep the lights running.”
But if you’re new to low-code and/or no-code, it can be tough to choose the right software platform. And once you’ve selected
one, you may find it hard to deploy and manage properly in your organization. However, adopting a new app development
platform needn’t be that tough, as I’ll explain in the rest of this article.
You should also consider who in your organization will be using the tools and what they’ll be using them for. Will it be only
for citizen developers to write simple, department-specific applications, or will IT use it for writing complex, enterprise-wide
applications? Or will it be used by both? Selecting a platform geared for the right skill level of your users is critical for successful
development and product adoption.
Another consideration is the remote working environment and where workers will be using the app. Will the app be used in
areas without a strong Wi-Fi or cell signal? Will it be used in new construction sites or emergency situations where there won’t
be any internet at all? Do you want a smart app that saves on data costs? If these are important criteria for your company, a
platform with robust offline operation will be a requirement.
Additional challenges surround data integration, data governance, and connections to systems of record. Will integration with
multiple data sources and other applications be required, or are you planning only to build standalone applications? If the app
will need to integrate with other data sources and applications, determine how easily the platform can accomplish this, and
whether integrations are built right into the platform using APIs and other tools. Finally, make sure that the platform offers the
security and compliance requirements for your business, its data governance policies, and the industry in which it operates.
Image: All low code apps are different but there are some basic similarities
Low-code platforms, because they allow you to quickly build straightforward applications, are also ideal for the following tasks,
according to TechTarget:
• Web portals. No-code and low-code development eliminates manually coding HTML and back-end components. You’ll
be able to build a variety of portals with consistent, common interfaces.
• Line-of-business systems. Line-of-business experts know best what they need — and the platform gives them the tools
to build systems without relying on professional developers.
• Digitized business processes. The platforms are ideal for creating end-to-end digitized workflows, such as streamlining
capital request applications.
• Mobile apps. Because the systems let you build apps from existing components, they’re ideal for creating mobile apps.
They can develop apps for Android and iOS from a common codebase, saving tremendous amounts of time. In fact,
Forrester says, “current usage indicates that these platforms can propel software development to 10 times the speed of
traditional processes.”
• Microservices applications. Microservices can be strung together to build larger, complex applications. No code and low
code are ideal for building those small components.
• IoT-based apps. Many IoT apps take data gathered by sensors and use that information to automatically take actions. An
agricultural application that uses data from moisture and temperature sensors to automatically control irrigation and
indoor lighting for greenhouse crops is one straightforward example where a low-code platform would excel.
Image: Before you build your low code app, you will want to consider these important development steps
While no-code and low-code development offer considerable benefits, the software must be incorporated carefully into your
organization, warns Chris Johannessen and Tom Davenport in the Harvard Business Review. The authors say the platforms can
potentially make “shadow IT” problems worse — with citizen developers using unsanctioned tools that produce apps that
aren’t secure, don’t work properly, or don’t fit into an enterprise’s overall computing infrastructure. To solve that problem, IT
needs to oversee which platforms are sanctioned, who can use them, and how they can be used.
Wrapping it All Up
What does all this mean for your organization? No matter its size, no-code and low-code software are likely in your company’s
future. In fact, Gartner predicts 75% of large enterprises using at least four low-code development tools by 2024. These
platforms can increase productivity, build powerful applications quickly, and help speed digital transformation. Just make sure
you use them for the right tasks and incorporate them into your organization’s technology infrastructure with IT in the lead.
REFERENCES
1. Gartner, “Gartner Forecasts Worldwide Low-Code Development Technologies Market to Grow 23% in 2021,” February 16, 2021
2. Forbes, “The Rise of Low-Code App Development,” Ilker Koksal, April 29, 2020
3. VentureBeat, “7 tips for managing low-code/no-code adoption in your enterprise,” Mayuresh Kulkarni, July 3, 2021
4. TechTarget Search Software Quality, “What is low-code? A guide to enterprise low-code app development,” Stephen J.
Bigelow, March 15, 2021
5. Forrester Blog, “Why You Need to Know About Low-Code, Even If You’re Not Responsible for Software Delivery,” John
Rymer, Vice President, Principal Analyst, August 8, 2018
6. Harvard Business Review, “When Low-Code Development Works – and When It Doesn’t,” Chris Johannessen and Tom
Davenport, June 22, 2021
Amy Groden-Morrison has held marketing leadership roles at TIBCO Software, Spotfire, RSA Security
and Ziff-Davis. Her past accomplishments include launching a company on the NYSE, rebranding a
NASDAQ-listed company amid a crisis and building programs to achieve 30%+ growth at tech startups.
She currently advises early-stage tech startups, is an avid sailor, and holds an MBA from Northeastern
University.
If you ask 100 developers what no code is, you’re likely to get 100 different answers. However, what is often agreed upon is that
no-code development offers the ability to create software without needing dozens of software developers working — often
for months at a time — on software before delivering a working solution. Essentially, this means that no code is the process of
automating software systems.
While I understand this may sound a bit absurd, it is fundamentally true. If it wasn’t true, we wouldn’t need interpreters or
compilers, and the computer could simply execute your code directly without needing to change it before execution. However,
if your computer can assume that all of your HTTP PUT endpoints are updating a database entity, it no longer needs to
understand the code, and it can generate an entity UI interface, wrapping the input arguments your endpoint requires.
If the PUT assumption above is true, however, you could use tools such as Swagger to extract metadata about your endpoints
and create a GUI, wrapping all your PUT endpoints. The same is true for all CRUD operations. Typically, we use PUT for update,
POST for create, DELETE for delete, and GET for read.
The beauty of this approach is that as a general architectural design pattern, regardless of whether or not you’re interested
in no code, implementing such internal standards makes your code more easily understood. Once a human developer
understands one endpoint, they have effectively understood all endpoints that the API exposes.
Based on that conclusion, no code is simply the natural side effect of applying a good design to your software, implementing
conventions and rules that everyone can follow to understand the system. In fact, whether or not your existing codebase can
be “no-coded” arguably becomes the definition of how much quality it possesses. If your code doesn’t align with these rules
and conventions, it’s likely difficult to understand. If it’s difficult to understand, then it’s oftentimes badly architected. But if it
is built upon a good architecture and able to wrap these standardization constructs, it grows organically without any ceilings,
similarly to how biological organisms grow, exclusively based upon standardization mechanisms.
This is the reason I chose “Server Gardens” as the name of my company I must confess — simply because good standards and
conventions, allowing for correct assumptions, results in less cognitive load to the point where the computer can automatically
“grow” your code. When you are armed with internal standards, the process is more similar to how biological organisms grow
than how software is typically engineered.
When it comes to your codebase, metadata consists of components such as “which database connection is this code relying
upon” and “what input does this endpoint require.” For existing software systems, Swagger is a great tool for extracting
metadata. Once you have metadata, you can automatically scaffold POCO classes and methods around your code, consuming
your code where no code grows up from the ground almost organically.
Now, metadata capabilities from tools like Swagger become pale in comparison to what a specific metadata-designed
programming language gives you. In the previous section, we said, “Your computer does not understand code.” If you can solve
this problem, your code becomes metadata.
Once the entirety of your codebase exclusively consists of metadata, your computer can create 100% accurate assumptions
about every single line of code in your codebase. If you can achieve this, the computer can easily answer questions like, “Does
this method log?” and “Which database tables is this code using?” These questions are impossible to answer using metadata
extractors such as Swagger, but they are implicitly given if you use a metadata programming language.
For an example, check out my own creation: Hyperlambda. Hyperlambda, of course, is at the core of Magic and the reason why
Magic can do what it does. Fundamentally, it’s just a tree structure, which is Turing complete, and your computer is capable of
executing without interpreting or compiling. This way of thinking turns the entirety of your codebase into “metadata.”
Once the computer has access to every pixel of metadata, your computer now “understands code” and can draw 100% accurate
assumptions about the code; thus, it can now create automated processes wrapping, your codebase and solving every problem
imaginable.
Wrapping Up
So is no code just a bit of excitement, or is it our undeniable future? To answer that question: Let’s address what the above
software system does not do. Primarily, it does not end up with a result resembling exactly what you want — and unless its
back-end code is generated around a 100% perfectly applied “standard,” it kind of freezes, stops, and is unable to proceed. It
requires assumptions to be correct if it is to succeed. And more often than not, it also requires a bit of manual coding after you
are done.
As the inventor of this system, I have obviously used it a lot. But after the initial “wow,” you will probably realize as I did, that it’s
not really a threat to your job because once the computer has done its job, it will require (some) manual coding afterward. And
even if it did everything, there is still deployment, orchestrating multiple systems together, and enterprise architecture left for
the human to do — in addition to database designs required for it to function.
Regardless of how intuitive our no-code and low-code tools become, the end result will always need a human touch. No and low
code is about empowering the end user. Once you realize that simple fact, you also realize you have nothing to fear from it.
Autodidact software developer with 40 years of experience, since the age of 8, and 20+ years as a
professional software developer, creating enterprise software for dozens of companies around the world.
Now the CEO of ServerGardens.com, a company exclusively creating no-code and low-code tools.
A Low-Code Approach to
Building Integrations
Low Code Brought the Age of Hyperautomation. What Will
Low-Code Integration Bring?
By Roland Alston, Thought Leadership Blogger & Brand Journalist at Appian Corporation
The COVID-19 crisis accelerated the already blistering pace of digital transformation. Which is another way of saying
organizations that can quickly integrate applications, systems, and data to adapt to constant change will outperform
companies that can’t.
But if your IT organization is like most, you probably have a backlog of projects and initiatives that never ends. The business has
needs. And your team? Well, it probably has trouble keeping up, what with everything else they must do to keep operations
humming. In fact, research shows that now:
Low-code integration is the opposite of that. For starters, developers can accelerate the application integration process with
easy-to-use drag-and-drop visual design tools that speed time to market and business impact without compromising quality,
security, or user experience. Yes, you could choose to buy off-the-shelf solutions to meet short-term business needs. But
integration is always complex and quickly becomes an issue. Silos of data and process start to build up. And before you know it,
you’ve created a bigger problem than you had in the first place.
The perfect solution for this painful conundrum is an enterprise-class, low-code automation platform. Unlike throwback rapid
app development tools, modern low-code platforms simplify the entire software development lifecycle with pre-built, no-code
integration and templates that reduce the time it takes to connect with databases, cloud, robotic process automation (RPA),
artificial intelligence (AI), and application programming interfaces (APIs) from hours or days to just minutes.
This kind of remarkable agility allows users to create powerful applications and integrate them with data sources, web services,
and legacy systems with remarkable speed. Case in point: Ryder Systems, Inc., a commercial truck fleet management and
supply chain solutions company that consistently ranks among FORTUNE’s World’s Most Admired Companies. The company’s
18-person development team was quickly able to develop and deploy over 40 applications that improved customer experience
and boosted employee productivity.
“Even within a couple of weeks, we are able to show [the business user] a prototype of what this product would look like,” said
Ramesh Sundaresan, VP and Division CIO. “It’s much easier for us to get their feedback at a much earlier stage and make the
2. Simplified Collaboration: For developers and non-developers alike, low code is a productivity multiplier that makes it
easier for line-of-business execs and IT to collaborate to optimize the business impact of application integrations, making
it easier to keep business and IT on the same page.
3. Simplified Deployment: Modern low-code platforms include DevSecOps capabilities that make deploying, integrating,
and managing applications simple. Want to deploy that new application to users on web, mobile, and tablets with a
single click? Need to change, update, or otherwise customize a business-critical application on a dime with no downtime
and no interruption to your business operations? It’s all possible with low-code integrations.
A leading vendor in the low-code space calls this data-driven functionality “low-code data,” a feature that allows platform
users to do complex data-workflow integrations by dragging and dropping, configuring, and seamlessly connecting to data
in an intuitive and simple way. Imagine, for example, reaping the benefits of a platform that allows users to pull data from a
wide range of systems, and add AI to any workflow to quickly extract and classify data from massive quantities of incoming
documents. This is precisely the kind of productivity boost offered with low code.
Be sure to look for a low-code platform that comes with a broad selection of connected systems, which allows users to
integrate with legacy systems and services with the speed and simplicity of point-and-click functionality. Also look for a broad
selection of plug-ins that allow graphical integrations with enterprise systems and third-party services.
Oh, and what if there was also a way to integrate more applications in less time, and provision and stage cloud-native apps and
deploy them when and where you needed them — to the cloud or on-premises? That’s the magic of low-code integration. Case
in point: Iccrea Cooperative Banking Group, the largest collective bank in Italy, released 13 applications in a single year using low
code with just nine developers and cut the time it takes to introduce new products in half.
“Building applications is easier,” said Giovanni Gallucci, the head of IT process automation. “Our product experts do not require
super technical, specialist training to build custom applications.” Their new applications have led to dramatic business benefits,
such as a 75% decrease in fraud management processing time, where they have been able to cut a five-month backlog for
In the wake of the pandemic, many organizations are increasingly turning to non-developers to build, scale, and integrate
critical applications. But research shows this “citizen developer” trend could also pose serious data, security, and integration
challenges for large organizations, according to a recent Appian IT survey. Here’s the math:
• 73% worry about non-developers using the wrong data in critical applications.
But there’s another takeaway from the survey. Over 70% of IT shot callers trust low code to help them do a better job of
securing non-developer applications and easing the pressure on overburdened IT departments. So if you’re looking to level-up
your approach to integrations with a low-code platform, be sure to look for one with a broad selection of adapters to integrate
applications with databases, services, and leading software products such as SAP, Salesforce, MS Dynamics, and more.
Finally, there are two existential challenges businesses are focusing on right now: figuring out how to automate critical
workflows faster and adapting to massive change on a dime. Everything else pales in comparison. Perhaps it’s time for low-
code integration to start getting the same attention.
Roland Alston, Thought Leadership Blogger & Brand Journalist at Appian Corporation
@rolandalston on DZone | @roland-alston-0894431 on LinkedIn
I’m a thought leadership blogger, ghostwriter, and content creator focused as all get-out on
evangelizing human-centric innovation and getting across complex ideas in simple language. As
a writer, I lean into storytelling focused on helping business and IT leaders solve problems, create
customer value and drive business outcomes.
A Future Without
Test Debt
Citizens Thrive With AI-Driven, Self-Healing Low-Code Testing
As much as we saw an advancement in the complexity of software systems over the last decade, the tools used to test and
deliver software quality did not keep pace. This created a tremendous backlog of candidates that shipped to software quality
teams lacking the processes, headcount, and tools needed to bring the accelerated releases to market with quality. We refer to
this as test debt.
Oftentimes, an immense amount of time and effort is spent during requirement analysis and design to ensure that software
applications are compliant and delight customers. Behind the scenes of all this attention, however, is the underappreciated
sweat equity invested by the software quality and deployment teams. Initiatives to shorten release cycles as part of agile
development or CI/CD pipelines without setting higher quality standards have only exacerbated the impact of test debt.
The costliest form of test debt occurs when an issue is not detected, diagnosed, and debugged prior to production. It is
difficult to test in production environments for many reasons — for example, the testing of production data is intrusive
and may negatively impact performance. According to Forrester Research, “Firms that run Agile+DevOps as a single
transformation are 35 percentage points more likely to improve technical quality…. 72% of firms say testers are critical to
continuous delivery success.” 1
Another costly form of test debt involves test flakiness (e.g., false negatives). In Forrester’s “The State Of Agile” report, 44% of
respondents [developers] said that skilled product owners are not available to them for collaboration. It seems that too often,
something gets lost in translation from requirements to test case management. Additionally, teams end up spending excessive
time on test maintenance, which cannibalizes QA sprints, forcing some teams to ship with bugs as they accept flaky pass rates.
Before you know it, a test debt bubble can manifest and create an ongoing cycle of slow- or high-risk development.
If implemented correctly, the AI in modern low-code testing can take on tedious tasks as well as streamline performance,
improve end-to-end visibility, make intelligent recommendations, and free engineers to focus on creative work that machines
can’t do — or do nearly as well. Let’s explore how AI-driven low-code testing can help your organization solve test debt once
and for all.
Barriers to making Agile+DevOps a reality may be found by looking closer at metrics including bugs, code quality, and churn.
It’s vital to collect deeper insights about these metrics and map them to release speed and quality bottlenecks. And they may
help you move the dial as it becomes clear that development and quality belong in the same budgets.
BUGS
How many bugs are making their way into production, causing an unpleasant customer experience? QA teams should be
counting and keeping track of both fixed and unfixed bugs. Tracking the unfixed bugs allows teams to amplify their focus
CODE QUALITY
Test automation cannot guarantee code, but it can evaluate the quality of software at various levels — from individual
components or modules throughout the whole system. Code quality is a measure of how well the code can respond to
requirement changes, typically those related to maintainability and performance. Poorly written or poorly maintained code
can lead to inefficient use of resources, difficult bugs, security vulnerabilities, and overall operational costs that can increase
over time.
Development or QA teams should be tracking unit test coverage and design patterns used in the automation. Ensuring that
individual units of code have been tested by at least one unit test increases coverage and reduces the number of errors present
in later stages of the SDLC. In addition, taking a qualitative measure of the design pattern and applying a universal approach to
all test automation will make it easier for team members to build on the existing library of test assets. Less guesswork means
less test debt.
CHURN
You see churn in your test automation when the test scripts get refactored, updated, or completely replaced. Measuring churn
helps QA teams recognize the constant level at which test automation assets must be redone. Having an objective view of this
will help organizations plan and solve for these challenges more quickly, allowing them to take a more proactive approach in
managing test debt.
A low-code test automation tool can make a citizen tester (business analysts, administrators, project managers, and product
owners) an engineer’s best friend. Or it can allow a citizen developer to do their own testing. Meanwhile, engineers gain the
help they really need to reduce test debt, accelerate innovation, and increase efficiency across the entire SDLC.
As the market for elite knowledge workers tightens month by month, business leaders are looking for a more manageable
growth strategy. In 2020, the U.S. Bureau of Labor Statistics calculated that the unemployment rate of software professionals
was 1.9%. 2 Competitive advantage in this territory will go to the organizations that drive their variable cost structures to
zero, utilizing low-code technology while also incrementally scaling their coverage and reducing their exposure to change
disruption.
AI-enabled automation helps achieve greater coverage and generates more test outcomes (more bugs detected, more code
fixed). You can test more thoroughly and leverage the expertise of your product owners and business analysts. Far fewer errors
slip through to production as a result.
In a low-code-enabled setting, although there is still an unprecedented demand for testing, the testing team is not waiting for
headcount approvals in a shrinking pool of available testers. Citizen testers can leverage the software delivery team’s expertise
and train to a point where they can start delivering business value immediately — and not at the risk of software quality. Also,
given the intelligent nature of low-code test automation, the AI knows what to test and can make recommendations before
certain test assets begin to break.
TEST-DRIVEN DEVELOPMENT
Fail-first approaches to development such as TDD were created because of the incredible competitive advantage that can
come from teams that fail early. In TDD, early failure reduces such risk later in the lifecycle when bugs are much harder to
detect and costlier to repair. Early failure can also drive more efficient, effective iteration with built-in continuous improvement,
which is especially useful for iterating through exploratory product development or working on systems of innovation.
A critical factor in optimal TDD performance is ensuring that test cases capture testing intent accurately — and within the
sprint’s scope of work. At this first and all-important stage of TDD, collaboration becomes key to success. UX, UI, and API
development stakeholders cannot be sucked into prolonged (manual) testing. While complex builds may always involve an
element of manual testing, iterative development must automate far more testing, allowing teams more time to make sure
they don’t fall short of the user story or miss creative opportunities to innovate great ideas.
Yet many teams are not skilled in test automation despite recognizing the need to make it work well to achieve quality at
speed when shipping products in much shorter cycles. Many blockers to test automation success — from seeing ROI to
reducing risk/bugs in production environments — stem from a central problem in the first step of a TDD approach: Ensure that
intent with proper domain knowledge gets incorporated into the build.
Modern low-code test automation addresses this core problem by using powerful AI and natural language processing (NLP)
technologies to integrate intent into TDD workflows. Consider the following quality strategies:
• Use your words – Developers of all types, including citizen developers (e.g., Salesforce admins), collaborate better with
product owners or non-technical testers by chatting or speaking in plain English. NLP capabilities on low-code testing
platforms such as AutonomIQ allow any user to create test cases that accurately capture intent by speaking normally.
• Iterate much? Then test case much – Modern apps and microservices all run on APIs, mostly back-end APIs that deal
with huge numbers of integrations with public, partner, and internal endpoints that can individually or holistically affect
function. Small, iterative changes to integrations may cause a domino effect that impacts many test cases, requiring a
significant proliferation of regression testing. Low-code test automation platforms should offer self-healing maintenance
of tests and test cases, ensuring that builds can be shipped without a testing bottleneck.
• Let automation write its automation scripts – Many development teams lack the on-hand developers or automation
engineers needed to continually write and maintain automation scripts for testing workflows. AI-driven low-code testing
can take NLP-generated test cases and automatically generate test scripts for automation. With AI-driven automation
writing its own automation scripts for UI and API verifications and end-to-end validations, testing times can be cut in half
or better while significantly reducing risk in production environments and during beta testing.
BEHAVIOR-DRIVEN DEVELOPMENT
One type of TDD that has become top of mind for many high-velocity development teams is BDD. This approach tries to focus
TDD flows on addressing system behavior in hopes of creating functional tests quickly without losing technical and non-
technical domain knowledge throughout collaboration on very complex problems.
Cucumber is one of the most popular open-source frameworks for BDD, requiring test case generation in English that,
however, must follow the Gherkin syntax, which is optimized for automation tests that check on behavior tests void of logic
details. In this way, Gherkin removes ambiguity from executable specs and plugs into the Cucumber framework, which
principally, attempts to optimize TDD by identifying what to test, what not to test, and how much testing is needed within
Conclusion
Hiring your own AI talent is difficult and expensive. Pre-packaged AI-enabled tools solve this problem in cost-effective and
scalable ways. Their effectiveness relies on how well they enable collaboration, reduce technical debt, and avoid disrupting
familiar workflows.
Quality at speed is ultimately driven by making everyone a developer and every developer a tester. AI-driven low-code testing
removes human error from repeatable processes, improves end-to-end visibility, makes intelligent recommendations, and blurs
the line between departments with the democratization of very technical tasks. Development and testing must become parallel
processes, and those that embrace AI-driven low-code development will gain a considerable competitive advantage.
1 Forrester Research for Tricentis, “The Definitive Software Quality Metrics For Agile+DevOps: Measuring The Risk Of A Release
Candidate”
2 National Foundation for American Policy, NFAP Policy Brief, June 2020 (Table 2)
Raj Rao currently is responsible for AutonomIQ product management, building industry solutions and
customer evangelism. Prior to AutonomIQ Sauce Labs, Raj has held SVP & GM roles at CA Technologies,
has been the Global Head of Software Quality at NTT Data, and has held product leadership roles at SAP,
PeopleSoft (Oracle), and Broadvision.