In a normal data processing operation, a deficient card reader, for example, will sooner or later be discovered because it introduces inconsistencies in results.
The case is different in a program library: the deficient card reader may introduce an undetected error in hundreds of copies of a program, even if a control run to match the resulting tape with the card deck has been made. The error will be discovered occasionally in a remote location and perhaps months later. The case is worsened if one of the faulty tapes becomes the master of a sublibrary.
Program distribution and maintenance requires quite a few skills in a great variety of specialized fields: programming and machine operation, file organization, wrapping and packing, shipping procedures, customs and postage regulations, reproducing and printing, together with cost evaluation and financial foresight.
Among the conditions required to smooth this thorny road, standardization (media) and formalization (documentation) are the keys to success.
Unfortunately, programmers are intellectually not prepared to recognize the problem.
Awareness of their responsibilities in the field of distribution should be a part of their basic educational training.
Software distribution is a challenge for the data processing community, and its response to it will result in either loss of energy or continuous growth.«
Galler: One simple means of checking the correct functioning of the replication and distribution process would be ‘echo-checking’. In other words, the group that produces the system that is handed to the Program Library for replication and distribution should itself be a customer of the library.
6.2.2. DISTRIBUTION
Software distribution per se was only touched on briefly in the conference.
Köhler: (from Maintenance and distribution of programs)
»Program distribution as a whole is a problem of organization only. In a well organized and efficiently working distribution center each request should be handled within 5 to 8 hours after it has been received. However, it is a recognized fact that a distribution center, besides receiving requests for programs, also has to deal with queries. In order to answer such enquiries properly the availability of qualified personnel must be guaranteed. Unfortunately documentation is not always perfect, even if there are the best of intentions. The user will appreciate it if he can always get his advice over the telephone.
Such service, however, can generally be rendered only by computer manufacturers, big software groups and perhaps some larger user groups.
As mentioned above, the distribution center is well advised to ask for the preparation of special forms or punched cards when clients wish to request programs, etc. In doing so it educates the user to make his request complete and, furthermore, creates the basis for automation in the distribution system.
When preparing order facilities for the user by way of special forms and prepunched cards, provision should also be made for a users request on the method of delivery. Upon such delivery requests may depend whether a card-pack will arrive at its destination within hours or within days.«
Nash: The delay between the release of a system and its arrival at a user’s installation is a serious problem. Replication and shipping cause part of the delay, but the time taken to perform system integration is also a problem. We are shipping systems, not components, and the time to perform system integration depends on the number of interactions among components, which multiplies very fast as the number of components increases.
Randell: I wonder how the problems of software distribution are divided up among the three categories ‘initial release’, ‘corrections to errors’, and ‘extensions’. I would suspect that the second category has the most, and that efforts to reduce the problems of program distribution should concentrate on this area.
Dijkstra: The dissemination of knowledge is of obvious value — the massive dissemination of error-loaded software is frightening.