Sally Shlaer


Sally Shlaer was an American mathematician, software engineer and methodologist, known as co-developer of the 1980s Shlaer–Mellor method for software development.

Biography

Born in Cleveland, Ohio, Shlaer received a BS in Mathematics in 1960 from Stanford University and started a graduate study at the Australian National University.
At Stanford Shlaer had started programming in Fortran and assembler. In 1965 she started as a software engineer at Los Alamos National Laboratory. In 1977 she became project manager in software development at Lawrence Berkeley Laboratory, where she guided the development of a new Integrated Control System for the Bay Area Rapid Transit System.
At Lawrence Berkeley, Laboratory Shlaer met Stephen J. Mellor, with whom she developed the Shlaer–Mellor method for software development. In 1985 together they founded the software development firm Project Technology Inc. Shlaer was also a Fellows of the Association for Computing Machinery.

Work

Software engineering

Shlaer started her software engineering career at Los Alamos National Laboratory as a programmer. She designed and implemented an operating system to operate an electron accelerator to work in real time, and this project became her masterpiece.
At Lawrence Berkeley Laboratory, she led a team of software developers to build a new control system for the subway of the Bay Area Rapid Transit system. The existing control system software was considered impossible to continue using, making replacement necessary. Working with Steve Mellor, they replaced the original Fortran and assembly language code with new code, going from seventy thousand lines to two thousand. This analysis has since been called "legendary".

Shlaer–Mellor method

In the developing of a new control system for the Bay Area Rapid Transit, Shlaer and Mellor sought to regulate mechanisms of software development and began to design new methods of project management. This resulted in the development of the Shlaer–Mellor method, which in the new millennium has evolved into Executable UML.

Publications

Articles, a selection: