IBM Systems Magazine, Mainframe - July/August 2017 - 24
proof of concept was developed
that demonstrated the capability
to present mainframe data
directly to web apps running
in the browser in JSON format.
This was then shown to business
stakeholders to generate buy-in
and support for the idea.
After approval, development
began in earnest. With assistance
from IBM, Bankwest created
new CICS* V5.2 environments
to host the Java Runtime
Environment running bimodal
CICSPlex* with the CICS V5.1
environments that host the
PL/I programs and modules.
This facilitated a two-speed
development capability where
developers could take advantage
of the Java improvements in
5.2 without a five- to six-month
project to upgrade all the other
environments from CICS 5.1 to 5.2.
Bankwest also made the
decision to auto-generate the
Java code required to create the
RESTful API on the mainframe.
This meant that a CICS PL/I
developer could take existing
business processes and open
them to the web without having
to know how to code in Java.
This was developed using
Xtend from Eclipse, which gives
developers the ability to program
in a functional way while also
generating idiomatic Java that's
not based on brittle template files.
"We can literally get prototypes
up within hours, which is great
if we're giving demonstrations
to users within the bank. If you
were to write that Java from
scratch, you couldn't do it at the
same speed. You'd have to write
all of the validation and error
handling-this takes a lot of time.
Instead, we can generate all of
that from the framework, which is
a massive time saver," Kilroy says.
To ensure application stability,
security and automation,
Bankwest deployed a number of
Kevin Kilroy stands
in Bankwest's head
office, which has no
fixed desks, allowing
employees to work
wherever they prefer.
"We're here to try and really optimize everything
around our customers. ... So by both leveraging and
modernizing the investment in our mainframe, we
can now do that in a more timely fashion."
-Keven Kilroy, senior IT specialist, Bankwest
other solutions. As Kilroy explains,
"One of the properties that's
made the core banking system
successful over time is the modular
nature of the PL/I programs. We
have a certain degree of isolation
within this structure, which
means defects within a specific
PL/I program or module don't
compromise the entire system.
This behavior is something we
wanted to mirror in the Java REST
framework, so we utilized OSGi
Alliance applications for that. This
allows us to deploy the RESTful
endpoints in isolation from each
other, and thereby achieve similar
isolation/resilience properties as
the PL/I programs."
These OSGi applications
run within IBM's WebSphere*
Application Server Liberty profile
in CICS V5.2 on the Bankwest
This dovetails nicely with the
development process of a CICS
PL/I programmer working on
creating business logic in PL/I
and pushing both the PL/I and
Java OSGi applications together
as an atomic unit through the
environments, all the way to
production. In support of this,
Bankwest developed a continuous
integration, deployment and test
pipeline using Apache Maven,
Git Stash, TeamCity and Proteus,
a PL/I source-code management
24 // JULY/AUGUST 2017 ibmsystemsmag.com
pg 20-25.indd 6
6/13/17 10:09 AM