Spacecraft computer program development improvements to be utilized by MIT

1. Just for the record, I would like to record a list of program development improvement ideas which MIT plans to incorporate. This list was gleaned from discussions by Ed Copps, Fred Martin, and Alex Kosmala during the week of October 2, 1967.

a) Much more complete program structure design work will be done prior to program integration. This includes more precise definition of the program module interfaces. And I suppose things like allotment of computer memory.

b) Control of program constants will be exercised to insure their accuracy and to avoid duplication from one procedure into another.

c) In order to avoid the problem of erasable memory conflicts a panel is being established to manage the use of erasable memory.

d) MIT proposes to initiate a series of periodic internal program design reviews.

e) Approved program changes will be considered by MIT as they arrive from MSC but will be added into the flight program assemblies in blocks periodically as opposed to randomly as in the past.

f) Much tighter assembly control will be exercised with all program modifications being monitored and reviewed by a higher level of MIT management. Only those changes really necessary will be permitted. New assemblies will only be produced once a week as opposed to the much higher frequency hitherto.

g) Associated with assembly control, specific processors will be “sealed” internally in the assembly as they become operational as opposed to the current practice of putting the entire program under configuration control when all components are working.

h) It is my understanding that at present digital autopilots (DAP) are available for both the LM and command module. On the other hand, design improvements will probably be necessary on a fairly continuous basis. All modifications in the DAP’s will be made and checked out in some program other than the current flight program assembly used by the rest of the program development personnel. Modified DAP’s will only be added to this working, assembly when they are running properly.

i) Much more coordination and communication between the various groups involved in software development is essential. It is Martin’s intention to establish standing committees with periodic meetings for this purpose. These meetings will also be used for consideration and coordination of proposed changes.

j) Apparently, in the past development of program test plans has been carried out by a small group without much assistance, advice or coordination with other interested parties. Wider participation in this effort both at MIT and MSC is planned.

k) MIT has finally decided to utilize discrepancy reporting like we have requested for well over a year and which has recently proven to be of great value to them in the latter stages of the SUNDISK development. They intend to utilize this from the beginning on the remaining programs.

l) Associated with the discrepancy reporting, MIT will maintain an up-to-date operational constraint list. Obviously, one way in which discrepancies may be eliminated is by establishing work around procedures or operational constraints on program usage.

m) Steps are being taken to make sure that as problems are found and corrected in one major program these same flaws are corrected in the other programs (e.g., SUNDANCE and COLOSSUS).

n) Slow response in the exchange of data, particularly spacecraft characteristics, has delayed MIT previously. Steps are being taken at both MIT and MSC to provide faster response. When necessary, in lieu of answers from MSC, MIT proposes to state their assumptions and proceed ahead with program development to avoid delays of this type.

2. As you can see, nothing particularly startling here but I believe everyone would agree those are all good things to do, that is, they should improve the quality of the program itself and should certainly result in getting the job done faster. MIT has recently reorganized their personnel somewhat, hopefully in a way that will allow them to implement these ideas effectively.

Terms & Abbreviations

Copps, Ed

Member of the MIT Instrumentation Lab


Digital Autopilot.

E. Copps

see Copps, Ed

Erasable memory

The Apollo Guidance Computer had a small amount of "erasable memory" analogous to the RAM in a modern computer.


Lunar Module. Earlier it was known as the Lunar Excursion Module and abbreviated “LEM.” Even after the name change, it continued to be pronounced “lem.”


Massachussets Institute of Technology. In these memos, MIT is shorthand for the MIT Instrumentation Laboratory, created and led by avionics pioneer Charles Stark Draper. It is now known as the Charles Stark Draper Laboratory and became independent of MIT in 1973.


Manned Spacecraft Center. Now known as Johnson Space Center.