Companies undertaking digital transformation projects with new, low-code development tools face significant challenges. Especially true when the new applications need to integrate with critical databases associated with Line of Business (LOB) applications. Choosing the right tooling and planning ahead can smooth the digital transformation journey.
Most of us who have worked in software engineering for B2B business applications (transactional systems of record stuff) are used to complex rules and logic that drive the completion of business transactions. These transactions are typically hitting applications such as inventory, invoicing, accounts receivable and more. This stuff is hard and is often hard-coded into legacy ERP solutions that are difficult to support.
Today, we are expected to repurpose and use this data and logic to meet a new breed of mobile and web applications designed to improve customer experience, workflow and business processes. These new applications present a whole new set of technical challenges for IT departments who are already stressed with finding the diverse skill sets needed to support full-stack web and mobile development. This type of development is not for the faint of heart, and many struggle to attract and afford the rare and expensively skilled staff who can cover the broad spectrum of required programming languages. As a result, companies experience segmentation between front-end and back-end development efforts due to different skill sets and doubling of staff costs.
I had the opportunity to discuss this issue with a very large B2B company tasked with improving customer experience. Their response was to reassign a very large and experienced development team to create literally hundreds of APIs (microservices) which could be harnessed by new front-end developers providing the UX experience across any form factor. The core LOB applications remained in operation and a whole layer of new APIs appeared after hundreds of man-years of effort. They did it, and it works. If you can bring that level of resource to bear, these new innovative projects can be solved. But what about mid-and-small-sized companies where the business is pushing for these digital transformation projects but the skills resources are just not available?
Enter Low-code development tools and citizen development.
- “Low-code” tooling is designed to streamline and simplify the complexity of application development and deployment with the promise of significant improvement in programmer productivity.
- Citizen developers are a new breed of analysts/programmers evolving from business units who, quite often without formal training, are building new solutions sometimes with – but more often without – any official sanction from IT.
You’ve heard the phrase, “there is no such thing as a free lunch.” In IT, you might say, “there is no application without technical debt.”
It can be tough to bring this new world of low-code platforms and citizen developers into the realm of working with corporate databases, which are typically managed by complex application logic, tight security and strong change management processes to protect the integrity of the systems and data.
Low-code tools tend to focus on model over design. Visual rendering of apps is done via ‘drag-and-drop’. Connecting to a data source can be an afterthought, and seems to be an easy step. That may be true for new custom applications with independent databases, but even those can quickly evolve to need complex, transactional support to provide a higher quality summary and detailed information to be rendered in a dashboard or a list of transactions.
Citizen developers can accelerate innovation. They can quickly prototype and build new ideas using low-code development tools – all with minimal assistance from a trained software developer. But then comes the day when the citizen developer needs to write and/or update data in a corporate database for full integration and real business benefit, but can’t.
I Need an API for That!
And there’s the rub. Now we need an experienced developer to get involved. One who understands the complexity of these databases and can architect and build APIs which can be used by this new breed of application. This brings us back into the traditional software IT engineering world where things can take more time, and the development, testing and deployment process has a lot of complexity and risk.
The consequences of short-circuiting this process can lead to a whole host of issues which will resonate with most CIOs who have ever been burned by a team who has skipped a process step.
- Duplicated data/master files
- Lack of true workflow across business domains
- Data quality issues and lack of a single version of the truth
- Growing request for new requirements, which may extend beyond the boundaries of “low-code” and now need a programmer to intervene. Oh, we are back to that API dialogue or how to fix integration issues.
We all aspire to have a single version of the truth for our corporate data, but these new applications can quickly cause bad and siloed operational data that now requires integration effort and maintenance. Getting that first prototype deployed to the cloud was really fast with your low-code tool, but now supporting that application can become significant. Low-code tools should reduce technical debt. If they don’t, your benefits can evaporate quickly – especially if the application has any significant lifespan and impacts key LOB.
Shadow IT, Bimodal IT, Gaining Some Middle Ground
The term Shadow IT sends shivers down the back of many a CIO and enterprise architect and is used to describe apps built and deployed without any organizational approval or at least IT representation. These projects quite often happen because IT is seen as unresponsive or that IT just keeps saying, “no!”
Bimodal IT (a term defined by Gartner) is used to describe the notion of two separate but coherent styles of work. One focused on predictability (typically the domain of professional IT) and the other on exploration and discovery (and typically the kinds of projects increasingly performed by citizen developers using low-code tools).
I think it is fair to say that some form of bimodal IT needs to be recognized and adopted by IT teams if they are to be seen contributing toward the business as opposed to being perceived as dinosaurs who fight each year for the budget to keep the lights on.
So, what is the best approach to get the benefit of low-code agility combined with the data quality and integration needs to ensure that our “Systems of Record” and “Systems of Engagement” function with consistency and integrity?
Well, you’ll have far more success when you can blend IT experience with citizen developer innovation.
Even though Low-code platforms bring immense advantages and solve a wealth of web and mobile development problems, we have to balance that with the need for guidance and support from IT experts who understand engineering best practices and who can help guide the process and control the quality of how these new apps work with existing systems.
Low-code allows users, citizen developers and programmers to engage in collaborative design and prototyping to accelerate this process and provide a vision of the application’s workflow and capabilities. The key point here is somebody (who understands the business and associated LOB applications, typically a business analyst) needs to provide the quality controls to ensure the evolution of this prototype will drive the correct business outcomes for both customers and the business.
Low-Code Success – Making The Right Choice
So how do you overcome the API conundrum when you need to write complex business logic or integrate with existing legacy or custom applications?
You have 5 choices…
- Invest in Low-code tools so that you have them available for key functions needed for new apps. Prioritize and start this initiative. Renovating existing systems to support the digital world really is a key part of mode 1 in bimodal IT.
- Talk to your low-code vendor and see how far they enable the support of API creation or if this needs you to have typical tech programming skills. If you can simplify the process of API creation (typically restful web services) whilst supporting the necessary complexity (code, for lack of a better term) then this will help with speed and agility.
- See if they have ready-made connectors for your ERP or how else they might provision or help you with this goal.
- Recognize that if you don’t have the programming or tech skills to do this kind of server-side work, look at low-code tools that can handle it. The array of solutions available today means that developers can be cross-trained quickly.
- Low-code tools today typically come in two flavors. Those designed for citizen developers and those designed for professional developers. Look to equip your programmers with the latter because you can proactively lead some innovation projects before Shadow IT gets there and avoid a headache!
To learn more about LANSA’s low-code development platform, click here.