Low-Code is a disruptive new technology that is changing the way in which applications are being developed. Low-Code is ushering in an era where anyone can develop an application (using a bit of gumption) because it favours a low-tech configuration-first approach.
Different organisations are employing Low-Code to further their digital agendas in varied ways however, with many organisations wrestling with the choice of whether to buy pre-canned functionality, through Commercial Off-The-Shelf (COTs) software or alternatively, whether to develop their own software using Low-Code.
The answer is not simple and lies somewhere in-between. Before delving into my reasoning it is important to understand how we got here.
Organisations have embraced a “buy vs. build” mantra, by procuring COTS software for the past three decades.
Their view is that this will allow them to focus on their core business, as opposed to being distracted by creating IT applications that are related to and/or required by (for e.g. accounting software) but, not part of their core business.
The industry has responded in kind, with major conglomerates such as the likes of Oracle and Microsoft, providing a plethora of offerings. While there is no argument that buying an application vs. embarking on a custom developed application has yielded significant business benefits, COTs applications have also introduced a myriad of problems:
As more COTs applications are acquired the problems mentioned above are compounded, affecting the pace at which IT can deliver. No matter how fast IT attempts to deliver it’s just not fast enough …
Unfortunately, neither of these have yielded the promised benefits leading to more disillusionment.
Custom development promises an unfettered ability to build what you need, when you need it. Custom Development unfortunately introduces some issues of its own:
Many organisations are battling to apply Agile when using COTs products at scale. Assuming that the cultural impediments to Agile are not an issue (for e.g. there is alignment between business and IT etc.), most COTS products do not have mature continuous delivery capabilities (for example test automation, customisable code build and deployment pipelines etc.), which is a critical success factor for delivering Agile projects.
Fed-up with failed IT projects and / or programs business often goes around IT, building their own IT solutions without explicit organisational approval (referred to as “Shadow IT”). Applications delivered outside the governorship of IT are plagued with quality problems and security risks.
It is clear that a new approach is required to deal the broken promises of COTS products.
Enter Low Code …
Low-code is a new approach to application development founded on rapid application development and a configuration first approach. With Low-Code users interact with graphical models and configure pre-built application components to create functional applications - akin to assembling “Lego” blocks of functionality. This allows business users to construct complex applications without having to be proficient coders.
There are clear signs in the market that Low-Code is here to stay - for example Forrester predicts that the Low-Code market will increase to over $21 billion USD over the next five years. Interestingly, many analysts also predict that applications will predominately be developed using Low-Code platforms in the future.
A list of tantalising features offered by leading Low-Code vendors are:
The rise of Low-Code does not however signal the death of COTs applications by any means. The question then becomes how are organisations applying Low-Code to win the Digital wars?
The decision to use COTs or Low-Code is not binary. In fact, most enterprises often use them in unison to create differentiated offerings through Composite Applications - a “mash-up” of existing applications to create entirely new applications. The following simple guidelines can help you choose when to use Low-Code, COTs products or both:
When to use COTS products: The COTS product satisfies more than 90% of your business requirements AND the cost of procuring and customising the COTS product is cheaper and faster than building a Low-Code alternative.
When to use Low-Code products: There is no COTS product available OR it is cheaper and faster to satisfy business requirements using Low-Code AND the Low-Code platform provides 90% of the capabilities needed to build the product Out-Of-The-Box (OOTB). Note that in the case of highly specialised software applications, requiring complex software features and algorithms not provided by Low-Code platforms for e.g. a 3D mechanical CAD design application, custom development may still be the best option. In our experience highly specialised software applications fall within a niche area and, are either filled by product vendors or specialised teams in an organisation. The majority of application use case can be fulfilled by Low-Code products.
When to use both in unison: Combine multiple business services spanning multiple COTS and / or custom applications together to create differentiated products and services.
Low-Code has graduated from being an “interesting” technology to a “must-have” technology for organisations seeking to strengthen their competitive advantage. In this article I have only “scratched the surface” by describing how organisations are applying Low-Code to create Composite Applications.
Stay tuned over the next several weeks where I’ll be posting additional articles speaking about how we’re using Low-Code to solve wicked business problems …