View Only

A personal trip down the Hursley and MQSeries memory lanes

By Mayur RAJA posted Tue December 05, 2023 03:46 AM

Since IBM MQ turned 30 in Dec 2023, I thought I'd take you on a personal trip down the Hursley and MQSeries memory lanes. I hope information in this article resonates with some of you, brings back good memories, and allows you to reflect on them fondly. 

A trip down the Hursley memory lane

After graduating from University, I arrived at Hursley Park in August 1987. I remember passing cows and sheep in the fields adjacent to the site before coming to a majestic looking Hursley House set in pristine kept grounds!

Hursley Lab was incredibly vibrant, with over 2000 people working on products like Customer Information Control System (CICS), Graphical Data Display Manager (GDDM), Db2, Storage, Development IT systems, PROFS (Professional Office System - a green screen diary, email, and document management system), Book Manager (IBM product manuals were formatted using Book Manager tags in those days), REXX, Software Engineering and Specification Languages, OS/2, Executive Customer Education, Employee Education, Monitor Testing, Scientific Research, Developer Tools, etc.

There were a lot of people on assignment from the US so there was a good mix of people and talent! People were highly specialized and significantly technical in their fields. I spent my first few years at IBM working with some amazingly talented people in CICS Development who were very willing to share their knowledge and make time to help others! The US assignees even taught some of us the rules of softball and baseball and, we even managed to beat them in a few matches! We shared some great moments together! 

Green screen 3270, or colour 3279, dumb terminals were the norm but, if you were lucky, you could get your hands on a large, orange screen monitor that could be divided into 4 terminal sessions! Sheer luxury! If you were even luckier, you could get an IBM PC with 16KB of RAM and a single (or dual) 5 ¼ inch floppy drive! To be able to save a file on a personal hard drive was awesome, and dual drives were the business because you could copy a file from one floppy disk to another! Desks were adorned with large telephones and yellow time cards referred to as "swiz or SWS cards". Yes, we all had to log our start and stop times on yellow cards that were collected at the end of the week for payroll purposes. Programs and dumps were printed, by centralized IBM 1403 line-printers, on green and white fan-fold paper of which there were stacks and stacks on everyone’s desks and cupboards. In some cases, it took several weeks for us to diagnose problems. What fun we used to have! To put things into perspective, the source code developed in the US, on an IBM System/360 mainframe, for the Apollo moon landing space craft measured almost 5 feet tall when printed and stacked. It must have been some feat for the developer to locate a bug in a line of code 3 feet down the stack :-) . 

There was a lovely library which housed daily newspapers, a large collection of books on technical subjects, and manuals for many IBM products. There was even an awesome, closed-off, quiet zone that was an ideal place where one could sit and solve tricky design or code issues!

Mornings and afternoons were blessed with the sound of the tea-trolley bell, with the cost of a cuppa being just 5 to 7 pence. Canteen food was very affordable, so folks often had breakfast, lunch, and supper at work! Many code issues were discussed and solved over supper! There were many celebratory events with free food and sometimes wine too! 

One could not help but admire the distinct charm of being able to work at IBM Hursley Park!

A trip down the MQSeries memory lane

In August 1991, two teams were being formed to develop a messaging product to run on IBM and non-IBM platforms. I was looking for a new challenge so I applied and was accepted as a developer on the MVS/ESA (previously called OS/360, OS/370, MVS and MVS/XA, and later called OS/390 and z/OS) platform team. A team was also being staffed to work on distributed platforms.

Product code names of Victory (Horatio Nelson's flagship at the Battle of Trafalgar on 21 October 1805) and Mayflower (the ship that carried the Pilgrims from England to Plymouth, Massachusetts, USA in 1620) were adopted by the MVS/ESA and distributed teams, respectively. Subsequent messaging related products adopted other ship names, for example the Mary Rose (one of Henry the VIII's war ships built in Portsmouth, England and which fought in battles against France and Scotland).

In the early days, the teams consisted of about 60 people in total, but this rapidly grew to about 60 people on the MVS/ESA platform and over 200 people on the VSE/ESA, OS/400, RISC or AIX/6000, OS/2, and System/88 platforms (and soon after the Microsoft Windows and Windows NT platforms). This included sales and marketing staff, managers, architects, developers, functional verification testers, systems testers, performance testers, authors, folks in product manufacture and distribution, and eventually Level 1, 2 and 3 Service Team members.

A draft specification document for a messaging product for the Finance Industry had been started which was being discussed in daily meetings. A few weeks into the project, a couple of very experienced architects arrived from the US. One to work with the distributed team and the other with the MVS/ESA team. Teams continued to work on the draft specification, but the assignees and other local architects soon realized that there would be more financial gain in writing a generalized specification that could be applied to all industries. In essence, a specification that provided a simple way for locally bound, client attached, and remote applications for any industry, to communicate and exchange data.

So, teams switched to defining a generalized specification which contained details of Queue Managers, Queues, Name Lists and Process objects, the Messaging API, MQSC Commands, Message Types, aspects of recovery and logging, buffering, security, trace, dumps, single and two-phase commit transactions, triggering, types of events and event messages, ways to perform messaging in CICS, IMS and Batch environments, specifics of the various IBM platforms, etc.

