Skip to main content

5 Tips for Successful Cloud-Native Development

To help your enterprise achieve a successful cloud-native development experience, you should focus on these five areas.

Illustrated icons representing organization, pipeline, testing, APIs and refactoring, and containers.

Image by Elroy Klee

Hybrid, multicloud environments have become inevitable for digital transformation. Employing a multicloud strategy provides many benefits. A multicloud infrastructure reduces costs while improving speed and agility—which is why more than 85% of enterprises are embracing it. No matter where you are in your journey, integrating and having control across traditional IT and cloud matters.

More Confidence to Improve Agility

“Lack of confidence slows developers down,” explains Ian Mitchell, IBM Distinguished Engineer responsible for z/OS* Agility. The way mainframe users provision and create environments for developers can make development seem cumbersome, not agile. However, using microservices—a trend in the industry where services are composed of fine-grained, modular components—developers can work in a more agile way. Microservices promote agility because the processes of development, testing and production can be broken down into smaller parts and put together in flexible ways. Given the business criticality of processes running on IBM Z*, the impact of missteps with an application or configuration change is high. Mitchell believes users build in levels of process complexity to mitigate risk. “For example, linking multiple levels of sign off together, the process for making the slightest change, and even the nature of the testing regime means that users often batch up changes from different developers, then test them all together before deploying them at the same time,” he says. The result can lead to prolonged cycles completed in quarterly updates.

Better Outcomes in a Multicloud World

Cloud platforms are inherently heterogeneous, which is why the multicloud idea has evolved so quickly. The essence of the multicloud requirement is that enterprises aren’t dealing with just one service provider. “As soon as an application from one business unit needs a service from some other business unit, a cloud provider boundary is crossed,” says Mitchell. In May 2019, IBM introduced new capabilities designed to empower clients by giving them more confidence, flexibility and agility for building and running their environments. “We’re providing more options to help clients control their business the way they want—without exposing them to the high costs typically associated with complex platforms,” explains IBM Z General Manager Ross Mauri.

We want developers to enjoy using mainframe services. Opening up the mainframe using APIs gives developers who are going to use mainframe services a delightful experience.
Ian Mitchell, IBM Distinguished Engineer responsible for z/OS Agility


5 Insights to Consider


Leveraging open standards, modern languages and open-source tools shortens the learning curve for new developers and IT professionals with cloud-native development experience. 

“Mainframes offer enterprises a lot of value, but if that value can’t be unlocked to create new markets, or to innovate, then the organization is susceptible to digital disruption,” says Rosalind Radcliffe, IBM Distinguished Engineer responsible for DevOps* for Enterprise Systems. “If an organization can move faster without compromising the quality of services needed, they can win in any market.”

To help your enterprise confidently transition to Agile, achieve speedier outcomes and take full advantage of a multicloud environment, Mitchell suggests focusing on these five areas:

1. Organizational structure

“How teams are organized, where they are located and how they work together dictates component boundaries,” explains Mitchell. Conway’s Law, an adage named after computer programmer Melvin Conway, purports that technical architectures reflect an organization’s social boundaries. 

For IBM Z clients, two dimensions should be scrutinized. The first is whether people working on the mainframe platform are integrated with the rest of the organization. Development teams must be integrated across the organization, not working in silos. If the mainframe team isn’t integrated with the rest of the IT infrastructure, the transformation will be painful. The second dimension is whether all of the functions across the lifecycle within the mainframe team are integrated correctly (e.g., the developers, testers and production roles).

“Make sure your organization is structured to get the right outcomes,” notes Mitchell. “Successful transformation requires both dimensions—gaining tops down and bottoms up support is crucial.”

2. Pipeline

Streamlining the pipeline is the second insight on Mitchell’s radar. “The pipeline needs to be made from common tools that cover the entire lifecycle experience,” he says. “There’s absolutely no doubt about the value of the IBM Z platform and the applications in terms of a differentiated outcome. But nobody is interested in the way you achieve that outcome to be different.”

