how to design a system in which modules can be changed on the fly
In a system made up of many modules, each managing its own peculiar types of data structures, it is often necessary to update one of the modules so as to provide new features or an improvement in the internal organization. If the interface to the module is unchanged or merely augmented the programs which interact with the module need not be changed. If the system can be brought to an orderly halt and if the module does not manage permanent data structures, it will merely be necessary to recompile the modified module, relink the system, stop the old system, and install the new one. If the module does manage permanent data structures which must be modified and the system is one which is expected to continue operation throughout the change, the problem is more difficult, but it can be solved. This paper discusses a solution.
design systems module change management types data structures update feature intern organization interfaces program install paper capabilities abstract data types updating data representations computer utilities