Software Must Move! A Description of the Software Assembly Line.
This paper describes a set of tools for automating and controlling the development and maintenance of software systems. The mental model is a software assembly line. Program design and construction take place at individual programmer workstations. Integration of individual software components takes place at subsequent stations on the assembly line. Software is moved automatically along the assembly line toward final packaging. Software under construction or maintenance is divided into packages. Each package of software is composed of a recipe and ingredients. Some new terms are introduced to describe the ingredients. The recipe specifies how ingredients are transformed into products. The benefits of the Software Assembly Line for development, maintenance, and management of large-scale computer systems are explained.