- 5 network automation startups to watch
- 4 Security Controls Keeping Up with the Evolution of IT Environments
- ICO Warns of Festive Mobile Phone Privacy Snafu
- La colaboración entre Seguridad y FinOps puede generar beneficios ocultos en la nube
- El papel del CIO en 2024: una retrospectiva del año en clave TI
7 mistakes to avoid with low-code deployments
Enterprises are deploying more low-code tools and processes, as they look to increase the efficiency of software development and to support digital business efforts. A key to success with the technology is learning to avoid common mistakes.
Research firm Gartner has forecast that the worldwide low-code development market will total $13.8 billion in 2021, an increase of 23% from 2020. The surge in remote development during the pandemic has continued to boost low-code adoption, it says.
Low-code application development is not new, the firm points out, but a confluence of “digital disruptions, hyperautomation, and the rise of composable business” has led to an influx of tools and rising demand. Low-code as a general social and technological movement is expected to continue growing significantly, Gartner predicts.
The market includes products such as low-code application platforms, intelligent business process management suites, robotic process automation, and citizen automation and development platforms.
Digital business acceleration is putting pressure on IT leaders to dramatically increase application delivery speed, and low-code tools address this. The rise in demand for custom software programs in support of digital transformation has sparked the emergence of citizen developers outside of the IT department, which in turn has influenced the rise in low-code tools, Gartner says.
The deployment of low-code products and processes can be fraught with errors though, and organizations need to be aware of these so they can avoid them or minimize the impact on development operations.
Foregoing fundamental development practices
“The biggest issues I have experienced are based on a misunderstanding of what a low-code strategy actually provides,” says Mandy Andress, CISO at Elastic, a provider of online search products. “Many organizations adopt a low-code strategy as a chance to save money or speed up development. But that is only successful if they understand what costs a low-code strategy can improve.”
A low-code strategy can help reduce the cost of developers needed for a project by enabling less experienced developers to create advanced functionality, Andress says. Speed of development can also be a benefit, particularly if components are reused across applications.
“What most miss are the broader business and governance processes needed to ensure an application is developed to meet business needs,” Andress says. “What are the business requirements? What are the key business controls we need to implement, such as separation of duties?”
In a previous role, Andress was brought in to help on a low-code project because there were concerns the application was missing key business controls. After reviewing their efforts, she discovered that the application was missing critical business rules “because the team did not see a need to follow their defined SDLC [software development lifecycle] process for low-code development efforts, and did not have fully documented and reviewed business requirements,” she says.
Re-doing the application “tripled the time needed for completion, removing any cost savings the team gained from adopting a low-code development approach,” Andress says.
Mismatched skills
One of the benefits of low-code tools is that they can reduce the need for experienced developers to get projects completed. But that doesn’t mean the need for skilled professionals goes away.
“Teams deployed on low-code development need to be highly proficient in the respective low-code platforms, with appropriate product certifications and knowledge of what to do and what not to do,” says Vinay Mummigatti, vice president and chief automation officer at LexisNexis Legal & Professional, a firm that provides legal and consumer data services.
“In my experience, deploying software engineers who are good at writing bespoke, coding-intensive software applications to develop low-code solutions is a mistake,” Mummigatti says. “They most often write thousands of lines of code and end up with highly customized applications that are difficult to maintain or scale. And that’s not what a low-code platform does best.”
For example, at LexisNexis a J2EE engineering team was cross-trained on a leading low-code automation platform to deliver a “legal order processing” application, Mummigatti says. “Instead of building the application as per the methodology and best practices prescribed by the [low-code] platform vendor to leverage out-of-box features, the development team used [the] platform only to orchestrate the workflow as a back-end engine, but wrote a complex code for all functionalities,” he says.
The custom coding led to three times the original cost and time estimates, and severe performance and maintainability issues that eventually resulted in a complete rewrite of the application using the vendor’s professional services team, Mummigatti says.
Lack of business-led software delivery
Low-code platforms primarily enable citizen developers from business communities to achieve rapid application delivery, Mummigatti says, and leaving business users out of the early decision-making process is not a good idea.
“One of the key mistakes we have seen is that business users are not involved from the start of a project,” Mummigatti says. “With a low-code, ‘model-driven development’ platform, having business users engaged from the start is key to success. Lack of business engagement from the start may lead to major re-engineering and budget/schedule variances.”
Low-code projects should include strong business-IT alignment. An example Mummigatti cites is a customer onboarding platform that was designed and developed with minimal business engagement. When the platform was delivered, the business users rejected the process logic, decisioning rules, reporting, and user interfaces, as they imposed complex operational change management, he says.
“When done right, we have engaged business from the first sprint,” Mummigatti says. “The business users can visualize how the process models are designed, business logic defined, UI [user interface] forms/interfaces created, and data elements transformed at every step” in a low-code platform. This ultimately results in an application that is “exactly as the business imagined,” he says.
Failing to update culture and structure
“Low- and no-code technologies are excellent tools to support the transition to business-managed applications and citizen development, if done right,” says Andrew Kum-Seun, senior research analyst in the applications practice at research firm Info-Tech Research Group.
“Many organizations forget that significant shifts in company culture, software, and risk ownership structures, and IT operating models are needed for this new environment to flourish,” Kum-Seun says. “Unfortunately, traditional software delivery practices, siloed business and IT teams, and poor enterprise system quality limit the true potential of low- and no-code technologies and drive up the cost of implementation and long-term maintenance.”
IT must transition from an operator and solution implementor “to a trusted partner, coach, and platform supporter,” Kum-Suen says. “The business must be accountable for their software implementation and development decisions and be transparent about what changes they are making to the corporate environment. After all, the real value of low-and no-code technologies surfaces when we are willing to optimize how we work to take full advantage of their features.”
Setting an overly ambitious agenda the tools can’t support
Low-code platforms can be valuable tools for enhancing development. But they’re not perfect.
“A key mistake with low-code platforms is not accounting for some technical limitations,” Mummigatti says. In some projects, LexisNexis Legal & Professional tried to extend its low-code platforms to handle high-volume, transaction-centric applications with recovery and failover features or batch processing in large volumes.
“We found that low-code platforms do not scale and perform well in situations involving integration-centric data or service orchestration across multiple systems or complex data structures,” Mummigatti says. The firm used low-code platforms for applications in mortgage processing and anti-money laundering applications that involved batch processing of documents and data coming from transaction processing applications in large volumes.
In both scenarios the company found that the low-code platforms could not deliver the speed and quality it needed. The applications failed in the middle of the process. “We had no ability to ensure 100% processing of large data volumes in a batch mode” with low-code platforms, Mummigatti says. “This was a major operational and regulatory challenge with high impact on customer experience.”
Deploying too many tools
Too much of a good thing is not always a good thing. That applies to low-code and no-code tools, particularly if they don’t work well together.
Software company Nutanix ran into this problem, encountering what CIO Wendy Pfeiffer likens to a “Tower of Babel.” By implementing many tools that don’t speak the same language, “your team will not be able to reach great levels of automation,” she says.
“In my team’s case, it was only after we trained every member of the team in the use of a single tool that we began to make real progress in enabling autonomous operations,” Pfeiffer says. “Three years ago, only about 15% of our services were performed autonomously. Today, that number is closer to 85%, with many of the first steps of that journey taken by team members who had never before written automation code, but who were experts in IT operations.”
In addition, low-code technology might not be as simple to implement as vendors advertise, Kum-Seun says. “It’s true benefits lie in its ability to leverage and integrate the various services and data in your corporate applications, data warehouses, and systems,” he says. “However, many organizations are constrained to their legacy system architecture, they lack common data definitions, and their applications are burdened by technical debt.”
Application programming interface (API) gateways, data lakes, cloud platforms, and other integration and aggregation tools can help improve system compatibility with low-code technologies, Kum-Seun says. “However, they do not address the fundamental architectural and data management challenges,” he says.
Perpetuating poor processes
The potential for low code tools is huge, Pfeiffer says. “With a little training, every member of the IT team can automate key elements of their specialized workflows, enabling improved accuracy and efficiency,” she says. “But automation in the hands of the masses is not a panacea. A terrible process is still a terrible process, even if it is executed quickly and accurately by a machine.”
There is no special “machine magic” that turns a poor manual process into a brilliant one, Pfeiffer says. “As a first step, my team is required to write out candidate processes in plain language,” she says. “There’s something about seeing a description of the work to be done that highlights issues and leads to improved workflows.”
Once the document makes sense, the process is ready for translation into code by the low-code tool.
Automation is best executed by degrees, Pfeiffer says. “IT teams often believe that they need to automate a problematic complex process end-to-end in order for automation to be impactful,” she says. “My team and I have learned that focusing our efforts on automating the most error-prone steps of our processes — the steps that create the most re-work — is a real key to experiencing the benefits of these tools.”