This is the first of five quizzes in CSE403 this
quarter. The intent is to allow you to
convey that you've learned the material covered in lectures and in the
readings. Remember, this is the only
part of the course in which your individual knowledge is assessed; everything
else is related directly to the group project.
As another reminder, your top three quizzes will be valued at 100% of
the grade, and your lowest two quizzes at 50% of their value.
This quiz will be handed out 20 minutes before the
end of the section; the instructor will leave when the section is over, and it
is strongly recommended that you turn the quiz in before then. The quiz consists of 40 total points. The quizzes are closed book, closed notes,
closed neighbors.
1)
True
or false with a one sentence justification: 15 total points; for each question,
the true/false is worth 2 points and the justification is worth 3 points.
a)
True
or false: For very large software
systems, the programming language used is the most important factor in
determining if the project will succeed.
b)
True
or false: The later in the software
lifecycle that a bug is found, the more costly it is to fix it.
c)
True
or false: Software testing tends to be
a relatively small cost in the overall software lifecycle.
2)
Short answers: 25 points total
a)
Concisely
list one reason why engineering large software systems tends to be hard.
b)
Over
the lifetime of a software project, what aspect—requirements specification,
design, implementation, testing, maintenance, or something else—tends to
account for the biggest costs?
c)
Concisely
list one reason why it is often extremely valuable to work closely with users
during the requirements definition phase of a software project.
d)
Concisely
list two specific constraints that you face in building the project in CSE403
this quarter.
e)
Concisely
list two specific examples of where the Windows NT development group used approaches intended to reduce their risks.