20.07.2013 Views

computing lives - FTP Directory Listing

computing lives - FTP Directory Listing

computing lives - FTP Directory Listing

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

A<br />

Computer Previous Page | Contents | Zoom in | Zoom out | Front Cover | Search Issue | Next Page M S BE<br />

aG<br />

F<br />

32 & 16 YEARS AGO<br />

APRIL 1978<br />

INTERNATIONAL DATA (p. 6) “AFIPS has named a panel<br />

of US experts to study foreign countries’ activities which<br />

restrict the international exchange of information. The<br />

panel is also expected to respond to the State Department’s<br />

position paper, Protecting Privacy in International<br />

Data Processing.”<br />

SOFTWARE QUALITY (p. 10) “For computer software<br />

systems, quality appears to be a characteristic that can<br />

be neither built in with assurance at system creation<br />

time nor retrofitted with certainty after a product is<br />

in use. Apart from the issues of logistics (copying and<br />

distributing software) there appears to be a continuing<br />

need to demonstrate some minimum level of quality in<br />

typical wide-use software systems. At the same time<br />

this appears to be impossible to accomplish: the best<br />

designed systems have had errors revealed many years<br />

after introduction, and several programs that had been<br />

publicly ‘proved correct’ contained outright mistakes!”<br />

SOFTWARE REVALIDATION (p. 14) “The problems of revalidating<br />

software following maintenance have received<br />

little attention, yet typically 70 percent of the effort<br />

expended on software occurs as program maintenance.<br />

There are two reasons to perform maintenance on a<br />

software system: to correct a problem or to modify the<br />

capabilities of the system. Revalidation must verify the<br />

corrected or new capability, and also verify that no other<br />

capability of the system has been adversely affected<br />

by the modification. Revalidation is facilitated by good<br />

documentation and a system structure in which functions<br />

are localized to well-defined modules.”<br />

ERROR DETECTION (p. 25) “It is well known that one<br />

cannot find all the errors in a program simply by testing<br />

it for a set of input data. Nevertheless, program testing is<br />

the most commonly used technique for error detection<br />

in today’s software industry. Consequently, the problem<br />

of finding a program test method with increased errordetection<br />

capability has received considerable attention<br />

in the field of software research.<br />

“There appear to be two major approaches to this problem.<br />

One is to find better criteria for test-case selection. The<br />

other is to find a way to obtain additional information (i.e.,<br />

information other than that provided by the output of the<br />

program) that can be used to detect errors.”<br />

PROGRAM TESTING (p. 41) “So, there is certainly no need<br />

to apologize for applying ad hoc strategies in program<br />

testing. A programmer who considers his problems well<br />

and skillfully applies appropriate techniques—regardless<br />

of where the techniques arise—will succeed.”<br />

SYMBOLIC<br />

PROGRAM<br />

EXECUTION<br />

(p. 51) “The<br />

notion of<br />

symbolically<br />

executing a program<br />

follows quite<br />

naturally from normal<br />

program execution. First assume<br />

that there is a given programming language (say, Algol-<br />

60) and the normal definition of program execution for<br />

that language. One can extend that definition to provide<br />

a symbolic execution in the same manner as one extends<br />

arithmetic over numbers to symbolic algebraic operations<br />

over symbols and numbers. The definition of the symbolic<br />

execution is such that trivial cases involving no symbols<br />

are equivalent to normal executions, and any information<br />

learned in a symbolic execution applies to the corresponding<br />

normal executions as well.”<br />

COMPONENT PROGRESS (p. 64) “It is clear, looking back,<br />

that progress in component performance, size, cost, and<br />

reliability has been reflected in corresponding improvements<br />

in systems. Looking forward then, an analysis of<br />

coming developments in logic and memory components<br />

appears to be one approach to forecasting future system<br />

characteristics. Prediction at the system level, however,<br />

is complicated by various options in machine organization,<br />

such as parallel processing and pipelining, which<br />

interact with component features to establish the performance<br />

limits of the system.”<br />

HEMISPHERICAL KEYBOARD (p. 99) “A new hemisphericalshaped<br />

typing keyboard, called the Writehander, permits<br />

typing all 128 characters of the ASCII code with<br />

one hand.<br />

“To use the keyboard, the typist places his four fingers<br />

on four press-switches and his thumb on one of eight<br />

press-switches. The four finger-switches operate as the<br />

lower four bits of the 7-bit ASCII code, selecting one of<br />

16 character groups which contain the desired character.<br />

Each group contains eight letters, numerals, or symbols.<br />

The thumb then presses one switch to select the desired<br />

character from the group of eight. The shape and switch<br />

locations have been designed so that the fingers naturally<br />

locate themselves on the switches, according to the<br />

designer, Sid Owen.”<br />

PDFs of the articles and departments of the April issues of<br />

Computer for 1978 and 1994 are available through the IEEE<br />

Computer Society’s website: www.computer.org/computer.<br />

10 COMPUTER<br />

Published by the IEEE Computer Society 0018-9162/10/$26.00 © 2010 IEEE<br />

A<br />

Computer Previous Page | Contents | Zoom in | Zoom out | Front Cover | Search Issue | Next Page M S BE<br />

aG<br />

F

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!