Computer method and apparatus maintains multiple versions of software
programs. Included are a data store of different portions of each version
and a generator coupled to the data store. The data store holds the
program portions in a base-exception hierarchy. According to user
command, the generator forms the desired program version by selecting a
base portion and exception portions from the different levels of the
hierarchy.