Douglas Taylor "Doug" Ross (21 December 1929 – 31 January 2007) was an American computer scientist pioneer, and chairman of SofTech, Inc. He is most famous for originating the term CAD for computer-aided design, and is considered to be the father of Automatically Programmed Tools (APT), a programming language to drive numerical control in manufacturing.

Ross also made foundational contributions to data structures and systems modeling. Beginning in the late 1950s, he developed Plex, an early record-like data structure featuring linkage members and subroutines that influenced Ivan Sutherland's Sketchpad and early concepts of abstract data types. He later invented the Structured Analysis and Design Technique (SADT), which became the basis for the IDEF0 modeling standard. In his later years, Ross expanded his work on Plex from a technical data model into a broader pseudophilosophy of problem-solving.

Biography Ross was born in China, where his parents both worked as medical missionaries, and he then grew up in the United States in Canandaigua, New York. He received a Bachelor of Science (B.Sc.) cum laude in mathematics from Oberlin College in 1951, and a Master of Science (M.Sc.) in electrical engineering from the Massachusetts Institute of Technology (MIT) in 1954. Afterward, he began but didn't finish his Ph.D., at MIT due to his pressing work as head of MIT's Computer Applications Group.

In the 1950s, he participated in the MIT Whirlwind I computer project. In 1969, Ross founded SofTech, Inc., which began as an early supplier of custom compilers for the United States Department of Defense (DoD) for the languages JOVIAL, Ada and Pascal. Ross lectured at MIT Electrical Engineering and Computer Science Department and was chairman emeritus. He retired at Softech, having served as the company's president from 1969 to 1975, when he became chairman of the board of directors.

Among his many honors are the Joseph Marie Jacquard Memorial Award from the Numerical Control Society, in 1975, and the Distinguished Contributions Award from the Society of Manufacturing Engineers in 1980, and Honorary Engineer of the Year Award from the San Fernando Valley Engineer's Council, 1981. The MIT Department of Electrical Engineering and Computer Science named after him the Douglas T. Ross Career Development Associate Professor of Software Development. The D.T.Ross Medal Award of the Berliner Kreis Scientific Forum for Product Development of the WiGeP Academic Society of Product Development Berliner Kreis & WGMK was named in his honor.

Work Ross contributed to the MIT Whirlwind I computer project, which was the first to display real-time text and graphics. Many consider him to be the father of Automatically Programmed Tools (APT), the language that drives numerical control in manufacturing. Also he originated the term CAD for computer-aided design.

MIT Whirlwind project Ross came to MIT in the fall of 1951 as a teaching assistant in the mathematics department. His wife, Pat, was a "computer banging away on a Marchant calculator" at Lincoln Laboratory before it officially took over the Whirlwind I computer. Her group used the Servomechanisms Labs analog correlation computer, built by Norbert Wiener. It had ball-and-disk integrators and arms used to hand trace strip chart curves of radar noise data. When the machine was in use, variables in equations were represented by rotations in its shafts. These were connected with mechanical pens which plot an accurate curve worked out by the shafts continuous movement. Interpreted correctly, this curve gave a graphic solution to the problem. This initiated Ross's entry to the Servo Lab with a summer job in June 1952 in the field of airborne fire-control system evaluation and power density spectra analyses.

The first programming language Ross designed was one in which the computer was a group of people, six or eight part-time students. It was suggested that Ross could use Whirlwind in his work. Whirlwind at that time had exactly one kilobyte (k, 1024 words) of 16-bit memory. He taught himself to program it in the summer of 1952. His masters thesis related to Computational Techniques for Fourier Transformation.

Automatically Programmed Tool He worked on numerous projects around the Whirlwind secret room of the Cape Cod System SAGE air defense system and at the Eglin Air Force Base ERA 1103. Around 1954, Ross wrote the first hand-drawn graphics input program to a computer. He stated it was "One of the few programs that I ever wrote that worked the first time" The Air Force was interested in continuing beyond MIT's Numerical Control Projects objective of standardizing the numerical control of machine tools.

Starting in 1956, MIT had a contract for a new program in numerical control, this time emphasizing automatic programming for three-dimensional parts to be produced by 3- and 5-axis machine tools. Ross stated his work with radar vector handling led naturally to his defining tool paths as space curves rather than points in APT II, and allowed him to conceptualize their realization in a machine tool's rectilinear framework. The Servo Lab received Air Force sponsorship for numerical control hardware, software, and adaptive control, followed by computer-aided design, computer graphics hardware and software, and software engineering and software technology, from 1951. This continued for almost 20 years. In 1957 the last of Ross's original three research assistants, Sam Matsa, left for IBM to develop AUTOPROMT, a three-dimensional APT derivative, and later (1967) co-founded, with Andy Van Dam, the ACM SICGRAPH.

