A suite of programs and utilities designed to simplify the development and maintenance of a large system. Most system building tools allow the user to specify the components that need to be brought together to generate a version of the system, and maintain information that shows how the content of any one component relies on other components. The tools also keep track of any alteration to any components. If, following alterations to system components, a new version of the system is generated, the tools will ensure that the latest version of each component is used and that the newly generated version is internally consistent.