This is the CIS 422 final examination for spring 1998. You may turn it in
anytime before 3pm, Thursday June 11th, by electronic mail. See below for
specific instructions on how to turn it in.
Cheating policy:
---------------
You must work the exam individually. You may not discuss it with classmates or
any other persons, the only exceptions being the instructor and teaching
assistant. If you have any questions about what is allowed, you should ask the
instructor or teaching assistant as soon as possible.
This examination is based on the lectures and lecture notes for CIS 422, class
discussions, and the textbook. You may use your textbook and notes to help
answer questions. The usual rules of proper citation apply. For example, if
you quote from the textbook or from lecture notes, you must properly indicate
what material is quoted and where it comes from.
Evidence of cheating will result in a failing grade in the course, and cheating
will be reported to the CIS Department and the University in accordance with
established rules.
How to turn in the exam:
-----------------------
You will turn in the exam by sending email to michal@cs.uoregon.edu. The
subject of your email MUST begin with "422exam" (without the quotes). I will
send a reply when I have received your exam. Exams received by noon each day
will be acknowledged by 6pm the same day. Exams received by 11am Thursday will
be acknowledged by 1pm thursday. Exams received by 1pm Thursday will be
acknowledged by 3pm Thursday. Since exams are due by 3pm Thursday at the very
latest, it is much safer to send your finished exam by 11am so that you have
one more chance to send it if something goes wrong.
If you cannot send your exam by email, I will accept hardcopy exams between 1pm
and 3pm Thursday.
IMPORTANT: If you do not receive a reply by the time listed above, you should
assume that I have NOT received your exam. Power outages, flakey ISPs, and
mistyped addresses are not excuses --- it is your responsibility to make sure
that I receive it.
How to fill out the exam:
------------------------
I want plain ASCII text in the body of an email message. Use a text editor,
not a word processor. Use only standard ASCII characters that are readable on
all platforms. Do not use fonts, italics, or other styling. Do not alter the
exam markup (the text in angle brackets). Your lines should be no longer than
80 characters long. Your answer should appear in the body text of your email
message, not in a MIME attachment. You may be penalized for breaking these
rules.
Identifying fields
------------------
The exam asks for your surname (family name), given name, and a secret word.
The surname of John Smith would be "Smith", and his given name would be "John".
The surname of Zhou En Lai would be "Zhou", and his given name would be "En
Lai".
The secret word may be used as a password to provide grading information to you
from the class web page. I am not certain yet whether this will be implemented,
but I am asking for the secret words now so that it will be possible. I
strongly suggest that you do NOT send me a password to any of your computer
accounts; choose a temporary secret word for this use only. The secret word
should consist only of the letters a-z and the digits 0-9, with no blanks, and
should be between 5 and 30 characters long.
Replace this line with your surname (family name)
Replace this line with your given name.
Replace this line with a secret word between 5 and 30 characters long
Replace this line with an email address that I can use to reach you
Optional; replace this line only if you wish to provide a phone number.
5
True or False: A well-designed and carefully written program is unlikely to
require maintenance. (Explain your answer briefly.)
Your T/F answer and short explanation should replace these lines.
Limit your answer to 5 lines.
5
How does a "uses" hierarchy without cycles help a development team leave out
features to meet a deadline?
Replace this line with an answer up to 5 lines long.
10
The Meltdown Badly company is designing an interactive checkers game. To move
a checkers piece, a player clicks the mouse first on the piece to be moved, and
then on the board position to which it should be moved; the piece thereupon
disappears from its old position and appears in its new position.
Part (a): How does this design place extra load on the player's short-term
memory?
Part (b): How might you redesign this interaction to reduce memory load?
Replace these lines with your answers to the question parts (a) and (b).
Limit your answer to 8 lines of text.
10
Many word processors allow graphical images to be either copied into the
document (they become part of the document file) or imported by reference (they
remain in separate files). There is no difference in how the document looks on
the screen or when printed; it is only a matter of maintainability. Consider a
user manual containing several screen shots captured from a program. Should the
screen shots be copied into the user manual document, or imported by reference?
If the wrong choice is made, what bad thing is more likely to happen?
Replace these lines with your answer.
Limit your answer to 8 lines of text.
10
Citations must be formatted in different ways, depending on where a paper is
published. For example, some journals include citations like this [1], some
like this [Smith 89b], and some like this (Smith 1989c).
[1] Smith, W. An empirical study of citation styles. J. Irreproducible
Results 1(3), 1989.
[Smith 89b] Smith, W. Further anomalies in citation styles. J.
Irreproducible Results 1(4), 1989.
Smith, Wendy. The MLA style and other citation anomalies. Journal
of Irreproducible Results, volume 1, number 6, 1989.
A popular bibliography management program allows all of these styles and many
more to be produced from a single bibliography database. The formatting for
each style is based on a template, and users can write additional templates to
create new styles.
Is this an example of
(a) preemption
(b) information hiding
(c) object-oriented design
(d) mechanism/policy split
(e) spiral development
Choose the best answer (just one) and explain your answer briefly.
Replace these lines with your choice from the list above and an explanation.
Your answer may be up to 5 lines long.
5
Which of the following is *not* a purpose of an architectural design
description?
(a) Serve as a basis for writing a tutorial and user reference manual.
(b) Orient a new developer to an ongoing project.
(c) Describe dependencies between major subsystems.
(d) Describe dependencies that must not be introduced during coding or
maintenance.
(e) Help maintenance programmers determine which parts of a system may be
affected by a change.
Replace this line with your answer. You may explain (up to 4 lines).