Physical manufacturers have been taking advantage of mass manufacturing ideas for a long time, increasing their productivity, cutting their costs, and ensuring the quality and uniformity of their products. Now, this idea is being applied to software production so the same benefits can be reaped in that field.
NASA’s Goddard Space Flight Center has developed the idea of a software product line that views software products that are substantially similar, or that have substantially similar content, as being different products in a line of products that the organization develops. For example, flight software for different missions can be viewed as a line of products that fulfills this purpose, with many of the products having similarities, or in extreme cases being very similar with a few specializations.
This method expands this view further and sees an evolving system, one that will likely run for a long period of time and have corrections, enhancements and changes made to it over a period of time, as essentially exhibiting a product line. More specifically, different versions or releases of the system are viewed as different “products” that are substantially similar. This method opens a new field of developing a complex system that is likely to involve many interacting components for development as a product line, which can be developed with state-of-the-art software engineering techniques.
This technology can be used in any large-scale software production, and for version control.