The year is 2014, many years after finally retiring from the work-a-day world. I have hesitated to write about my work on IBM's Distributed Data Management Architecture these past 22+ years because it was such an intense experience that lasted for so many years. Now, after enough time for reflection, I can make sense of this experience.
The first version of this memoir contained a lot of technical details about DDM Architecture: what were its goals, how did it evolve over time, what IBM products were developed, who were the key players, and so forth. I had to do a bit of research, some of which involved finding references to other IBM software architecture efforts. I found that Wikipedia was a useful source, at least at a high level. I also noticed that there was no Wikipedia article on DDM, and that was intolerable to me, given the amount of effort the DDM architecture and product development teams had expended on it. So, I took my memoir, reworked it to make it less personal, and greatly extended it as a full-blown article. (See IBM Distributed Data Management Architecture.) This memoir is now primarily a personal account of my work on DDM architecture. It also links to a variety of other DDM memoirs.
If you've read about the
During the first year, I had two key tasks; the first was to sell the idea of DDM architecture to someone in IBM who would commit to developing DDM products. John had me flying all over the country pitching DDM to the various IBM system houses, to executives, to research groups and even to university computer science programs. There was solid agreement that something like DDM was needed, but no one would commit to implementing it; the timing just wasn't right. Actually, we did have one client , but what they really wanted was not what DDM was all about. (See
My second task that year was to design a general framework in which a variety of distributed data services could be included. At this point, I didn't know what specific services would be wanted, but I did know that the abstract approach of OSI FTAM, on which the Golden Gate version of DDM was based, was not acceptable. I settled on an object-oriented design that incorporated ideas from the Smalltalk programming language (See
The first level, or version, of DDM architecture supported the record-oriented file systems of the System/36, the System/38 and CICS VSAM. Ken Lawrence from the System/36 had convinced me that the straightforward System/36 file system would be a good starting point, which it proved to be when it was easily enhanced to meet System/38 requirements. Rick Sanders was a crucial colleague in this effort; he handled communication, security and concurrency issues as I worked on file and access method designs.
DDM level 1 was published in 1986. Ken Lawrence received an Outstanding Technical Achievement Award, Rick Sanders received an Outstanding Contribution Award, and I received a coveted Outstanding Innovation Award, all with nice bonuses.
The second level of DDM added support for the hierarchical directories and stream-oriented files typical of PC/DOS and Unix systems. Jan Fisher and Sunil Gaitonde had joined the architecture team and did most of the design work in these areas. DDM level 2 was published in 1988.
Meanwhile, Sanders and I participated in the design of IBM's Distributed Relational Database Architecture (DRDA.) (See
DDM level 3 was published in 1990, at the same time as DRDA was announced. Rick received a second Outstanding Achievement Award and I received a second Outstanding Innovation Award.
My primary involvement in DDM level 4 was in the definition of a Data Description and Conversion (DD&C) addition to DDM for the Distributed File Management (DFM) mainframe project. (See
Other DFM requirements were handled by Jan Fisher and Sunil Gaitonde. DDM level 3 was published in 1990.
Level 5 consisted of DDM enhancements in support of DRDA and PC/DOS libraries. These, too, were handled by Jan Fisher and Sunil Gaitonde. DDM level 5 was never formally published.
By that time, I had left the DDM architecture team. Throughout my years of working on various aspects of DDM Architecture, I viewed my role as being purely technical and paid little attention to internal IBM politics. This attitude generally worked well, but it worked against me in a very personal way.
I began work on DDM in 1982 as an Advisory Programmer, and in 1990 at the end of my work on DDM I was still at the same level. This was in spite of having received two Outstanding Innovation Awards, published three major articles in the IBM Systems Journal, received two US patents, and level one "walking on water" appraisals five years in a row. To put it mildly, I believed I deserved a promotion to Senior Programmer. My manager agreed but he was not able to convince Rochester lab managers who preferred promoting their own employees; at least, that was the excuse I was given. Finally, I went to see Jim Flynn, a third level manager in the lab, who was sympathetic. He investigated my situation and interviewed many of the people I had worked with on DDM. A week later, he said that I would get my promotion, but only if I left the DDM group and returned to work in the Rochester lab.
Great, I was pretty tired of DDM anyway. The only problem was that there really wasn't work available for another Senior Programmer in the lab. I was assigned to an Advanced Architecture department (essentially a holding pen for excess senior technical employees) and spent the next year struggling to find work appropriate to my talents and abilities. Frustrated, I took an opportunity for early retirement from IBM. And so ended my years of work on DDM and my years as an IBM employee. But hey, I left as a Senior Programmer!
In subsequent years of working as a consultant, I found that this mattered very little to anyone outside of IBM.
Désolé, pas encore traduit.