CSE logo University of Washington Department of Computer Science & Engineering
 CSE 403 Software Engineering (Winter 2002)
  CSE Home   About Us    Search    Contact Info 

Lab 2 - Frequently Asked Questions

  1. In the Use Case in Figure 7.2, Part B refers to the "Main Success Scenario". I am confused. I thought that Scenarios are stories, and that use cases are steps in the story.

    This is a confusing misuse of words. Use Cases and Scenarios are words that are misused often.

    For the purposes of this assignment, stick to what I said in lecture:
       -- A scenario is a narrative, hypothetical story
       -- A use case is a description of a particular use of a system.  Scenarios just give use cases some context.
       -- When describing a use case, we often talk about the "steps" needed to complete the use case. That is what they are talking about here in Step B - the steps involved in the normal case. So don't call it "Main Success Scenario", call it the ``Normal Case Path'' or the ``Steps Involved In the Normal Case''.

    (Actually, Cockburn likes to think of use cases and scenarios in a recursive way, with each scenario comprised of use cases and each use case comprised of little mini-scenarios and so on. But this is not helpful to anyone in practice. Don't think any more about this. I mean it. Just follow what I said in class.).

  2. What does "Failed End Condition" mean?
    It means "what happens when the user abandons the goal". It does not mean "what happens when the software crashes". (Your software isn't going to crash anyway, right?)
  3. What does "Trigger" mean?
    It means "what causes this use case to begin". Often this is something along the lines of "the users wants to do it" or "the user wants it". But sometimes software has other triggers. For example, screensaver software may have a trigger of "the computer has been idle for 10 minutes".
  4. What is the difference between Extensions and Variations?
    An extension is an optional step that can be added to Part B, the Normal Case Path. A variation either a) describes some choices available for a given step in the Normal Case Path, or b) replaces one or more steps in the Normal Case Path with something else.
  5. The use case in the book doesn't actually ever refer to software.
    Hmm... that's true. But that's not what you should do.

    IN YOUR USE CASES, YOU SHOULD MENTION WHEN THE USER INTERACTS WITH SOFTWARE. If you read the new example I have attached, this idea should be clearer.

    You shouldn't include too many specifics. (Don't mention exact buttons that will be pressed or menu items that will be selected.)

    Just mention a general description of how the user will be interacting with the software. (Examples include: "The user will choose from a list of items made available on the system's display", or "The user will enter a time when prompted by the software.")

    Just do the best job you can.

 


CSE logo Department of Computer Science & Engineering
University of Washington
Box 352350
Seattle, WA  98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to vibha]