Object Oriented Modeling
It started with the August 1981 BYTE magazine issue on Smalltalk.
I was looking for new industrial applications of computer graphics. The annual ACM Siggraph<ref>ACM is the Association for Computing Machinery. SIGGRAPH is the Special Interest Group in Computer Graphics.</ref> conference is a stimulating event that is the premier venue for publishing computer graphics research. I started attending the Conference in 1979. Animation was a big focus of the Conference.
My job in the central computer group at GE Research was exciting and stimulating, but I was working on other people's projects. I had a great relationship with the groups I was supporting. Although I had to bill every hour to a project number, I was able to meet my customers needs with some time to spare. I used the extra time and after hours to explore research areas and work on generic solutions to problems. My long term goal was to establish a computer graphics research group.
I started to think about animation applications for the GE businesses and for our research. As I recall, the BYTE article gave a good introduction to Smalltalk, the object-oriented language developed at Xerox's Palo Alto Research Center (PARC). I also recall a paper presented at Siggraph in 1982 by Craig Reynolds. Craig was animating flocking behavior of birds and built an object-oriented system that used objects with names like actors, cameras and lights. I sat down and in a few days I came up with a design for an animation system that had actors, cameras, lights, models, etc. At the same time we began a small project at Rensselaer Polytechnic Institute in computer animation. Mike Wozny had just been recruited to start a computer graphics and geometric modelling center at RPI. Mike was looking for industrial affiliates to support research. At this time, I had been working in graphics for about 15 years. I had a good relationship with RPI and gave an occasional seminar there. I saw an opportunity to bounce my OO ideas off some graduate students that were already doing high quality animations. We gave RPI about $25k and I started meeting one day a week with Wozny's graphics group. Phil Getto, Dan McLachlan and Dave Breen were the most frequent attendees. With their inputs, I designed a set of objects and a language based on Smalltalk. I called the system Oscar, the Object-Oriented Scene Animator. This was just a design at this point. I wrote a paper describing the system.
Early in 1984, we were expanding the graphics group. There were only 5 or 6 of us doing graphics. We hired a Russian mathematician, Boris Yamrom, who was working for an oil company in Texas. Boris' first assignment was to read and comment on my Oscar design. He was very thorough and we refined the design and language. We also had an STP assigned to our group. Michelle Berry was a bright young computer scientist in the Software Technology training program (STP). STP's rotated on 3 yearly assignments in the lab while they worked for an MS at RPI. Boris, Michelle and I began implementing the design in C. In about 4 months we had a usable system. We created our first animations.
We wrote a paper for the annual GE Software Engineering Conference. This event was held each year in early spring in at the Hilton in Daytona Beach, Florida. The event was well attended by software engineers from throughout the company. It was a great place for GE engineers to exchange ideas. We made a 16mm movie for the talk. I won the best paper award. The prize was a GE television set. Jim Rumbaugh also gave a talk on DSM, the data structure manager. After I won the best paper, Jim was anxious to learn more about this new object-oriented stuff. He dug into it with a passion. Over the next few years, Jim and others refined the fairly simple ideas we used to design Oscar into a rich modelling technique called OMT, the Object Modeling Technique. This initial work motivated us to write the text "Object-Oriented Modeling and Design." Along the way we changed the name of Oscar to LYMB for Lorensen, Yamrom, McLachlan and Barry. In 1991 LYMB was recognized by ComputerWorld for Best Implementation of a Reusable Development Environment - LYMB.