Digital transformation requires companies to reinvent business processes to support new work styles and leverage the power of new technologies such as mobile and IoT. At the same time, IT leaders must rethink their application development strategies to support a rapidly changing market. The development process has to shift from delivering a sizable code release on an infrequent basis to smaller updates delivered in shorter timeframes, such as weeks. A technology solution for application development must also support the development of cross-platform, transactional applications that work online and offline.
A flexible, continuous delivery model is difficult to achieve with today’s standard IT development tools, which take weeks to set up development and test environments and require significant maintenance. Market leaders are tackling this challenge by developing a modern application factory using new application development platforms. These platforms provide building blocks to create applications, connect these applications to backend systems and modify these applications quickly. The question is: How do you bridge the technology gap between today’s rigid enterprise stack, to what’s needed to support designing modern application experiences?
Cloud Enables Robust Modern App Factories
Cloud computing-based services have emerged as a critical component in delivering these new design experiences. At Lopez Research, we see companies using the cloud in three ways to modernize app development, including:
1) Replacing an application with a SaaS app. This choice doesn’t address the overall challenge of designing a scalable application development environment, but it allows a company to modernize a handful of apps fast. The downside is that it doesn’t allow for any customization of the application and it’s a pay per user model.
2) Do-it-yourself on the cloud. In this approach, a company assembles its own components in the cloud and creates a custom platform. The IT team gains the flexibility to design whatever it likes with better scalability delivered through cloud-enabled on-demand compute and storage. However, the company is still managing all of the hardware, software and DevOps aspects of its applications. The downside is that it’s costly, time-consuming and requires nearly as much management as building a platform on site.
3) Purchase an integrated serverless platform. In this solution, the application development team can purchase a platform that offers a set of standardized, reusable components, such as backend integration, client-side development tools and authentication services. Instead of building and managing every aspect of the design from scratch, such as deploying VMs and patching software, a company purchases a pre-integrated set of platform services.
You can liken options two and three to building an automobile. An automaker can build a state of the art automotive plant where you continually add new hardware and software, and need to maintain the factory. In this case you get precisely what you want, but you have the time and expense of setting up the factory. Additionally, if you need to make modifications to the factory, it’s time-consuming and expensive. Or you can build the car from a kit, assembling the parts to speed up your manufacturing time while gaining options for customization.
Of the three options, the serverless platform provides a lower cost, faster time to market and easier maintenance. Like other cloud services, it provides scalability to support building a large volume of apps and rapid scaling to support spikes in usage. It also provides access to new features with dramatically new levels of productivity, and gives you the ability to focus on your app and user experience.
What Should You Look for in a Cloud-Based Serverless Platform?
A leading application experience requires a rich set of analytics to understand application crashes, performance and usage. An application needs access to backend systems to enable transactions. A platform should offer the ability to abstract and connect to information within legacy systems of record and systems of engagement such as ERP, corporate identity and CRM, using reusable services. It also should incorporate data synchronization for offline access. In most cases, your company will have specific requirements around what IaaS cloud provider it wants to use, which means the platform should work on multiple clouds. These are just a few of the critical elements of a modern technology platform.
App development tools are always evolving. A cloud-first development strategy has helped many companies’ digital transformation efforts thrive by enabling a modern app factory with access to new features and minimizing management challenges.
Please join me for my upcoming webinar related to this topic with Progress Software titled Digital Transformation Requires a Modern App Factory.