216
All af this must be done using the straightforward syntax
described earlier. The operator/analusts CANNOT be expected
to slip in and out of the user-interface handler to the
operating—system utilities and direct application program
control.
THIS MEANS THAT EVERY KEY THAT THE OPERATOR/ANALYST TOUCHES
WILL APPEAR TO BE INGESTED AND HANDLED BY ONE AND ONLY ONE
PROGRAM. If you want to avoid serious maintenance problems,
I recommend that there be, in fact. only one interface
program.
6. 7: HISTORY LOGGING
HISTORY LOGGING capability should include: turning it. off
and on. deleting it and printing it. The log should include
time stamps for the purpose of execution timing: especially
in AZ systems. If your system will provide the sort of
procedural control that I have already described, it is not
necessary that the log file actually be an executable entity
in the manner of journal files.
6. 8: ERROR HANDLING
ERROR HANDLING is probably the most difficult aspect of the
user interface. The Teason for this escapes many
non-programmenrs, but it is due to the fact that there are
several fundamentally distinct kinds of errors and we do not
seem able to handle all of them in the same manner, although
we should try to make it appear that way, if we can.
6.8. 1 HARDWARE ERRORS. The user interface handler won't
know about peripheral hardware other than disk and terminal.
although the application package hosted by the interface
might include exercise and diagnostic programs specific to
displaus, plotters, digitizers, and film recorders,
&.8. 2 OPERATING SYSTEM ERRORS. The user interface handler
should be designed to make the operating sustem transparent.
Operating system errors should not show up at this level.
If they occur during the execution of an application
program, they should be treated as detectable programmer
errors.
&. 8 3 DETECTABLE PROGRAMMER ERRORS. In the case ne
detectable programmer errors, the application package error
handler must produce a message (preferably hardcopy) that
states enough, succinct information to enable the
maintenance group (original supplier?) to solve the problem.