Originally published by Vijay Pullur, CEO WaveMaker, in App Developer Magazine.
In June 2014, ‘low-code went mainstream. Forrester researchers formally announced the arrival of ‘low-code platforms in their paper ‘New Development Platforms Emerge For Customer-Facing Applications’. While the idea of visual development and configuration instead of hand-coding existed since long before, Forrester’s report marked the time when global enterprises began taking low-code as a serious alternative to their current methods. And it has grown significantly since.
Gartner predicts that by 2024, over 75% of large enterprises will use low-code development tools, and over 65% of all application development will be done with low-code tools and methods. Confirming these hard stats, low-code proves to be worthwhile because:
The real question about adopting a low-code platform is: When is a low-code platform right for your business?
In order to help you gauge if low-code is right for you, in the present, we’ve identified specific situations in which enterprises see great benefits from low-code, across three dimensions — your business landscape, preparedness for low-code, and technology position.
Enterprises on a digital transformation journey realize soon enough that their business landscape is evolving faster than their transformation initiative is moving. They need greater speed in their application modernization endeavor without sinking more investments in additional resources/tools. Low-code can enable this.
The visual approach of low-code simplifies the application development process — it abstracts complexities of integration and configuration, somewhat reducing the intimidating aspects of hand-coding. This allows business users and professional developers to collaborate more meaningfully. With visual prototyping, business users can play with the feature, facilitating earlier validation, reducing rework and cost overruns significantly.
Be it market pressures, compliance needs, or competition, businesses from time to time come under pressure to deliver fast. And hardly ever has an IT leader said, “we have all the people and budgets we need to accelerate”. More often than not, IT teams are left to find innovative, yet cost-effective ways to deliver fast. And low-code is exactly that.
Low-code platforms enable enterprises to use their existing teams to perform complex development tasks with minimal upskilling. With visual prototyping, they provide a common ground for business users and developers to collaborate, without yet involving IT or DevOps. They automate coding, saving time and energy for engineers, which they can then leverage to innovate at scale. It ensures that you have standardized and consistent code, in spite of different developers working on it, eliminating shadow IT and facilitating better governance.
As you identify and explore low-code alternatives to traditional development, you will develop organizational know-how about how it works, how it fits into your existing systems, etc. In such a situation, you might be in a great position to identify the perfect use-cases for adopting low-code — say, while modernizing legacy applications.
In such a case, where you’re already up the learning curve, low-code can generate incremental benefits for you.
We’ve seen that early adopters and power users of low-code tools tend to be technically-inclined business users. For example, a business analyst who has a clear understanding of data organization / logical flows and a strong product point of view can leverage low-code for configuring and setting up the reporting software themselves. Or generalist developers who need to perform specialist roles as part of their job — say a backend developer needing to do the UI design.
When you have identified the specific person who can leverage low-code because it fills a specific gap, it can work wonders.
Enterprise applications can sometimes be labyrinths of layers, held together by loosely defined integrations. When different teams within an enterprise come to the developer with different business requirements, a working reconciliation of them all can be daunting. With low-code, you can build custom apps specific to the requirements of each business team, without wrecking the foundations of your application.
In a world where every business is a tech business, every enterprise faces pressure to innovate. This can be even more demanding in a tech-heavy industry.. Low-code helps developers build features faster — with the visual interface — and also gets feedback quicker from business users.
Existing development teams often have a conceptual understanding of the application architecture and underlying infrastructure, which enables them to integrate and deploy their code. Adding a low-code platform to accelerate development brings an additional layer, which also needs to be integrated. On the other hand, enterprises might still need IT support to integrate the code written using the low-code tool into the larger application codebase. Often, enterprises shy away from adopting new tools for fear of this integration.
If you have an existing IT support team that can facilitate a low-code platform’s integration into the application landscape, you are in a better position to adopt low-code and reap its benefits.
Low-code as a practice and low-code platforms as tools can help application development teams across a wide range of functions. Whether you’re just considering modernizing your legacy systems or are at the cutting edge of tech innovation, low-code can help accelerate your digital transformation journey.
CIOs need to embrace low-code as it can help accelerate digital transformation and application development demands
TGI Fridays recently introduced Flanagan, an AI mixologist. It is an app and chatbot that creates personalized drinks based on customer flavor preferences and moods. In another side of the marketplace, Nissan integrated Microsoft Office 365 to bridge silos, unify business units, make them "mobile-enabled", and to create a "digital workplace". This is the age of the "future-forward experience". As many companies and brands are working towards delivering experience, the key enablers are emerging technology and modern software applications.
Technology plays an important role in this age of the experience economy. The workplace is transforming, aiming to become more optimized. The workforce is evolving, where employees are now working beyond boundaries and using technology to collaborate and communicate in productive ways. Customers are becoming more demanding, expecting exceptional experiences. Reflecting these changes, enterprises and businesses are modernizing their processes and systems.
Along with the evolving workplace, workforce, and marketplace, the role of IT leaders and CIOs is also transforming. With the demanding need to adapt to a highly-optimised and hyper-connected world, CIOs are nudged into taking a strategic role. They are now expected to be change agents, responsible not only for managing IT budgets but also to identify revenue streams and create business value.
As digital transformation has become the main agenda, CIOs are using technology strategically and leveraging digital opportunities. The fact that in 2019, 40% of technology spending (more than $2 trillion) is estimated to have been assigned to digital transformation initiatives, adoption of emerging technology has become the biggest objective for enterprises. The app economy plays a crucial in driving digital transformation and business innovation. CIOs have to consider the people, platforms, and processes that will cater to the increasing demand for modern applications.
The increasing demand for enterprise applications has led to the increasing adoption of low-code platforms in the Application Development & Delivery (AD&D) market. Enterprises are working towards leveraging agile practices and incorporating development techniques to create a minimum viable product (MVP).
CIOs and IT leaders have to determine what practices, what type of technology and the skills required to achieve modernization. Here’s how emerging technologies such as low-code platforms help CIOs drive digital transformation ROI.
● Align goals with people, processes, and platforms — Digital transformation goals need to be aligned with the business strategy and the culture. Senior IT leaders and CIOs need to communicate the goals and ensure that their workforce is tech-savvy to deliver digital transformation objectives. Alignment of strategies with business needs and expectations will provide CIOs with a better opportunity to succeed in implementation.
Emerging technology such as low-code platforms provides IT leaders with the potential to bridge silos, streamline processes and enable teams to collaborate and focus on core innovation. Using rapid application development tools, CIOs have been able to accelerate their revenue-generation and digital transformation initiatives.
● Get equipped with a modern technology stack — Before beginning the journey of digital transformation, CIOs need to identify legacy systems that need to be modernized. Incrementally modernizing traditional systems can allow stakeholders to witness the benefits and ensure wider adoption in the enterprise. By introducing a modern technology stack, enterprises can also involve and engage employees to upskill and learn about new technologies.
What low-code platforms provide is the potential to modernize applications without rebuilding older applications from scratch. The agility and speed to develop enterprise applications make low-code platforms a preferred choice.
● Accelerate time-to-market delivery of applications — The hyper-demands of the marketplace put much pressure on enterprises to deliver more with less. Accelerating time to market of product delivery needs to one of the main objectives of transformation and modernization.
Time being of the essence, IT leaders are widely adopting low-code platforms because they enable developing applications faster. Rapid application development reduces time spent on design and coding while improving developer productivity. By advancing the ‘speed to market’ metrics, CIOs using low-code platforms can achieve a higher return on platform investment.
● Develop custom applications to deliver user experience (UX) — While time is of the essence so is the experience. When introducing new technology and applications, user experience (UX) has become the core objective. IT leaders need to focus on the purpose of developing new applications. The objective must revolve around the needs of the users and how emerging technology can help them improve collaboration, communication, productivity, and performance. Ideally, application development strategies need to revolve around the ethos of users.
With low-code platforms, custom-built applications can be developed based on user preferences with agility and speed. They enable IT leaders to create enterprise apps that are designed to adapt to experiences instead of devices. By improving the usability metrics, emerging technology like low-code platforms has higher adoption rates and better opportunities to deliver business value.
● Choose the right platform and technology — Given the increasing demands of the digital marketplace, modernization and digital transformation initiatives require IT infrastructure to be agile, flexible, scalable and cost-effective. By supporting the development and delivery of custom applications on-time, low-code platforms ensure enterprise agility efficiently and cost-effectively. With many players in the AD&D market, CIOs need to wisely choose the right low-code platform.
Platforms offer ready-made application infrastructure, improve usability with rich user interfaces, enable full-stack development, give access to the best-of-breed technology stack, enable API-driven integration and encourage business user participation. Ideally, the chosen low-code platform should firstly serve a particular business need. It should allow for code reusability, improve agility, ensure faster time to market, and make integration and deployment easier without vendor lock-in.
Enterprise-wide digital transformation is all-encompassing. It affects all stakeholders and requires revamping processes, upskilling people, integrating modern technology and changing the culture. As change agents, IT modernization and digital transformation can be a challenging feat for CIOs and IT leaders. Emerging technology such as low-code platforms acts as a catalyst to change, providing CIOs with a great opportunity to accelerate modernization and support digital transformation initiatives.
As the hyper demands of the enterprise continues to increase, the technology that delivers innovative solutions needs to be identified. The strategy, approach, and technology that CIOs and IT leaders choose will be the factors that determine the rate of returns on platform investment. The faster the informed decision is made, the sooner the benefits will be evident because the market waits for no one.
Originally published in Information Age by Vijay Pullur, CEO, WaveMaker.
Launching a new business or project means that everything has to be built from the ground up, from defining services, functions, and product range, to deciding the technology, infrastructure, and resources required. Enterprises, to serve the evolving demands of customers and add business value, are looking to develop new applications faster with minimal resources and cost.
In greenfield development projects, the new applications built either solve unaddressed business challenges or entirely replace an existing inadequate system. Consider this example of a new start-up company that is going to launch an online, product range. The primary focus of the company is to build a minimal viable product (MVP) with the ability to make product improvements from customer responses. Without existing systems or architecture in place, the company plans to build a suite of applications to serve various business needs, add new functions, provide an uninterrupted online presence, and ensure scalability based on changing customer demands.
The company, with the absence of an existing legacy system, is weighing out the option of adopting microservices. If they choose microservices architecture, this would involve defining service boundaries (which need to be dynamic) and deciding the technology stack for each microservice. It would also include rethinking operations, creating a scaling strategy, provisioning infrastructure required for elastic scalability, and configuring and maintaining monitoring solutions.
While it is a relief not to inherit technical debt from legacy systems, there are many aspects to be considered when adopting microservices architecture for a greenfield development project.
Define your domain or service boundaries
When developing greenfield applications, defining service boundaries could be tricky. Before trying to categorize your system into different services, ensure you know your domain. For instance, you define that service A is responsible for doing a particular function. What if this changes or if you realize the function needs access to service B.
Before separating functions into microservices, you need to understand and have clarity about the dependencies they have. Only after some time would patterns emerge from which you can identify the functions and services and the problems they can solve. However, there would be apparent functions such as login or profile services that could be carved out into a microservice straight away.
Decide on the technology stack
The technology stack used with microservices in greenfield projects is diverse. You can combine multiple programming languages, frameworks, and data storage technologies. However, standardization becomes an issue with different teams using an entirely different technology stack. Low-code platforms offer one point of control for application updates and maintenance to overcome technology diversity. With a centralized repository for version control, multiple developers can collaborate and merge changes.
Achieve a minimum level of operational readiness
To start a greenfield project using microservices architecture requires a minimum level of operational readiness maturity. Operational readiness in terms of ensuring there is access to a deployment environment and building continuous delivery pipelines where services are created, tested and deployed. Whether it is identifying and provisioning infrastructure requirements, scaling strategy, or service discovery, you need to have a plan to address the operational complexities that could occur when adopting a microservices architecture.
Low-code platforms simplify application development, deployment, and delivery. They use Continuous Integration (CI) tools like Jenkins to provide a continuous delivery pipeline and provide an automated containerization workflow. Low-code platforms transform the way enterprise applications are developed and delivered.
Reorganize development, DevOps and IT teams
To ensure every microservice is managed independently, you would need to reorganize your teams and maintain a balance of resources. It is not productive to have engineers working on multiple microservices; neither is it feasible to have one person for each unique role. For instance, a DevOps engineer can manage dual roles of development and operations, or a full-stack developer can manage the entire application development lifecycle. Ideally, every team should have a balance of expertise which could comprise developers, testers, operations engineers, database administrators, UX designers, and in some instances, even product managers.
With the rapid increase in opportunities applications have to serve customer needs, development teams are under pressure to deliver at a fast pace with tight turnaround times. Added to that, the shortage of skilled professionals is hindering rapid application development. Here is where low-code platforms help by providing a user-friendly interface and a development environment where teams can collaborate on modules with efficiency.
Ensure microservices implementations do not turn into distributed monoliths
There are whispers about how most greenfield microservices implementations turn into "distributed monoliths." By taking a monolithic codebase and spreading it across a network, the benefits of microservices architecture fade. For instance, when making changes to business logic in a shared library, if you need to synchronize the deployments of multiple teams, it reflects the inability to deploy changes in isolation. When building a new system, it is a huge advantage to have a single, non-distributed codebase.
In greenfield, microservices-based implementations, low-code application development platforms provide business agility by automating systems and ensuring data security, integrity, and compliance with IT governance and standards. However, before going all in to adopt a microservices architecture, it would be useful to be clear about the fundamental aspects mentioned earlier about service boundaries, infrastructure, technology stack, resources, and team organization.
There is a new sense of urgency in modern enterprises, to drive mobility and agility, and to deliver more, faster. The expectation from modern-day application development revolves around delivering quick and agile releases, multi-channel applications, availability, and scalability.
The formula for quick release is quick development along with continuous integration and delivery. Quick releases = Quick development + CI/CD
Quick Development is where Low-Code Development vendors are providing superpowers to accelerate development and delivery. CI/CD challenges are already addressed to a great extent. Docker, Kubernetes on the cloud, and other CI tools can be configured with Jenkins to achieve integration and delivery. Considered to be a standard in the industry, most companies are already using CI tools and low-code to drive quick releases of applications with agility.
The underlying challenge is that majority of the vendors are BPM (Business Process Management) vendors who generate applications originally created for business users. As complete application development is not feasible without IT, BPM vendors are calling themselves low-code platforms. The applications they develop are an afterthought and are invariably reflected in the quality and maintainability of the application.
BPM modified solutions are not bendable
BPM tools primarily cater to BPM types of applications and other facilities are normally added as an afterthought. By using tools to quickly generate process-based applications, technical business users and citizen developers fall short of taking application development all the way. Typically standalone applications, core business applications, mobile applications, dashboards, API mashup applications, and chatbots are not optimized by the tools provided by BPM vendors.
The challenges professionals developers face when using BPM tools
Professional developers are a different breed compared to citizen developers. While business users can create intricate wireframe diagrams, not many are proficient in understanding the code that goes behind a single box in a diagram. The task of wiring code into wireframes can only be performed with the help of professional developers and their role typically involves (not limited to):
When using custom BPM tools, professional developers face several challenges. They are unable to follow the popular agile methodology in the same way. BPM tools typically use complicated and proprietary technology and are based on older UI technologies like JSP/JSF, making it difficult for professional developers to work with. Moreover, BPM applications are not normally based on modern, microservice architecture, making multi-channel delivery a challenge. Added to this, professional developers are unable to use their favorite IDE, which can be demotivating and constrictive to the value they would like to bring.
Supporting professional developers may seem to be an ordeal, although that’s a price worth paying for high-quality, enterprise application development. Fortunately, low-code tools have proven to take the load off professional developers by doing the heavy lifting and enabling them to deliver more with less.
Taking app development all the way. How low-code empowers professional developers
Rapid application development platforms are designed to provide a frictionless environment for professional developers to learn and evolve. Low-code platforms compared to BPM tools, help professional developers meet their expectations from the development process. Expectations such as:
Rapid Application Development and low-code Platforms help produce ready-to-deploy applications. Combining code generation features with an integrated development environment (IDE), low-code includes the entire application technology stack, UI, middle-tier, and back-end. Here are examples of how low-code platforms development provides accelerators for development and delivery instead of imposing new practices:
There is a change in the pace of enterprise demands and delivery. With a critical need for rapid application development, more often than not BPM vendors are mistaken for low-code platform providers. Choosing the right Low code Platform could ensure you empower professional developers to deliver more, deliver fast, and deliver better. Because enterprise application development is more than an afterthought.
Here’s a thought. Every minute, more than one person in the workplace is using an application to connect, communicate, or coordinate. More than one person is responding to emails from their smartphones, digitally updating a sales opportunity, virtually conducting a project meeting, or collaborating to update workflows and tasks.
Welcome to the hyper-connected workplace, a complex ecosystem where people, devices, and applications interact.
Be it an HR application, an instant messaging application, a task management tool, a virtual meeting, or a team coordination application, core business applications have become the lifeline of enterprise operations.
As enterprise applications become easier to develop, everyone in the workplace wants to develop an app for their specific business needs. An app to interact with other peers, to collaborate and share work, for leave management, IT support, project planning and management, content management, resource management, learning and development, the list could be endless. But what about the stamp of approval from IT? What about security and agility? Our Lines of Business (LoBs) working in silos?
When LoB units, with teams within teams, decide they need a software application to solve a business need, it leads to the development of innumerable enterprise applications.
While this system may solve individual business unit requirements, a need will arise to interact and connect, securely and seamlessly. With this hyper-connectivity comes the need for agility and security, and here’s where the technical challenge arises. The ground reality, however, is that LoB units within themselves and IT are working in silos, while in fact, they need to complement each other.
As digital businesses today need faster release cycles and agile development, ensuring tools, processes, and knowledge skills are established early in the development lifecycle is needed. To bridge silos and improve the performance of application development, a new approach of Agile Operations must be embraced.
Go beyond “Keeping the Lights On”. The core focus of LoB managers is on improving the quality and performance of applications. Maintaining the balance between “keeping the lights on” or reducing operational expenses and innovation will result in operational excellence and internal competency. Adopting an agile approach gives LoB leaders to streamline processes to achieve competency and optimize resources.
With agile development techniques, LoB and IT functions can be connected. IT is part of every business function. With more freedom for developers and LoB managers to develop applications independently, the bottleneck arises when it has to be vetted by the IT team for security and viability. To ensure better collaboration between IT and LoB, and accelerate project delivery, enterprises are embracing agile development practices.
A ‘not so secret ingredient to achieving agility is connecting people, devices, and applications seamlessly. Each line of business requires various types of applications specific to their business needs and as LoB applications store valuable data typically in legacy databases, integration with other systems is complicated.
Moreover, LoB apps are built by mainstream developers than business users. For them, innovation and code control are important factors in their development process. Here is where low-code platforms positively impact professional developers to build and maintain LoB applications. low-code platforms provide agility to LoB managers and team members by:
21st-century LoB leaders understand the importance of achieving agility. Low-code platforms empower professional LoB app developers to develop new apps to meet functional needs and bring LoB into the mainstream. In this hyper-connected workplace, low-code makes it possible to connect, communicate and coordinate, seamlessly.
In the SaaS world, branching out to a platform business is fairly common. It’s not a surprising move anymore, given the huge benefits of owning the building blocks of other businesses, as we talked about in the first article of this series. Since building a thriving platform ecosystem doesn’t happen overnight, in this follow-on piece we’ll explore the steps for implementation.
In this era of digital platforms, there is no limit to the number of customers you can reach out to. McKinsey noted recently that "companies pursuing offensive platform strategies yield a better payoff in both revenue and growth". Looking at this, one might think the sky's the limit for digital natives having an army of tech-savvy professionals. But this might be generalizing a bit. Incumbents can command a 20 percent share of digitizing markets, compared to only 5 percent for digital natives. But only 3 percent of incumbents have adopted an offensive platform strategy.
Though adoption is low, a growing phenomenon indicates that companies are transitioning from a product-based to a platform-based business model. Technology is at the core of this transition. Cell phones, which were once just typical products, have now become platforms offering a plethora of functions besides only making telephone calls. This is bringing subscribers together with application developers.
According to Harvard Business School, a successful platform strategy involves three components -
Example of a product organization supporting multiple products sharing components of the same platform - by Wyatt Jenkins
If you are considering branching out to a platform business model, the following steps may help in your implementation approach -
Shifting from a product mindset to a platform mindset can be downright counterintuitive—indeed, many firms discovered new platform opportunities almost by accident and in spite of their own missteps. But, like many transformational strategic moves, the successful transition from product to platform should happen in stages that demand flexibility. Platforms are at the core of the successful businesses of the future. By adopting platform thinking and new technology, any business can evolve to join the platform economy.
Building something valuable isn’t a one time process anymore, it is a continuous process and requires you to enable a network of people both inside and outside your company with the right building blocks
What’s common between Facebook, Twitter, Amazon, Airbnb, Uber and Apple? Of course, leave aside the success part! They all conduct their business on a scalable online platform that connects producers and consumers. They create value by facilitating exchanges between two or more interdependent groups bringing in tailored products to the market faster and with less investment. By using the platform model, these companies have grown in leaps and bounds to grab greater market share from well-established firms.
The difference between platforms and traditional business models lies in the way they create value. With producers at one end and consumers on the other, the latter model transfers value along a linear pipeline. The platform model creates value by connecting producers, consumers, and the platform itself. Platform companies have now become the major drivers of innovation as they are setting the standards for digital transformation. As platforms have become the new normal in how leaders are conducting business, enterprises must make the most out of this opportunity.
Enterprises can bring their core value unit to the platform and customers can extend the product by adding features relevant to their business
A 2016 survey by Accenture says, "81% of executives say platform-based business models will be core to their growth strategy within three years". Let’s look at some figures to find out how much popularity platform business has gathered in the business-to-consumer (B2C) context. Almost 80% of China’s e-commerce market is controlled by Alibaba. WeChat messaging platform by Tencent, Asia’s most valuable company, has nearly 850 million users and according to some estimates is the largest gaming company in the world. In the early 2010s, BlackBerry Limited (formerly RIM) and Nokia lost huge market share to Apple and Google because they were acting as product companies in a world speedily embracing platforms.
We’re not even fighting with the right weapons, ... The battle of devices has now become a war of ecosystems
This is spurring the investors to put in more money into platform business than in their linear counterparts. The S&P 500 shows platform businesses have an average revenue multiple of 8.9 while for linear businesses, it’s two to four times more revenue on average.
Platform business is also making a lot of noise in the business-to-business (B2B) world. PingAn, an insurance company in China, is an example of how a traditional corporation transformed its business model. Reframing itself as a technology company, PingAn created a portfolio of platform businesses related to insurance in different verticals - connecting doctors and patients in healthcare; purchasing and selling cars in automotive and even in the entertainment industry. Five years into this transformation, PingAn is now the world’s most valuable insurance company.
Let’s loop in South Africa as well. Naspers, a 100-year-old company printing newspapers, transformed itself into a platform company in five years, built global online classified business OLX and acquired food delivery startup Delivery, Hero.
Why are established companies conducting business in traditional ways thinking of disrupting their operations and going bonkers about platforms as a business? These benefits of offering a platform over a product might make for a strong case –
At times, when there is increasing pressure to build and market something new, a product platform strategy can be the perfect solution. This is because a healthy network of producers will allow the platform owner to reach out to more customers and have a flourishing business. This network becomes more valuable when the platform fosters distributed innovation and each player can grow faster than they would on their own.
Most organizations implemented low-code tools to speed up the application development process. From $4.32 billion in 2017, the low-code development platform market size is expected to grow to $27.23 billion by 2022. This technology is gaining popularity, not only as a means to transform legacy applications, but also for building customer-centric mobile and web applications.
The ability of low-code platforms to speed up the process of application delivery and deployment enabled enterprises to respond in time to demands for business software. It caught the attention of professional developers when they used it to build complex applications with multiple functionalities used across the enterprise and not just for one department. Add to that, access to cloud services via self-service interfaces compelled AD&D leaders to adopt low-code platforms to innovate and deliver.
The idea behind adopting low-code platform is to use a minimum of coding and more visual modules to build applications, whether for user experience or data modeling purposes. According to a Forrester survey, large enterprises are among the biggest adopters of low-code platforms. This has helped to quell the doubts of developers who believed low-code platforms are not meant for building large scale complex application. Using low-code tools, developers found that they can create applications that once took months.
Yet in cases with no proper governance in place, it can become a technical burden for the company as the cost of maintaining such applications can escalate when using closed low-code platforms.
Before putting any governance in place, it is important to know who the prime users of low-code platforms in an enterprise are. Primarily, professional developers, dependent on coding, are the first-level users of these platforms. They have an intimate understanding of application design, performance, maintainability, and reliability. Then comes business experts or citizen developers who also contribute to building applications by bringing in the knowledge of what the market needs are and how the application can best serve those needs. Depending on who is working on the platform, a sort of control mechanism can be established to ensure that users can get the most out of these applications.
No-code platforms have a strong appeal for non-technical users. They can rapidly create a business application using the visual tools of the platform without writing any code. In a few years, there will be thousands of such apps performing even mission-critical tasks. Completely independent of IT intervention, it will soon become another instance of Shadow IT. Although these shadow apps improve productivity in the short run, it may compromise IT security in the long run as they are not protected with firewalls and security systems. Also, when these shadow apps fail to deliver certain functions, the cost of rebuilding them using technology approved by the IT often increases the cost to the organization. It may also need to hire external developers who can implement applications in accordance to their IT policies.
When shadow IT is becoming the alternative to traditional ways of delivering applications, it becomes a monumental task to do away with it. But there are ways to realize the benefits of these shadow apps built with tools like low-code platforms, without compromising on IT security and governance. Open-standards-based low-code platforms are widely available and conform to the guidelines of IT security, enabling developers to build customized applications according to their business needs. Using proven rapid application development platforms, shadow apps can be liberated from proprietary technologies that often becomes a roadblock to innovation.
To mitigate the risk of shadow IT, developers want to work on secured platforms that help them build custom applications with minimal coding and in less time. Whether working on a large project or many small projects, enterprises rely on a global team of developers. These developers have varied levels of skills and roles to play. Platforms with comprehensive role-based access control features will allow enterprise application development teams to collaborate better and create applications faster without the risk of project governance issues. It is based on the principle of allowing the least level of access to perform tasks with full efficiency.
Today’s government regulations like the Health Insurance Portability and Accountability Act (HIPAA) or European Union General Data Protection Regulation (GDPR) place strict requirements on enterprise databases and their use. Keeping this in mind, logging data changes in a database has become a common requirement of enterprise applications. This involves additional effort during the application development process. Instead, an in-built functionality for data auditing will allow developers to concentrate more on the business logic than handling history logging needs. Platforms that enable seamless integration of such functionalities into applications will automatically become the preferred choice of enterprises to meet compliance needs.
Rules, standards, and governance help to not only decide what apps are to be created but also how they will be written. Good governance policy is one of the secrets to successful low-code implementation. In the absence of it, an enterprise may end up with thousands of low-code applications in dire need of IT intervention.
Originally published by Rooplekha Poddar in DZone.com
Rapid Application Development (RAD), also termed low-code development, is a visual approach to creating apps that enable greater developer efficiency. However, what started as technology to help the masses address the speed of basic development has since matured so RAD definition is changing.
RAD platforms started out as tools for citizen developers without substantial technical knowledge of coding, who could use intuitive “out of the box” features to create applications suited for simple departmental and experimental needs. While these early RAD platforms (not this "rad") brought basic coding capabilities to the masses, the applications created were short-lived and unable to evolve and scale with changing business needs. To address this gap in enterprise IT, RAD technology transformed to meet the needs of developers looking to efficiently undertake more sophisticated legacy app modernization projects, end-user customer experience updates, and long-term digital transformations.
Gone are the days of non-responsive front-end technology, cumbersome integration approaches, and non-standards-based widget and page development. The RAD platforms of today are far more nimble – they’re capable of leveraging millions of APIs and the most advanced open-standards-based technology stacks while maintaining enterprise-grade security and end user experience. As a result, IT teams can tap into these functionalities to execute large-scale digital transformation and modernization projects faster than ever before. The technology enables a higher degree of coding intermixed with visual development, facilitating the creation of long-standing and flexible enterprise-grade applications (see Figure 1).
While there’s no question that low-code platforms have transformed over time to become the advanced, high-impact digital tools of today, the enterprise IT environment continues to evolve as user expectations and preferences shift over time. This dynamic begs the following question: where is RAD headed next?
The future of RAD platforms
Increased usage – As technology further matures and encompasses professional developers’ needs, RAD technology will become the de-facto productivity platform for professional developers executing long-lasting enterprise IT modernization and digital transformation projects.
Enhanced enterprise-grade applications – Over time, professional developers will continue to push the boundaries of RAD as they bring best practices in app development, deployment, and DevOps from their vast experiences into every stage of the application lifecycle. Enhancements will span a range of capabilities, including cloud deployment, real-time integration, and increased developer collaboration.
A central hub for app development via integrations – With increasing API adoption and service consumption, RAD platforms will continue to become the central hub for application development via lightweight integrations to external services. The integration model will redefine the user experience and will serve a specific use case. Examples of such integrations include RPA, BPM, cloud services, SaaS services, IoT, AI, analytics, etc.
Emphasized digital experiences – The customer/user experience will only grow more important as enterprises compete digitally. As a result, RAD platforms will increasingly cater to building highly user-centric digital experiences with clear customer touchpoints.
Long-lived applications – With serious professional enterprise application developers using flexible RAD processes, the future will hold increased development of mainstream business applications that prevail for many years (long-lived applications) and continually serve organizational needs.
RAD platforms have come a long way since their inception, and time will tell exactly how citizen and professional developers will leverage this approach in the future. Regardless, the IT community can count on the fact that as enterprises’ digital needs continue to develop, RAD platforms will continue to be a high-impact tool for modernizing years of legacy applications and creating digitally agile business infrastructures.
Originally published by Vijay Pullur, CEO WaveMaker, in App Developer Magazine.
When it comes to Outsourcing Business / IT applications, there are 2-3 models that CIOs and IT leaders are most accustomed to. These models are so well entrenched, that stakeholders seldom look for a better model. It is not just IT leaders who are pushing these models, the entire IT Services industry continues to push these older models as they are profitable for their own businesses. Given the rapid pace of change in the Software / Tech industry, it is now time to rethink established Outsourcing models that Enterprises have relied on for years (decades really).
First, the basic definition of Outsourcing. By this, we clearly mean Outsourcing the development of business applications (could also be legacy migrations, data management, and many more projects). Once stakeholders have determined that a project needs to be outsourced, it then becomes a question of finding the right vendor, timelines, and budgets to get them executed. Here I will not go into the details of coming up with Business Requirements, Requests for Proposals,s and sourcing vendors, but focus more on Outsourcing as it relates to methodology, technology, timelines, and budgets.
The most dominant models today are a) Fixed-cost model b) Time and Material model and c) Staff Augmentation model. The Fixed-cost model is easiest to grasp by business sponsors. They allocate budgets for different projects and assign project managers to execute on those. While this model is tried and tested, there are many downsides. Many of the details around project execution including architecture, technology stack, development methodology, and deployment practices are left to the vendors. The further downside to this model is you have to work with vendors' change management processes. Not paying attention to these downsides, would result in increased TCO over the long term.
The Time and Material model of Outsourcing is also very well tested. While difficult to get upfront estimates around total costs for their projects, it would at least give flexibility around change management. However, all other downsides from the Fixed-cost model still apply here. The third model is simply Staff augmentation. You would bring in technology consultants and put them under existing teams to speed up project execution. This is Outsourcing to the extent you don’t have to bring in people on a full-time basis and is closer to the Time and Material model and it also comes with the same set of downsides.
To address shortcomings with the above models, there is a better model that I refer to as “Agility Outsourcing”. This model is in part based on the best practices seen in Software companies to build their own products coupled with solutions to meet budgetary and time constraints of Enterprise Outsourcing.
Here are the key underpinnings of Agility Outsourcing:
Business benefits of Agility Outsourcing:
The way to structure the Agility Outsourcing project is to have a Statement of Work for the entire project with a plan for monthly Sprint deliverables and payments. Vendors who offer Agility Outsourcing should be able to give an estimate for the total cost of the project if they have reviewed the project requirements. With this model, sponsors not only have an overall estimate for the project but also get flexibility if business needs change. The real gain here is all the best practices and technologies used by Software Industry, benefitting outsourced projects.