A Few Review Questions Dan Fleck Fall 2009

A Few Review Questions
Dan Fleck
Fall 2009
System Test Case
Enter invalid username
in the input box
Able to enter text
Enter invalid password
in the input box
Able to enter text
Click login button
Error message
displayed saying “invalid
username or password”
What is wrong with this system test case?
(formatting is wrong, but what else is?)
System Test Case
Run the system and at
System cancels the
any point press “cancel” action
What is wrong with this system test case?
(formatting is wrong, but what else is?)
Many project managers fail. What are some
of the main reasons projects fail and how
can you lower your risk of failure?
Problems with these requirements?
Users shall have an ATM Card
 The game system shall provide a way to
regenerate players and provide a scoring
 The game system shall be fun to play
 The game system may be accessible for
the disabled
What is the difference between
design and analysis phase?
Analysis describes WHAT the system
must do, design describes HOW the
system will do it.
 Analysis describes the problem domain,
design describes the solution domain
Define coupling (and I don’t mean the
terrible show from 2000)
 Define cohesion
Cast of Coupling (2000)
You and Dracula are
both afraid if
stakeholders get
upset. Why?
Define critical path and tell me
when I should pack for the cruise
1. Requirements collection
2. Screen Design
3. Report Design
4. Database Design
5. User Documentation
6. Programming
7. Testing
8. Installation
5, 7
9. Celebration Cruise
Carl and Bob are racing, but are friends
and want to finish in a tie (at the same
time), what is the schedule dependency
that describes this (FS, FF, SF, SS) best?
Why is it necessary to quantify
your plans?
What is expectation management? Why is it
important? Give an example from your life
where it was not done and the results?
Define verification
 Define validation
 Define IV&V
 If my software requirements say the
background should be blue, but I like red
better, will I fail in verification, validation or
What is dynamic verification?
What is an example of static verification?
Which is FindBugs?
What is a stopping rule for testing? Or
what do I mean by that?
A stopping rule is a rule to determine
when you can “stop” testing. Older testing
techniques provided no quantifiable
stopping rule. Newer techniques using
coverage criteria do provide a stopping
 Using the older techniques, when do you
stop testing?
My goal was to get 30 questions for the
review by the time Heros starts at 9pm. It
is now 8:30pm and I have 18 slides. I
started at 7pm.
 What are some metrics I should calculate
now to understand my Heros Watching
Potential (HWP) ?
 If I decide to watch it now, and finish the
slides in the morning, how much earlier
do I need to wake up tomorrow?
What are some advantages and
disadvantages of metrics based
on lines of code?
In the software fault, error and failure
model, is a software fault still present if it
does not generate a failure?
Yes… the failure may appear later or
once new code is added, but the fault is
there regardless.
Define white box and black box testing
Don’t forget… just knowing the answers
to these questions is NOT enough. Look
at the review guide online for the full list of
things to know!!!!
Explain the steps in mutation testing
 How do I kill a mutant?
Create a set of test cases that all pass
Induce small changes to the program: mutants
Find tests that cause the mutant programs to fail: killing mutants
Failure is defined as different output from the original program
A mutant is a variation of my software created by changing lines
of code. By introducing changes to the source code, I can detect
if the testing done is thorough or not.
I kill a mutant by writing a test case that fails for the mutant code,
but not for the original code
Still know how to draw these diagrams? I
Use case diagram
 Class diagram
 Sequence diagram
 Level 0 Context diagram
 Activity diagram (with/without swimlanes)
I hope you enjoyed the class. I did!