A specification was also being written to define the mechanism by which client applications could attach to a queue manager, and by which a local queue manager could communicate with a remote queue manager. This in turn introduced the concept of Distributed Queuing and Channel objects.

Teams started to write code as soon as workable specifications were available. Many long days and nights were spent in developing and testing the code, and in refining the specifications as teams started to gain a better understanding of how the messaging architecture should look.

Teams wrote a lot of new code for the MVS/ESA and distributed platforms. The MVS/ESA team divided work into Connection, Security, Lock, Message, Data, Buffer, and Recovery Manager component areas, the CICS, IMS and Batch adapters, and the ISPF Operations and Controls Panels. The MVS/ESA team also ported and modified existing code from DB2 for MVS/ESA to handle recovery, dump, and trace. A highly experienced research engineer from the US helped us with the recovery model on MVS/ESA. The distributed team divided work into similar functional areas but also had to deal with differences in architecture across multiple platforms.

It took both teams about two years to complete the initial versions of the products which were branded as IBM MQSeries!

As many customers were using non-IBM platforms like Microsoft Windows 3.1, Tandem NonStop (Guardian 90), DEC VAX/VMS, Stratus VOS, and DOS. IBM sales and marketing realized that for MQSeries to be successful, MQSeries had to have a presence on these platforms. So, the search was on for existing messaging products in the marketplace! A US based company called Systems Strategies Incorporated (SSI) was located which had messaging products on the above platforms. IBM formed a worldwide alliance with SSI and jointly enhanced and rebranded the SSI products as MQSeries ezBridge Transact messaging products, to join the MQSeries family of products. Sales and marketing material of the time clearly stated that the products were marketed by IBM but developed by IBM and SSI. So, within a short period of time, IBM had a messaging product with a significant platform coverage!

Support for other platforms like AT&T GIS UNIX, HP-UX, SINIX and DC/OSx, SunOS, Sun Solaris, SCO-Unix, Windows NT, Linux, etc., was added in subsequent years. A client version, which ran on multiple client platforms, was also introduced. Additionally, code for the MQSeries ezBridge Transact products was eventually replaced by common MQSeries code developed by IBM. Support on some of the UNIX type platforms has over the years been consolidated or dropped because some early UNIX platforms are either no longer being used extensively by customers, or because they no longer exist.

In October 1992, the first formal 5-day MQSeries education class was delivered in Dallas, Texas, USA to 9 vendors and 5 IBMers based in the US. The intent of the class was to allow vendors to start to think about and plan for the types of tools they may want to develop for MQSeries. The class was a real success and subsequently led to many more classes being delivered to customers, business partners and vendors throughout the world. A few developers even took on three-monthly stints in the US to help customers, business partners and vendors get on-boarded with MQSeries. It essentially meant living out of a suitcase, moving from customer to customer and traveling across state to state, but it was a great way to see parts of the US!

IBM MQSeries V1 was officially delivered and launched into the marketplace in December 1993! It was a tremendous achievement for the teams and everyone received a small monetary award for their efforts! To be honest, the monetary amount did not matter, what was important was that the entire teams were recognized! No one felt left out, and after all, we were all one big family! Incidentally, the above photos of the ships are taken from the actual framed prints that were presented to the respective teams.

There was an immense buzz in the marketplace and MQSeries immediately generated a great deal of customer interest. Sales and Marketing teams distributed flyers and commenced MQSeries Roadshows in the US (playing to the sound of Queen’s “A Kind of Magic”), Europe and Asia.

Incidentally, the original marketing message for MQSeries was going to be “guarantees delivery of messages”. However, following discussions with IBM Legal, this was changed to “assures delivery of messages”. Since circumstances related to disk or site failures are beyond the control of MQSeries, MQSeries could not claim to guarantee delivery of messages. Some Sales and Marketing material with the original marketing message had to be replaced!

MQSeries V1 for MVS/ESA had implementations of the CICS Mover to perform distributed queuing between two CICS regions on one or two MVS/ESA LPARs. Between 1994 and 1996, Distributed Queuing, a server-to-server channel architecture to deliver messages across systems, was implemented on the distributed and MVS/ESA platforms. Some elements of the implementation were common across all platforms, while others were platform specific. On the MVS/ESA platform, this removed the dependency on CICS (and hence was also referred to as the non-CICS mover) and also provided a consistent way to connect with MQSeries Queue Managers on distributed platforms. On MVS/ESA, this function was delivered in MQSeries V1.1.4.

In 1995, support was also added for the MQSeries link for Lotus Notes, which provided Lotus Notes the ability to access data on non-Notes systems, and the MQSeries link for SAP R/3, which allowed business applications running under SAP R/3 to connect with applications in non-SAP R/3 environments.

