Modern apps are driving success for public and private organizations worldwide. These apps are reshaping relationships with consumers, employees and citizens, all of whom expect to be delighted by innovations that make their lives easier and more fulfilled. (See sidebar “What Is a Modern App” for more information.)
Modern apps are also helping to spur the growth and innovation needed to compete in global markets. In fact, enterprises rely on the technology and technology expertise gained through mergers and acquisitions (M&A) to fuel long-term growth. An EY Global Capital Confidence Barometer survey of 2,900-plus global executives found that acquiring “technology, new production capabilities or innovative startups” and a “gateway to new markets” are the main strategic drivers for acquisitions.1
But realizing the benefits of modern apps requires organizations to overcome key challenges. In particular, they need to reduce management complexity and create an infrastructure that can best support new and modernized apps. At the same time, they must better unite developer and IT operations teams, strengthening the DevOps approach that is crucial for achieving an organization’s strategic goals.
Despite the great demand for modern apps and the significant potential they represent, many organizations struggle to execute their app strategies because of increasing complexity. These organizations are managing a greater diversity of apps than ever before, including legacy in-house, off-the-shelf and cloud-native apps.
Organizations are also building and running apps on multiple clouds—both private and public. Tapping into multiple clouds can provide swift access to new technologies while controlling costs and enhancing flexibility. But in a multi-cloud world, IT operations teams are faced with managing large application portfolios that span several siloed cloud environments, each with its own management and security tools.
Moreover, operational complexity grows exponentially for businesses that acquire other businesses. Acquisitions force IT operations teams to manage even more distinct apps and environments. Because of the additional operational complexity that acquisitions produce, some acquiring businesses are unable to quickly make the software improvements their customers and employees demand.
Organizations need an infrastructure that can help reduce complexity by establishing greater consistency across data center, cloud and edge environments. That infrastructure must also be optimized for supporting modern apps. It must provide the flexibility developers need for using their preferred tools, methodologies and processes. And it must offer the flexibility for seamlessly shifting apps among environments as priorities change.
Many organizations are adopting new technologies to establish more consistent infrastructure that better supports modern apps. Technologies such as containers, Kubernetes and microservices—which are redefining how apps are built, run and managed—are playing vital roles in these infrastructure transformations. When coupled with the right management tools, these technologies present important opportunities to reduce complexity in a multi-cloud world.
Implementing new technologies is essential. But success in delivering modern apps isn’t just about technology. Modernizing the development and operations culture is equally important.
Organizations must resolve the tension between developers and IT operators. Developers, who are encouraged to do all they can to innovate faster, often view IT operators as hindering their progress. Meanwhile, IT operators, who are measured on how well they can minimize risk and maintain uptime, sometimes view developers as impatient mavericks.
Organizations must bring development and IT operations teams together, recommitting to the DevOps approach. They need to employ processes that help shorten development and deployment cycles while maintaining security and reliability. Technologies such as Kubernetes are particularly well-suited to supporting a positive DevOps culture. Kubernetes provides operators with consistent infrastructure while making modern constructs (containers, microservices, APIs) available to developers.
VMware offers solutions that help organizations surmount the challenges of modern app delivery. For example, the VMware Tanzu portfolio empowers developers to accelerate modern app delivery while helping IT operators simplify management in a multi-cloud world.
VMware Tanzu integrates with VMware hybrid-cloud solutions to create an infrastructure optimized for modern apps. And they unite development and operations teams around the shared goals of fast release cycles and superior application availability. With VMware Tanzu and other app modernization solutions from VMware, organizations have the tools they need to realize the tremendous benefits of modern apps. ▪
VMware defines a modern app as a resilient, multi-cloud–supportive software service comprised of orchestrated releases of virtual machines, containers and serverless functions.
Here's a breakdown of the definition:
Resilient. The resiliency bar for modern apps is set higher than for traditional applications. Developers intentionally cause failures as part of ongoing modern app management and protection. The result is more-resilient apps that customers can depend on.
Multi-cloud. When modern apps are designed to run across multiple clouds, enterprises gain flexibility in choosing cloud providers, draw from a wider skills base for managing their applications and increase platform reliability.
Software service. Modern apps are composed of several software services, each of which may access legacy systems that haven’t yet been modernized.
Orchestrated releases. Modern apps are easier and more reliable to deploy. As platform technology transitions from bare metal to virtual machines (VMs) to containers and serverless environments, software depends less on the system running the code. These transitions shorten the time to move new code into production.
Virtual machines, containers and serverless functions. Modern apps don’t care where they are running: on bare metal, in a container or in a VM. VMs, containers and serverless functions all provide ways of packaging an app into an environment on which it can run.
Learn more about what is and isn’t a modern app in the VMware Office of the CTO blog post, “Defining Modern Applications.”