CISC 3140 - FINAL REVIEW QUESTIONS & ANSWERS
What are two actions that people involved in the Therac debacle could have taken to
reduce the damage that the machine caused? - Answers :1. Listen to and investigate
the end-user complaints.
2. Test software successively and refine the old code, instead of relying on old code.
Choose an error in the Therac software and state two actions that people involved in the
Therac debacle could have taken to prevent or reduce the damage that the machine
caused. - Answers :-Due to concurrent programming errors, the high power electron
beam was activated instead of the low power electron beam, giving patients
approximately 100 times the intended dose of radiation, and resulting in deaths.
-Listen to and investigate the end-user complaints.
-Test for bugs.
-Test software successively and refine the old code, instead of relying on old code.
The Therac report noted several failures in the way error reports for the machine were
handled. What was one such failure? - Answers :The machine responded with an error
message after a radiation dose, which usually meant that the treatment was not
delivered. Due to this unclear and vague error message, the technician repeatedly
delivered beams of radiation to a patient which exceeded safe levels.
What was one error in the Therac software that resulted in a death? - Answers :Due to
concurrent programming errors, the high power electron beam was activated
instead of the low power electron beam, giving patients approximately 100 times the
intended dose of radiation, and resulting in deaths.
The Therac programmers engaged in several practices that either failed to prevent
errors
from being included in production code or failed to repair programming errors when
incorrect program behavior was detected. Briefly state what two of those detrimental
practices were. - Answers :- They did not listen to the end-user complaints.
- They did not properly test the software and failed to prevent errors.
- They denied the errors could exist and failed to repair them.
True or False? Replacement of a hardware lockout in a computer controlled machine by
software will always result in faulty machine operation - Answers :False. We need to
verify the new hardware is compatible with the software. If the hardware
is compatible, the only limitation is the implementation of the software.
, What is the main purpose of the Make program? - Answers :To construct large objects
from a collection of smaller objects
What is one thing the make program can be used for besides constructing large
programs
from a collection of smaller components? - Answers :To include different versions of
some collections of files in a single collection, and extract
only the ones we want.
In plain English state what the make program will do when it encounters the following
two
lines of code in a makefile:
myprog: file1.h file2.h file3.h somefile.c yourfile.c
rm file4.h; cp theirfile yourfile.o - Answers :The make program will check if the
dependencies and targets are up to date. If not, it will
execute the second line.
In plain English state what the make program will do when it encounters the following
two
lines of code in a makefile:
myprog: file1.h file2.h file3.h somefile.c
gcc -o myprog somefile.c - Answers :The make program will check if the dependencies
and targets are up to date. If not, it will
execute the second line.
In the context of the make program, what is a "phony target"? - Answers :A target that
has no dependencies.
Give one reason for using a "phony target" in a makefile. - Answers :To compel
execution of a command on every use of the makefile.
A convenient way to state a starting point in the file.
Why is the Therac report of great importance to programmers (i.e., what is the most
important single fact demonstrated by the report that should be of major importance to
the
approach that should be taken when software is developed)? - Answers :Bad software
kills people.
In what country was the Therac-25 manufactured? - Answers :Canada
What was one government agency that was involved with dealing with Therac-25
problems? - Answers :United States Food and Drug Administration or Health Protection
Branch of the Canadian
government.
What are two actions that people involved in the Therac debacle could have taken to
reduce the damage that the machine caused? - Answers :1. Listen to and investigate
the end-user complaints.
2. Test software successively and refine the old code, instead of relying on old code.
Choose an error in the Therac software and state two actions that people involved in the
Therac debacle could have taken to prevent or reduce the damage that the machine
caused. - Answers :-Due to concurrent programming errors, the high power electron
beam was activated instead of the low power electron beam, giving patients
approximately 100 times the intended dose of radiation, and resulting in deaths.
-Listen to and investigate the end-user complaints.
-Test for bugs.
-Test software successively and refine the old code, instead of relying on old code.
The Therac report noted several failures in the way error reports for the machine were
handled. What was one such failure? - Answers :The machine responded with an error
message after a radiation dose, which usually meant that the treatment was not
delivered. Due to this unclear and vague error message, the technician repeatedly
delivered beams of radiation to a patient which exceeded safe levels.
What was one error in the Therac software that resulted in a death? - Answers :Due to
concurrent programming errors, the high power electron beam was activated
instead of the low power electron beam, giving patients approximately 100 times the
intended dose of radiation, and resulting in deaths.
The Therac programmers engaged in several practices that either failed to prevent
errors
from being included in production code or failed to repair programming errors when
incorrect program behavior was detected. Briefly state what two of those detrimental
practices were. - Answers :- They did not listen to the end-user complaints.
- They did not properly test the software and failed to prevent errors.
- They denied the errors could exist and failed to repair them.
True or False? Replacement of a hardware lockout in a computer controlled machine by
software will always result in faulty machine operation - Answers :False. We need to
verify the new hardware is compatible with the software. If the hardware
is compatible, the only limitation is the implementation of the software.
, What is the main purpose of the Make program? - Answers :To construct large objects
from a collection of smaller objects
What is one thing the make program can be used for besides constructing large
programs
from a collection of smaller components? - Answers :To include different versions of
some collections of files in a single collection, and extract
only the ones we want.
In plain English state what the make program will do when it encounters the following
two
lines of code in a makefile:
myprog: file1.h file2.h file3.h somefile.c yourfile.c
rm file4.h; cp theirfile yourfile.o - Answers :The make program will check if the
dependencies and targets are up to date. If not, it will
execute the second line.
In plain English state what the make program will do when it encounters the following
two
lines of code in a makefile:
myprog: file1.h file2.h file3.h somefile.c
gcc -o myprog somefile.c - Answers :The make program will check if the dependencies
and targets are up to date. If not, it will
execute the second line.
In the context of the make program, what is a "phony target"? - Answers :A target that
has no dependencies.
Give one reason for using a "phony target" in a makefile. - Answers :To compel
execution of a command on every use of the makefile.
A convenient way to state a starting point in the file.
Why is the Therac report of great importance to programmers (i.e., what is the most
important single fact demonstrated by the report that should be of major importance to
the
approach that should be taken when software is developed)? - Answers :Bad software
kills people.
In what country was the Therac-25 manufactured? - Answers :Canada
What was one government agency that was involved with dealing with Therac-25
problems? - Answers :United States Food and Drug Administration or Health Protection
Branch of the Canadian
government.