Understanding low-code Concept
Low-code development is a software development methodology where applications can be built through a graphical user interfaces (GUI) and visual modelling techniques. This technique minimizes the need for hand-coding and hence the name, Low-code. It enables business users to build new capabilities via apps, without requiring that they have code expertise. Users can create, manage and share business apps on iOS, Android and Windows devices. It has drag-and-drop functionality and a familiar look and feel taken from applications like PowerPoint which makes it easy to use. Most of the Low-code platforms are offered as Software-as-Service solutions.
Let’s try to understand how creating new apps in Low code is different from a traditional software development methodology. In a traditional application development methodology like waterfall, there is a long lead time before a working model can be created and tested by the user. As a result, there is considerable risk of the end result not in conformance with the initial requirement. Even in a modern Scaled Agile (SAFe) delivery approach the first minimum viable product (MVP) is delivered to users, after few cycles. Fig 1
Fig 1In a Low code development, one can create engaging user experiences across any device with visual, drag-and-drop, WYSIWYG (what you see is what you get) IDE’s. The MVP version of the product is a direct next step and new requirements and features can be added to the subsequent versions. Fig 2
Fig 2Low-code the savior – business benefits
Low code development aims to address the following pain areas or processes that cause delays in a typical software development process (fig 3).
Fig 3The three main business benefits that Low code brings are:
Faster time to market – Low code enables bringing production versions of the software quickly, by building a prototype and then rapidly iterating with built in user feedback and defect collection mechanisms.
Automated governance that ends Shadow IT – One of the pain areas of an IT organization is users creating and maintaining their own apps outside the knowledge of the IT department, a term known as ‘Shadow IT’. With Low code, business and IT users are encouraged to create their own apps that improve their efficiency, but within the framework defined by their IT organization. These apps are easier to develop, maintain and track.
Lower costs – With quick development, there is less requirement of person months, complex software development lifecycle and costly operational procedures. Lower development and maintenance costs are some of the primary drivers for Low code adoption.
Why is Low code popular among development community?
Although Low-code or no-code implies less coding work, the development community is equally excited at the prospect of using this technology to bring their ideas to life. Some of the advantages that this technology offers to the developers include:
The Low code platforms support the entire Applications Development Lifecycle from idea to live app, including DevOps and CI/CD
With a specific focus on collaboration and control across, the different phases of development and contributors (developers, analysts, and business users) have everything they need to manage rapid development and deployment
Low code platforms usually support the operation of a portfolio of applications running at scale, with built-in monitoring and alerting
There is support for built in testing, from unit testing to full automated functional testing as well as one-click deployment and monitoring once in production
The Low code platform APIs allow for external integration with tools to support project management, DevOps, testing and CICD pipelines
A Low code example
Here’s an example of intelligent document processing that can be solutioned through Microsoft Low-code platform. The use case consists of automating the manual processing of invoices: reading data from PDF files attached in emails and manually typing into Excel sheet for reporting. This can be automated through the PowerApps suite as shown in the below figure (fig 4)
Fig 4The files are received using common mail box integrated with SharePoint Online libraries.
Auto triggered Power Automate flows for data extraction, insertion into List and Excel sheets.
Alerting system for success and failure scenarios.
Power BI dashboard with Realtime data for reporting to executives on invoice amounts and other details.
AI solutions integrated into Power Automate flows for processing.
SharePoint online site created with information architecture designed as per AI solutioning for increased findability of documents when required.
The entire workflow is designed using the graphical user interface by the user without having to write any code.
Consider the edge cases
Notwithstanding the advantages, there are some common pitfalls to watch out for when considering Low-code:
Complexity – take care when you feel the Low-code app is becoming too complex. As with any COTS product that is too customized for your business needs, maintainability becomes an issue in the long run.
Security – Since most of the time we are relying on the Low-code provider for securing and testing the app, it might become a ‘black-box’ for us. If security and specific testing requirements are a concern, a custom solution might be a better alternative.
Integration – Although Low-code providers offer integration options, most of the time they are limited in nature. If you have lot of complex integration points, this might become a challenge
Vendor lock-in – Lot of Low-code platforms provide the option to generate source code, which theoretically means you can compile and deploy it on a different provider. However, although the generated code could be algorithmically correct, it may not be human readable or easy to debug.
Governance – The ease of creating your own app and deploying the same opens up lot of possibilities for developers. This can lead to complexities in enforcing uniform standards, security adherence, cost control etc. A proper governance mechanism should be in-place to regulate Low-code deployments and make sure that it aligns with organizational strategy.
Some examples of typical industry use cases
Low code can be applicable to any industry, any sector and across business domains. Here are some use cases and examples of how Low code has helped various industries in improving their efficiency or narrowing time to market.
Deliver New Products and Services Faster
Low-code App development enabled an innovative, utility-focused tech product company to onboard developers in 4 weeks, as opposed to 3-5 months.
Maximized attendance and ensured safety compliance with sensor-enabled turnstiles and a Low code app to track and report attendance in real-time.
Enhance Customer Engagement
Using a Low code based chatbot and direct communication with experts can help product designers find the right product for the job.
Differentiated customer portals can deepen customer relationships and enables operational excellence with Low-code development.
Increase Operational Efficiency
Low code apps helped a food processing major to manage the end-to-end process of creating recipes, planning menus, and procuring ingredients, using automation to save 40% of time previously spent on data entry
Introduction of Low code helped a major Insurance company to embark on a global shadow IT mitigation project, working to standardize processes, find efficiencies, and create safe workplaces in 50 countries.
What are the commonly used Low code platforms?
High productivity development tools: Google AppMaker, Mendix, OutSystems, Microsoft PowerApps, Salesforce Lightning Platform, Betty Blocks, Wordpress website builder, Zoho Creator, Appian, Google AppMaker, Trackvia
Visual web service and API composers: If This Then That, Appian, Microsoft Flow
How are we helping our customers with Low-Code development?
Customer Engagement Apps (Portal/Mobile): Mobile applications to support industrial maintenance activities for a global manufacturing firm
Integration Apps: Integration application to connect different products for Transport Management System for a multinational conglomerate company
Legacy Migration: Migration of all internal Lotus Notes applications for a major electrical company
To help you get started on your Low-code journey, Capgemini can work with you to identify the right use cases, potential candidates and prepare a business case for your needs. We can support you to further hasten your app development by bringing in pre-defined templates, libraries and expertise on various Low code platforms. For more information on Low-Code and how Capgemini can help you adopt this to your business, you can reach out to me.
Understanding low-code Concept