Having just celebrated the US Thanksgiving holiday my stomach and my mind are feeling full. As Thanksgiving is well known for feasting on turkey, stuffing, potatoes, vegetables, pies and much more I am sure you can understand why I say my stomach is full. However, according to the History channel the first Thanksgiving celebration took place nearly 400 years ago when the Plymouth colonists and the Wampanoag Indians shared an autumn harvest feast. The colonists were thankful for the helpful teachings of the Indians which resulted in a successful harvest. Over the years the Thanksgiving holiday has become a time to spend with family and friends, for being thankful for what you have and for sharing with others. In general, as we approach the end of the calendar year it is a time for reflection which is why I say my mind is also full. Full of appreciation.
For a review of features delivered in Application Delivery Foundation for z/OS (ADFz) version 3.2 during the past year, please refer to the recent webinars titled ADFz : come feast from the smorgasbord – Part 1 and Part 2.
At IBM there is a spirit of research and innovation. In 2018 IBMers received over 9,000 patents marking the company’s 26th consecutive year of US. patent leadership. During 2019, the IBM Developer for z/OS (IDz) team has continued our research in the area of unit testing IBM Z applications. We collaborated with several Sponsor Users to understand their unit testing challenges and how the z/OS Automated Unit Testing Framework (zUnit) could be improved. The result is what I consider some truly exciting innovation. How exciting? So exciting that we couldn’t wait to share it, so we announced IDz version 14.2.1 back in October. Well, today I am happy to share with you the release of IDz version 14.2.1, which includes the new IBM z/OS Dynamic Test Runner for zUnit. The new Dynamic Test Runner can intercept calls made by user application programs to various subsystems or other programs and record details about those calls. Once the data is recorded, a test case can be generated using the values from the recorded data to run those same user application programs in batch, without the need for the original environment. There is no need to recompile, relink or rebind the application program. Additionally, either the test data or the user application programs can be modified and then rerun to help ensure they perform without adverse effects. The benefit of this is to allow the user to automate the unit testing process of online transactions. The resulting test cases can be run from IDz or from a Continuous Integration pipeline without the CICS region or Db2 instance being active. When developers create unit tests for their mainframe applications, bugs in their code can be discovered early in the development process. The sooner these bugs are discovered, the quicker they can be fixed. Unit testing not only improves the quality of code being delivered, but it also reduces waste by minimizing delays that typically occur due to hand-offs and re-work. In summary, zUnit provides developers more autonomy and immediate feedback, which can increase developer confidence.
In IDz version 14.1.6 we introduced COBOL CICS application support for zUnit. The feedback we received from our early adopters was that implementation contained too many limitations and restrictions. I am very thankful that we have built such a strong bond with our user community over the years because it was your feedback which lead to the redesigned zUnit CICS support in IDz 14.2.1. However, this does mean that any test cases created for COBOL CICS applications using IDz version 14.1.x will need to be regenerated with the IDz 14.2.1 client in order to use the IBM z/OS Dynamic Test Runner for zUnit. Test cases created for Batch applications remain unchanged.
The basic workflow for using IDz to create zUnit test cases also remains the same as in previous versions. However, we have made several enhancements to the user experience that we believe you will enjoy. For instance, the zUnit preferences are no longer located under the z/OS preferences category. zUnit has its own category in preferences making it easier to find. There is a new preference that allows you to choose whether the specified test case name prefix value replaces the characters at the beginning of the test case name or is inserted prior to the characters that begin the name. If you would like to review a test case without changing it, there is a new menu action that opens the test case entry editor in Browse mode. In addition, the test case entry editor contains new context menu actions when you right click, as well as a new toolbar button that can be used to show/hide system areas such as DFHEIBLK and SQLCA. Once a test case has been run, the runner results view has also been updated with a new menu action. This new action allows you to easily export the runner results to a PDF file.
If you missed the blog in September to introduce IDz version 14.2.0, where it was mentioned that we enhanced the Menu Manager feature to allow custom menu items that invoke Unix System Services commands and scripts, there was a follow on blog with step by step examples. In the new IDz 14.2.1 we have extended the USS action by also adding a new IBM Dependency Based Build (DBB) specific action. This action can be used to extend IDzEE with custom actions that execute DBB Groovy scripts. Another USS and DBB related enhancement is the new Automatic ASCII Conversion option available for use when executing IBM Z Open Automation Utilities commands. In addition we have added a few other improvements to the Menu Manager feature including:
- New input variables that make it easy to add controls for Browsing file systems
- Actions now appear higher in the context menu list than they did previously
- A new shortcut key (Ctrl+Alt+E) for accessing only your custom menu manager actions
While experienced IDz users understand that z/OS Projects are useful for organizing work by adding only the resources you need to work on at any one time, we received some feedback that new IDz users did not immediately understand this concept. In order to assist new users the z/OS Projects Welcome page has been updated in IDz 14.2.1 with links to helpful documentation topics. Also when no projects exist in the z/OS Projects view it may not have been intuitive for new users on how to proceed. To help these users in getting started, the following useful links have been provided to assist users with adding a project to the workspace:
Of course the best way for a new user to become familiar with IDz features is to participate in either our Instructor-led Training or Self-Paced Learning.
In addition to the enhancements mentioned already, IDz version 14.2.1 contains several more. A special thank you to the many users who have submitted Requests For Enhancement. We appreciate you taking the time to collaborate with us and we encourage you to continue to do so. Many of the ideas for enhancement listed below came from our ever growing user community. Thank you!
- Filter View support for COBOL and PL/I editors, this support was previously only available in LPEX
- Improved EBCDIC code page conversion check in COBOL and PL/I editors
- Output library field on DCLGEN wizard is now enabled for entry
- Program Control flow now supports Save image as PNG format, as well as SVG format
- Remove action has been renamed to Remove from Subproject for clarification
- Improved preprocessor performance
- Formatting support for UTF-8 source files
- IBM z/OS Debugger improvements
- PDF compare export option on Code Coverage results can show the coverage changes in the source
- Integration with IBM Engineering Workflow Management v7.0 (the new name for IBM Rational Team Concert)
In conclusion, I am very thankful that I am able to work with so many outstanding colleagues at IBM. I am also truly grateful for the collaboration with our Sponsor Users, and the engaging conversations with IBM Z application developers who use IBM Developer for z/OS every day. Your feedback allows us to focus on implementing features that will help you solve your business challenges. In addition to one on one discussions, the new year will bring more opportunities to get together at conferences such as SHARE and THINK, at GSE and IBM Z Technical University events, and at in-person and virtual user group meetings such as the North American DevOps for Enterprise Systems User Group or the IBM Z DevOps Village. If you feel that you, or your organization, are not “plugged in” and would like more information, please let me know.
Happy Holidays to all. Thank you and best wishes in the new year.