The APT project largely finished in February 1959. It had the copyright status of works by the federal government of the United States, and thus was released into the public domain.Douglas T. Ross. APT System Volume 1 General Description of the APT System, 1959.D. T. Ross CBI oral history http://conservancy.umn.edu/handle/107611 The legacy of this work can be found in next generation NC programs of the 21st century.

Computer-aided design At the conclusion of APT I, Ross and John Francis Reintjes were interviewed for MIT science reporter television by Robert S. Woodbury. There was considerable public interest in the increasing sophistication of numerically controlled machine tools. The interview is illustrative of Ross's long stated belief in the graphics potential of the computer. He showed the audience a photograph of a vector sweep image from a display scope in the form of a Disney cartoon character coupled in a coordinate space with a canonical gnomon.

The next few years would see the completing of APT's influential Arithmetic Elements and then the broad collaboration pioneered in the APT project was repeated in building the computer-aided design system named Automated Engineering Design (AED). Ross sometimes called it informally The Art of Engineering Design or ALGOL Extended for Design.

Early industry practitioners of computer aided drafting and manufacturing visited MIT in formal exchanges of the developing technologies. Ross organized many standards making conferences for the American National Standards Institute (ANSI) and Business Equipment Manufacturers Association (BEMA, renamed Information Technology Industry Council), solidifying his place as a touchstone in any future history of CAD. Work done on IBM 709 and TX-2. The next decade brought a refining of his philosophy of system design. A personal note 2.5.3 (page 64). He was a founding member of Society for Industrial and Applied Mathematics (SIAM).

MIT's electrical engineering and computer science He was involved with developing international standards in programming and informatics, as an early active participant in the International Federation for Information Processing (IFIP). He was a member of IFIP Working Group 2.1 on Algorithmic Languages and Calculi, which specified, maintains, and supports the programming languages ALGOL 60 and ALGOL 68. In 1968, Ross taught what he suggested was the world's first software engineering course at MIT. He participated in the foundational NATO Software Engineering Conference in Garmisch, Germany, 7–11 October 1968. Many MIT project users built their systems on AED. Post Assembly revisions of Jay Wright Forrester's famous Dynamo feedback-modeling, System Dynamics simulation language were written in AED-0, Ross's extended version of ALGOL 60 and used into the 1980s.

Ross wrote the only ALGOL X compiler known to have existed, with the AED-0 system.

SofTech's work on airborne and other instrumentation systems involved building software development tools. By the late 70's microprocessors like the 8086 were starting to be used for these embedded systems. The University of California at San Diego Pascal System (UCSD p-System, see UCSD Pascal) was developed in 1978 to provide students with a common operating system to use on various machines like the PDP-11 minicomputer. Versions of p-System were freely exchanged between interested users. The p-System was brought to Ross's attention by a developer at their San Diego branch [who had an Apple I computer]. Ross visited UCSD and was smitten by a college operation building a system he recognized as kindred to his AED efforts. SofTech licensed the p-System and established a Microsystems subsidiary in 1979. SofTech's compiling, dynamic loading, and linking tools helped make the p-System a powerful development environment. UCSD p-System was used on IBM Personal Computer, Apple II, and other Zilog Z80, MOS Technology 6502, Motorola 68000 based machines. Ross later bought the PDP-11 based Terak 8510/a "graphics workhorse" computer of Ken Bowles which now resides in the Computer History Museum collections.

Structured analysis and design technique

As the inventor of structured analysis and design technique (SADT), Ross was an early developer of structured analysis methods. During the 1970s, along with other contributors from SofTech, Inc., Ross helped develop SADT into the IDEF0 method for the Air Force's Integrated Computer-Aided Manufacturing (ICAM) program's IDEF suite of analysis and design methods.

He was a member of the Institute of Electrical and Electronics Engineers (IEEE) IDEF0 Working Group which produced the IEEE Icam DEFinition for Function Modeling (IDEF0) standard in 1998. The IEEE IDEF0 standard superseded FIPS PUB 183, which was retired in 2002.

Plex

Beginning in the late 1950s at the MIT Servomechanisms Laboratory, Ross developed a record-like data structure he called a plex. Introduced in his 1961 paper "A Generalized Technique for Symbol Manipulation and Numerical Calculation", a plex consisted of fixed-size blocks containing data members, linkage members (pointers to other plexes), flag fields, and pointers to subroutines. Ross presented the plex as an alternative to the two-element list cell of LISP, arguing that entities requiring more than two components were better represented directly than as trees of two-component cells.

Ivan Sutherland adopted the plex for the data representation in his 1963 Sketchpad thesis, in which he credited "members of the [MIT] Electronic Systems Laboratory, notably Douglas Ross" for "help and advice on n-component elements." Alan Kay later cited Sketchpad as one of the principal influences on his design of Smalltalk and his coining of the term object-oriented programming.