Over the next few years, as customers started to adopt and roll MQSeries out into production, many success stories were reported. Just as we were, the early adopters of MQSeries were incredibly proud of their successes and, as you will see from the number of flyers below, were very keen to share their successes with everyone. With agreement from customers, IBM Sales and Marketing produced single-page, double-sided, success story flyers. Flyers that subsequently gave hundreds of customers throughout the world reference points as they considered adopting MQSeries. There was a great deal of frenzy in the market place and, if customers had not yet on-boarded with MQSeries, they felt they were missing out. These were certainly exciting times for us in IBM!

Of course, the messaging landscapes of these customers will have undoubtedly now changed to accommodate and exploit new product features that have been introduced over the years.

By 1996, MQSeries for MVS/ESA had been installed at customer data centers in 27 different countries and, in February 1997, MQSeries for MVS/ESA exceeded the 1000 license barrier. This was a tremendous achievement for the Victory team and this milestone became known as the 1K Victory!

Over the past 30 years, 1000's of customers and MQ subject matter experts have presented at Sales and Marketing, and Technical conferences. MQSeries has been the star of the show at many of these events and I am sure it will continue to be a "Super Star" for many more years to come yet! MQ has won many industry awards over the years and some of the early awards and successes were highlighted in the 'Magazine for MQSeries'. More recently, in 2023, MQ was voted the Top Rated product by Trust Radius! Customers from a wide spectrum of industries (stock and investment markets, banking and finance, insurance, airlines, health, leisure, motor, government, retail, railways, telecommunications, etc.) use and depend on MQ daily. MQ essentially underpins the world’s most critical systems and the world simply cannot operate without MQ!

As new product enhancements were made in subsequent years, including support for MQSeries on the Windows NT platform, Publish/Subscribe, Message Brokering and the MQ Integrator to integrate business applications, and support for MQSeries Workflow to accelerate process flow and improve work group productivity, further publications were issued to describe these new features.

Another interesting and useful publication from the past was a monthly (or maybe quarterly) MQ update booklet which was published by a company called Xephon Inc., and in which customers, vendors, business partners, and IBMers contributed articles to share their experiences of using IBM MQ features.

Over the years, MQSeries has changed brand names from IBM MQSeries to IBM MQM to IBM WebSphere MQ to IBM MQ. Many talented individuals have played, and continue to play, a significant part in the architecture, evolution, enhancement, development, and test of features on IBM MQ. There are far too many features and enhancements to list them all here. Some key enhancements are listed below, in no specific order, but they are all documented in the MQ Docs, Technical presentations about MQ, and in other IBM publications.

  • MQ Explorer
  • Queue Manager Clusters and Uniform Clusters
  • Advanced Message Security (AMS)
  • MQ Publish Subscribe
  • LU6.2 and TCP/IP support for Distributed Queuing Channels
  • SSL and TLS security for MQ channels
  • MQ Internet Pass-Thru (MQIPT)
  • Cryptographic Hardware support
  • Support for JMS and Java applications
  • The MQ Resource Adapter in WebSphere Application Server (WAS) to support MDB and EJB applications
  • WAS Service Integration Bus (SIB) and links to MQ
  • Managed File Transfer via MQ
  • The MQ Appliance 
  • MQ in containers
  • MQ on IBM and non-IBM Clouds
  • Streaming Queues
  • RDQM
  • Native HA
  • MQ in OpenShift, managed via Operators
  • Helm Charts for Kubernetes
  • MQ Console
  • The Admin and Messaging REST APIs
  • MQ Kafka Connectors
  • The Message Broker,  now called App Connect Enterprise (ACE) or just App Connect
  • Queue Replication (QREP) solution implemented by the Db2 team to replicate Db2 updates
  • The CICS and IMS Bridges on z/OS
  • Queue Sharing Groups, Shared Queues, Shared Channels and Intra Group Queuing , all of which exploit the z/OS Coupling Faclity (CF)
  • Enhancements to SMF data on z/OS including Queue level data
  • AT-TLS support for z/OS

During the last 30 years, the MQ teams have delivered a significant number of Long Term Support (LTS) and Continuous Delivery (CD) releases of the products. The latest versions are IBM MQ V9.3.0 LTS and IBM MQ V9.3.4 CD.

Currently supported releases of IBM MQ can be run on many IBM and non-IBM platforms, on hardware appliances, on IBM and non-IBM Cloud environments, and in containers.

IBM MQ would not have been successful without the sheer dedication and hard work of all the IBM staff who have worked on the MQ family of products over the years, customers who have helped refine requirements to ensure implementation of function that benefits the majority, and business partners and vendors that have provided additional tools that run with IBM MQ to make life easier for customers. On behalf of the entire IBM MQ organization, I would like to extend my sincere appreciation and thanks to everyone!

Let’s look forward to many more years of MQ success!

Mayur Raja (MQ for z/OS Development)




Mon January 15, 2024 07:05 AM

Hi Steve,

Apologies for the delay in my response, I had been out of the office. 

You are welcome and I am glad it brought back fond memories. 

BTW, I also remember that fast (and scary :-) ) ride you gave me in your racing green, MG sports car !

We did some great work in those days and had a lot of fun !

Best Wishes .. Mayur 

Thu December 28, 2023 11:11 AM

Mayur, thanks for the trip back to 1987. Fond memories. Cheers Steve Baker