Customer challenges
Organizations that run core applications on mainframe hardware usually encounter a few challenges when the hardware needs to scale up to meet the demands of digital innovations. These challenges include the following constraints.
Mainframe development and test environments are unable to scale due to the inflexibility of mainframe hardware components and the high cost of changing.
Mainframe development is facing skill shortages, because new developers are not familiar and not interested in the traditional mainframe development tools. Modern technology such as containers, continuous integration/continuous delivery (CI/CD) pipelines, and modern test frameworks are not available in mainframe development.
Pattern outcomes
To address these challenges, Amazon Web Services (AWS) and Micro Focus, an AWS Partner Network (APN) Partner, have collaborated to create this pattern. The solution is designed to help you achieve the following outcomes.
Improved developer productivity. Developers can be given new mainframe development instances within minutes.
Use of the AWS Cloud to create new mainframe test environments with virtually unlimited capacity.
Rapid provisioning of new mainframe CI/CD infrastructure. Provisioning on AWS can be completed within an hour by using AWS CloudFormation and AWS Systems Manager.
Native use of AWS DevOps tools for mainframe development, including AWS CodeBuild, AWS CodeCommit, AWS CodePipeline, AWS CodeDeploy, and Amazon Elastic Container Registry (Amazon ECR).
Transform traditional waterfall development to agile development in mainframe projects.
Technologies summary
In this pattern, the target stack contains the following components.
Logical components |
Implementation solutions |
Description |
---|---|---|
Source code repositories |
Micro Focus AccuRev Server, CodeCommit, Amazon ECR |
Source code management – The solution uses two types of source code.
Both types of source code need version control, but they are managed in different SCMs. Source code deployed into mainframe or Micro Focus Enterprise Servers is managed in Micro Focus AccuRev Server. AWS templates and automation scripts are managed in CodeCommit. Amazon ECR is used for the Docker image repositories. |
Enterprise developer instances |
Amazon Elastic Compute Cloud (Amazon EC2), Micro Focus Enterprise Developer for Eclipse |
Mainframe developers can develop code in Amazon EC2 by using Micro Focus Enterprise Developer for Eclipse. This eliminates the need to rely on mainframe hardware to write and test code. |
Micro Focus license management |
Micro Focus License Manager |
For centralized Micro Focus license management and governance, the solution uses Micro Focus License Manager to host the required license. |
CI/CD pipelines |
CodePipeline, CodeBuild, CodeDeploy, Micro Focus Enterprise Developer in a container, Micro Focus Enterprise Test Server in a container, Micro Focus Enterprise Server |
Mainframe development teams need CI/CD pipelines to perform code compilation, integration tests, and regression tests. In AWS, CodePipeline and CodeBuild can work with Micro Focus Enterprise Developer and Enterprise Test Server in a container natively. |
Prerequisites
Name |
Description |
---|---|
py3270 |
py3270 is a Python interface to x3270, an IBM 3270 terminal emulator. It provides an API to a x3270 or s3270 subprocess. |
x3270 |
x3270 is an IBM 3270 terminal emulator for the X Window System and Windows. This can be used by developer for unit testing locally. |
Robot-Framework-Mainframe-3270-Library |
Mainframe3270 is a library for Robot Framework based on py3270 project. |
Micro Focus Verastream |
Micro Focus Verastream is an integration platform that enables testing mainframe assets the way that mobile apps, web applications, and SOA web services are tested. |
Micro Focus Unified Functional Testing (UFT) installer and license |
Micro Focus Unified Functional Testing is software that provides functional and regression test automation for software applications and environments. |
Micro Focus Enterprise Server installer and license |
Enterprise Server provides the runtime environment for mainframe applications. |
Micro Focus Enterprise Test Server installer and license |
Micro Focus Enterprise Test Server is an IBM mainframe application test environment |
Micro Focus AccuRev installer and license for Server, and Micro Focus AccuRev installer and license for Windows and Linux operating systems |
AccuRev provides source code management (SCM). The AccuRev system is designed for use by a team of people who are developing a set of files. |
Micro Focus Enterprise Developer for Eclipse installer, patch and license |
Enterprise Developer provide mainframe developer a platform to develop and maintain the core mainframe online and batch applications. |
Limitations
Building a Windows Docker image is not supported in CodeBuild. This reported issue needs support from Windows Kernel/HCS and Docker teams. The work-around is to create a Docker image build runbook by using Systems Manager. This pattern uses the work-around to build Micro Focus Enterpise Developer for Eclipse and Micro Focus Enterprise Test Server Container images.
Virtual private cloud (VPC) connectivity from CodeBuild is not supported in Windows yet, so the pattern does not use Micro Focus License Manager to manage licenses in Micro Focus Enterprise Developer and Micro Focus Enterprise Test Server containers.
Product versions
Micro Focus Enterprise Developer 5.5 or later
Micro Focus Enterprise Test Server 5.5 or later
Micro Focus Enterprise Server 5.5 or later
Micro Focus AccuRev 7.x or later
Windows Docker base image for Micro Focus Enterprise Developer and Enterprise Test Server: microsoft/dotnet-framework-4.7.2-runtime
Linux Docker base image for AccuRev client: amazonlinux:2
Mainframe environment
In conventional mainframe development, the developers need to use mainframe hardware to develop and test programs. They face capacity limitations, for example restricted million instructions per second (MIPS) for the dev/test environment, and they must rely on the tools that are available on the mainframe computers.
In many organizations, mainframe development follows the waterfall development methodology, with teams relying on long cycles to release changes. These release cycles are usually longer than digital product development.
The following diagram shows multiple mainframe projects sharing mainframe hardware for their development. In mainframe hardware, it is expensive to scale out a development and test environment for more projects.