Rapid Application Development (RAD) or low-code development is a dynamic approach to creating applications that minimize hand-coding to increase developer productivity. At first, low-code technology grew out of the needs of citizen developers with little coding knowledge to create basic applications using intuitive "out of the box" features - but over time, the technology has matured drastically to suit the nuanced and complex needs of IT professionals.
Today's low-code technology features advanced open-standards-based approaches, comprehensive API capabilities, enterprise-grade security measures, and more to help developers execute on sophisticated digital transformation and modernization projects efficiently. However, the evolution of low-code technology is far from over. In fact, I predict that the low-code space will continue to grow in the following ways in the year ahead:
1. Increased usage - Low-code technology enables a higher degree of nuanced coding intermixed with intuitive visual development, allowing developers to efficiently create high-quality and specific enterprise-grade applications. As more and more enterprise IT teams recognize the ways in which this type of development process can free up internal resource constraints, low-code technology will become the de-facto productivity platform for professional developers.
2. Enhanced enterprise-
3. Central hub for app development via integrations - With increasing API adoption and service consumption, low-code platforms will become even more of a central hub for application development. The current model of enabling streamlined integrations to external services will open the door to an even wider range of use cases - including RPA, BPM, SaaS IoT, AI, and analytics integrations.
4. Emphasized digital experiences - The customer/user experience will only grow more important as enterprises go head-to-head in a progressively competitive digital environment. As a result, RAD technology will increasingly cater toward building highly user-centric digital experiences with clear customer touchpoints where feedback can be provided quickly and easily from any device, channel, or location.
5. Longer-lived applications - The flexibility of low-code technology will contribute to a future in which most mainstream business applications are built to be long-lived and capable of adjusting and scaling alongside changing business objectives. Previously, factors like cumbersome integration approaches would result in the creation of "locked in" applications incapable of change over time - which is both inefficient and costly.
There's no question that low-code technology will continue to be a high-impact tool for CIOs and developers looking to tackle big enterprise IT projects more efficiently and flexibly in 2019 - and beyond.
Originally published by Vijay Pullur, CEO WaveMaker, in VMblog.com
You're a dev, so low-code platforms are useless. Wrong! Read on to find out why.
Everyone seems to be talking about low-code nowadays. Low-code app development platforms are already taking the IT world by storm. Moreover, the idea of being able to swiftly develop applications with minimal coding is appealing in itself. It has been aiding app modernization in all business verticals. But, with popularity, comes various perceptions and misconceptions. It is necessary to separate facts from myths in order to know the true capabilities of low-code app development platforms.
In forums and other channels, a lot of questions come in to get a better idea of what low-code is all about. Here is a list of popular low-code myths and some arguments to debunk them:
So, which category can use low-code development platforms? The answer is all of these. All three categories can use low-code platforms but the functionality and complexity of the applications developed will vary. Using a low-code platform, citizen developers can develop very simple applications that can offer basic functionalities. Power builders can build applications with more functionalities than that offered by citizen developers. Professional developers, on the other hand, can deliver complex applications with multiple functionalities and automation processes. A low-code platform lets a professional developer build application swiftly by reducing the amount of manual coding required. In short, a low-code platform enhances the capabilities of all types of developers by letting them do more than what they are capable of in app development.
Now that the truth about these myths is finally out, businesses can leverage low-code app development platforms to develop future-proof applications and scale. But, while looking for a suitable low-code platform, make sure you avoid some major pitfalls that can prove to be disastrous for your business.
Originally published byDzone
inLow-code platforms are driving about 50% annual growth in a market populated by dozens of vendors. At present, the value of this market stands at $4 billion.
A low-code platform takes a visual development approach to deliver business applications. It enables developers to create applications visually with a minimum of hand-coding and upfront investment in setup, training, and deployment. What drives its adoption is that developers can iterate, and release applications in a fraction of the time when compared to traditional methods.
The following are the features of low-code platforms:
Visual Development - The fundamental expectation from a low-code app development platform is to offer a WYSIWYG development environment where developers can drag and drop components to design responsive user interfaces that adapt to a device’s screen resolution. Some of these platforms go so far as to offer out-of-the-box templates for commonly used layouts and screens such as dashboards. The demand for enterprise mobile apps has meant that low-code platforms have also started to offer cross-platform mobile app development with access to native mobile device features.
Simplified Integration - Virtually every business application depends on data to create a meaningful application. But data is available from disparate systems ranging from proprietary enterprise systems to APIs from external entities and everything in between. Hence, data integration consumes an inordinate amount of time and resources during enterprise application development. A Low-code Platform is expected to provide a visual approach for developers to connect to these data sources and embed data elements directly into the application. Some platforms also allow professional developers to design data models and configure business logic directly inside the low-code app.
Instant Deployment - Beyond the need to eliminate or reduce application coding, Low-code Platforms are expected to streamline and speed up the application delivery process itself. One key characteristic is the ability to instantly deploy an application with zero DevOps. Such platforms also offer a single point of control for app maintenance and updates. While other low-code app development platforms extend the capabilities to security, governance, version control, infrastructure autoscaling, and more.
A modern digital business requires CIOs to ensure that they are providing the newest offerings to users. While choosing a low-code platform, the concern for a CIO is to build applications faster. But what concerns a developer is a set of criteria that determines which low-code platform to adopt. These are -
Whether you are transforming application delivery or testing the waters with a pilot project, it is critical to choose the right business use cases and applications to achieve success with low-code platforms. Once you can identify the ideal use case, choose the low-code platform that best suits the case and delivers business value.
Any enterprise that got its start before the dawn of the internet era comes equipped with a legacy in its systems of records that are several decades old. These systems have been through multiple patch and upgrade cycles over time, making them inflexible to change. Simply put, these systems may create more problems than they solve.
And yet Gartner predicts that, even by 2023, 90 percent of enterprise applications in use today will still be in use.
These systems of record have proven themselves to be a competitive advantage for the enterprise over the years, and they can’t be wiped off the slate – simply because there’s nothing to replace them. In a recent survey conducted by BT Global Services, 42 percent of enterprise leaders said they would continue using their old systems, and 37 percent said they even planned to upgrade these systems. And, contrary to popular belief, a BMC mainframe survey last year revealed that 91 percent of enterprise leaders expect their workloads on mainframes to grow.
The problem in keeping these systems running is that the Baby Boomer generation is retiring, and the skills needed to maintain them are dwindling. Look at mainframes, for example. They aren’t part of any graduate curriculum today, and are not of interest to the young technical workforce. The skills needed to develop old applications written in programming languages, such as COBOL, FORTRAN, Assembler and even C, are not readily available, forcing enterprises need to spend considerably to train and onboard skilled staff.
Modernization: The New Imperative
Now let’s examine modernization. Modernizing software systems has been a cornerstone of the offshore IT services industry. Modernization today is platform-led, very different from the earlier era in which modernization was a services-led initiative powered by selective platform use. There are two main reasons for this:
From Legacy to Neo Legacy
The move from 3GL to 4GL has been making the modernization rounds for a number of years. Unlike 3GLs (C++, Java etc.), 4GLs allow the developer to focus on an app’s business logic and presentation, and not just on writing lengthy code. Developer productivity was the core promise of 4GLs and platforms, such as FoxPRO, Microsoft Access, and PowerBuilder, enabling rapid application development. The problem is that 4GLs were built for an earlier era.
But 4GLs are proprietary, and inevitably result in in vendor lock-in. Plus, enterprise software licensing costs for 4GLs are continuously increasing. And, despite their promise, they required a lot of manual coding. What’s more, their scope of use is limited to specific application scenarios, which are determined by app vendors. Unfortunately, that leaves little scope for customization and exploration.
Unfortunately, many 4GLs were developed before the “digital era” and long before the need to support the web and mobility. Thus, 4GLs are not suitable for the device, data, and integration requirements of today’s enterprises.
But now, low-code application development platforms have stepped in. Their promise is not only to simplify coding, but to drastically minimize or eliminate the need for massive code bases, and doing so results in faster and future-proof development.
From Traditional Code to Low-Code
Low-code platforms have become one of the tools of the trade for app modernization.
Where to Start
How can you transition to app modernization using low-code development? Here are my recommendations:
1. Evaluate the technical condition of your systems and bucket them as low or high depending on your perception of these five parameters:
2. Decide whether the code base needs to be touched
If applications do not need to be modified but need to be updated, there are three common approaches: wrapping, packaging and re-platforming.
If the code base needs to be modified, approaches such as refactoring, rewriting and re- architecting should be considered.
Additional Considerations
A packaging approach that replaces legacy software with COTS software is suitable for systems of record but shouldn’t be used for systems of differentiation. This is because all companies have access to apps, such as Salesforce, that erode the opportunity for differentiation. Such systems need to be approached with either rewriting or re- architecting, both of can build competitive advantage.
Systems of differentiation can be approached using a wrapping strategy, which is typically lower cost. However, the benefits of wrapping are temporary and should be used a stepping stone to a rewriting or re-architecting. All other approaches except wrapping reduce the burden of finding skilled legacy resources. Why is wrapping singled out? Because wrapping simply allows new functionality to be developed on top of old systems. Companies still need active mainframe and COBOL development teams post-wrapping.
Finally, enterprises need to acknowledge the technical challenges faced by IT and developers during modernization projects. These include:
Modernization is a practice whose time has come. But perhaps the true test of any modernization platform is that it must not come at the cost of an army of specialists, but instead must set the stage for sleeker, more people-efficient IT organizations.
Originally published by Vinay Murthy, VP of WaveMaker in EnterpriseTech
Rapid application development platforms – the low-code and no code tools that have proliferated in the last few years – have given rise to the phenomenon of the citizen developer. A citizen developer is someone who is, or can become, proficient in RAD development, either independently or in support of a professional developer.
In the latter case, creating a new app may involve a tag-team approach in which the pro prepares the components that go into composing an app, and the citizen developer can then develop the app. Such two-pass development is one highlight of select RAD platforms.
The citizen-developer phenomenon has gained a wide following in the past few years, essentially because it enables thin IT teams to reduce their backlog of development projects. Another major reason is that citizen developers, once proficient on a RAD platform, can shelve any older development technologies they may have used.
But even with a wide following, the acceptance of RAD has not spiked in use, but instead has evolved from quick and dirty apps (which were more like prototypes) to nice and final apps (offering a great user experience).
As part of that evolution, a number of use cases for RAD emerged. Arguably, the most popular of those are:
RAD platforms are not best suited for developing gaming or other highly interactive apps that use very little data. That would rule out Uber-like apps and gaming apps such as Angry Birds.
RAD is most suitable when the apps are data-driven, often populated from a database system. Pagination of data or memory management (for example, a mobile app that brings in too much data ahead of use may waste data traffic; whereas one that brings in too little could provide poor interactivity) is very tricky particularly when apps need to use AJAX. AJAX is a very common form of programming, for both web and mobile apps, where data is fetched on demand. AJAX applications – also called single-page applications, because data is called into a page without need for a server fetch of a new page – provide a better user experience and are hence preferred.
In addition, low-code platforms are well suited for those applications that are created in Gartner’s Pace Layers model: Systems of Innovation or Systems of Differentiation. Low-code platforms are also suitable for Mode-2 development (the Innovate layer), as defined in Gartner’s Bimodal IT model.
As we see a rampant spread of the consumerization of IT (i.e., corporate apps that look and act like consumer apps), RAD is seeing a new growth phase.
The D in RAD has also been redefined in the new era. Today, the D in RAD refers to both delivery and development. RAD platforms have evolved to cover the entire breadth of application delivery. For instance, some RAD platforms combine a developer cloud to reduce cycle times further (test-as-you-build) and increase productivity. This also makes it simpler to move an app from the developer environment to staging or production (for example, through use of containerization technology).
In short, today’s RAD platforms are nothing like their earlier cousins, although the goal of rapidity still remains.
The challenges of traditional development are not new, nor have there been any substantive improvements in traditional languages that would deliver quantum improvement in time to deployment of new apps – where speed virtually always means corporate cost savings, earlier opportunities for app monetization, or both. That dearth of innovation virtually opened the door for a surge in RAD adoption, whether it resulted from need or opportunity.
Originally published by Vijay Pullur, CEO of WaveMaker, in tmcnet.com
Enterprises have been creating and using applications since the beginning of the IT era. Some of these applications built using older technologies and architecture are still being used today to support core business functions. This formula has worked for a few enterprises and a few enterprises are feeling the use of such applications being historic and dated. With the emergence of mobile devices and supporting software each day, enterprises are required to keep up to speed and transform their legacy applications running on older technology to new and updated technology while maintaining the same functionality or making it better.
Modernization of legacy applications does have its challenges, it is explained below in the following steps.
The path to transforming a legacy application to a modern application is a rather challenging one and it needs to possess all the features of a modern application like quick and easy integrations to new technologies and adaptability to a host of new mobile devices.
WaveMaker low-code platform with its unique features like drag & drop visual development allows enterprises to successfully migrate Lotus Notes-based applications, Oracle Forms-based applications, and MS Access-based applications to state-of-the-art modern applications with minimal coding effort and costs.
Get Started to find out how WaveMaker’s Low-code Platform can modernize your legacy applications.