What problem are we trying to solve¬†?
One of the complaints that we’ve heard from customers with previous release of Eclipse based tools for z/OS is that they didn’t¬†integrate with each other easily. ¬†Our December release of the IBM Explorer for z/OS Aqua addresses this by providing a foundation for twelve different offerings backed by a release train and a common installation experience.
During the year as we talked to customers some of the less complimentary phrases we heard was¬†“matrix jungle” to describe the experience of downloading different Eclipse based offerings from different IBM sites and aggregating them together. ¬†The picture that¬†built up was one where organizations were creating distributions for their end users¬†that included elements of different function that IBM had packaged, tested, and delivered¬†in independently branded products that¬†marched to their own life cycle. ¬†The mainframe simplifies IT by having a single robust and resilient, high performing, high availability box that can run complex and critical customer workloads. ¬†It became clear that IBM wasn’t complementing this at all times with the way we delivered our devops tooling, and fixing this became the mission for the IBM z/OS Explorer Aqua release.
What’s in a name ?
The whole exceeds the sum of the parts when it comes to devops tooling, and it became clear that rather than having individual products release independently of each other, we needed to adopt a strategy based around a release train. ¬†This has been done before with community software releases where a name is given to the release that conveys to consumers that everything on the release train has been built using the same levels of underlying software and it tested to be compatible with other offerings on the release train. ¬†Some of the most frustrating customer problems were when two particular IBM tools, each of which had useful function in their own right, were unable to be installed side by side in the same desktop because of different levels of shared components that conflicted against one another. ¬†We wanted to start with the letter A, we wanted to be fresh, we wanted to use a colour shade of blue (paying homage to¬†IBM’s nickname of big blue).
Who is on board the train ?
We consolidated each of the different products’ websites (including blogs, forums, and download links) into the single one stop site https://developer.ibm.com/mainframe. ¬†Also, similar to app stores with add-ons available for mobile phone operating systems, we hosted all of the Eclipse plug-ins that are part of the z/OS Explorer Aqua release train on a composite update¬†site¬†URL ¬†http://public.dhe.ibm.com/ibmdl/export/pub/software/htp/zos/tools/aqua/. ¬†This can be by both IBM Installation Manager, or the Eclipse p2 software installer, to install software from as well as keep software up to date with the latest service refreshes.
A picture speaks a thousand words, and the screen shot below shows the products available on the aqua site available to download using Installation Manager.
More detailed instructions are available on the download page¬†including how to obtain and¬†install the new host component needed for the Remote System Explorer perspective.
What function is in the box¬†for z/OS resource access ?
As part of consolidating the devops lifecycle products together we realized that we needed to have function in the base that allowed users to work with basic z/OS resources. A goal of our tooling is that end users do not have to exit their Eclipse environment to use ISPF for MVS files, SDSF for jobs, OVMS¬†for UNIX files, and so forth. ¬†Without this basic function being present customers told us they were having problems training users who were unskilled in traditional z/OS green screens¬†to become productive mainframers. ¬†We needed enough in the base that folks didn’t have to dip in and out of TSO.
There is already¬†some basic z/OS resource API available through FTP¬†on z/OS, however we also knew this had limitations such as being unable to manipulate files with rename or copy or being unable to place a lock on files opened for edit in data set members.
Eclipse has a framework that allowed connecting to remote system that worked well with Linux and Windows known as the Remote System Explorer. IBM’s Rational Developer for System z extends¬†this¬†to provide a lot of function needed to develop COBOL, PL1, HLASM applications. ¬†What we did is separate out the parts that provided basic file and job access for system programmers and include these in the z/OS Explorer Aqua base.
The z/OS Explorer has a host component that is available as an¬†SMPE installable zip file. ¬†Instructions for how to configure and install this are available in the knowledge centre¬†server¬†installation guide.
The screen shot below shows the feature rich JCL editor that is included in the base, allowing you to edit JCL with content assist and syntax checking in the editor. ¬†All other language editors, such as COBOL or PL1 are provided by Rational Developer for System z, that also provides the ability to interface with source code repositories, define property groups for compilation, start an embedded host¬†emulator session¬†, work with Bidi character sets, and much more that transforms the base z/OS Explorer into a full function powerful integrated development environment for application programmers.
Full steam ahead¬†
The base z/OS Explorer function allows you to work with files and jobs. ¬†The mainframe is the world’s most powerful and resilient operating platform for workloads, and the goal of the Aqua release was to allow you to do much much more than just replace green screens with GUI trees. ¬†This is where the other parts of the release train come in –
- Rational Developer for System z allowing your application programmers to enjoy the¬†world’s most powerful integrated development environment for z/OS giving them the full range of devops capabilities required to leverage the platform.
- The CICS Explorer¬†connects to CICSplexes letting work its regions and installed resources as well as CSD definition data
- Debug Tool allowing you to set program breakpoints and step through code as well as create code coverage data for running applications
- File Manager allowing you to view and manipulate¬†VSAM or MQ data using copybook aware editors as well as create test data scenarios
- Fault Analyzer tracking application abends for traditional and Java programs¬†across complex application workloads
- Application Performance Analyzer identifying runtime hotspots and performance bottlenecks helping to optimize program CPU cost
- z/OS Connect Enterprise Edition tooling allow you to write API¬†documents defining how web and mobile application HTTP data from¬†JSON workloads transforms into payloads for traditional CICS , IMS or WebSphere Application Server programs.
- CICS Interdependency Analyzer allowing you to collect runtime affinity and threadsafe data for live running production CICS programs
- CICS Performance Analyzer¬†drilling into¬†SMF data to report threshold¬†alerts, CPU, I/O and memory usage, as well as custom reports with profiling and key metric monitoring.
- CICS Deployment Assistant discovering your deployed z/OS subsystems and their relationships, as well as cloning CICS regions and CICS plexes
- CICS Configuration Manager¬†providing full life-cycle management, governance and audit capabilities for CICS definitions
- CICS Transaction Gateway¬† allowing connectivity from¬†numerous platforms to CICS workloads including Microsoft .NET applications
- Rational Team Concert¬†completing the devops family with its ability to plan, track, code, manage, develop and deploy large scale enterprise projects
Because these are all built as part of the release train and tested to be compatible with each other you can¬†create powerful stacks of software to use, as well as as envisage new scenarios where tooling enhancements would enable¬†you to become more productive and we can leverage the release train to provide more integration and optimization. ¬†The devops pipeline we have has been designed to allow us to respond to your¬†requests and feedback by refreshing the stack of software across the suite to deliver¬†the change wherever it is needed.
Please give us your feedback, let us know what we got right, what we got wrong, and what we can do to help continue to make you enjoy using the world’s most powerful IT platform. ¬†Please also let us know what other topics you’d like to read about in blog posts and what challenges you’re having with IBM tooling that we can address.