Developers want more open source and less proprietary, mainframe-only elements. They want to use tools like Jenkins to manage the pipeline, automating the different stages of the pipeline from development, testing, through to the deployment stage. Clients also want the same basics in the development experience. For instance, the editors and source code management systems need to be familiar.

“Unfortunately, inertia can stop people from modernizing. There’s no need to continue using antiquated tools for source code management,” says Mitchell. By focusing on reimagining their pipeline, teams can use conventional processes and tools that allow them to develop applications faster and deploy those applications in any cloud environment.

3. Testing 

“Everybody needs better testing—through automation, repeatability and transparency about what’s been tested, developers gain confidence,” notes Mitchell. Testing is the only practical way developers gain confidence in what they’re doing. “It’s vital that everybody on the mainframe has the opportunity to test continuously, to have confidence in the testing and transparency to ensure everybody knows what’s been tested.” 

Although testing automation speeds things up, if clients aren't on board with it—it slows them down. Developer-centric test automation is the key to ensuring the IBM Z platform is integral to an enterprise-wide continuous integration and deployment pipeline. Organizations can streamline the DevTest pipeline using IBM Z Open Development, an integrated development environment that works with Git. IBM Z Open Unit test makes it possible to create automated unit tests that are consistent with the xUnit framework.

Of course, running tests requires using high-quality test data that meets specific criteria. For example, to meet security requirements, test data must be anonymized. Test data also needs to reflect real-world production. For instance, test data shouldn’t be so large that it can’t be maintained efficiently. The integration of Test Data Fabrication with IBM Z Development and Test Environment can help organizations address the challenges of creating and managing high-quality test data.

4. APIs and refactoring

“The developer experience is fundamental. We want developers to enjoy using mainframe services. Opening up the mainframe using APIs gives developers who are going to use mainframe services a delightful experience,” notes Mitchell. “Open up the mainframe by designing APIs developers can understand, that meet their needs and that can evolve.”

There are just as many scenarios and as much need for mainframe assets to use APIs because mainframes are no longer a monolithic solution. “Applications need to talk to other systems, and as part of the mainframe solution, they’re going to need to use other people’s APIs,” adds Mitchell. Clients are already adopting API technologies, reimagining the experience of consuming mainframe-hosted services, self-discovering a CICS* application and liberating data services from IMS*. But how are they going to evolve those APIs over time? What’s the application asset behind that API? Can the developer be informed by the use of that API to restructure the way that the API is serviced by the application? 

Applications created using multiple components need wiring to get there. Giving RESTful APIs to mainframe assets or allowing mainframes to invoke RESTful APIs from wherever the service is provided is equally as important. With IBM z/OS Connect Enterprise Edition, it’s possible to empower a broad community of developers with a simple and intuitive way to consume data and services hosted on IBM Z. IBM z/OS Connect works in both directions so developers can turn a mainframe application into an API, or give the mainframe application an API.

5. Containers

A container is an isolated deployment of an application. Containers promote the decomposition of monolithic applications into smaller components, making them highly portable and easily transferable across clouds. Orchestration management tools, such as Kubernetes, help developers automate container deployment and management, allowing developers to build and deconstruct applications. “Containers facilitate repeatable deployment and portability of applications across the spectrum of public, private and hybrid cloud environments,” Mitchell notes.

Containers allow the use of the runtime to be much more dynamic. “Our clients strongly associate containers with more agility because containers can help make development teams more effective right across the board—from the developer through testing and into production,” Mitchell comments. “The runtimes the mainframe supports need to provide the same outcomes achieved using containers.”


Defining the Future of Hybrid Cloud


Providing open access to your IBM Z assets is critical to ensuring your organization is primed for the next chapter in a hybrid, multicloud world. “By removing the differences that don’t matter, clients get all the best of z/OS—better qualities of service, pervasive encryption, high availability, reliability, plus the speed, flexibility and agility they need to fuel new opportunity, innovation and competitive advantage,” explains Radcliffe. 


More Resources


Delivering the latest technical information to your inbox.