Author Topic: How to doc a simple scenario with few interactions  (Read 4137 times)

kelly_sumrall

  • EA User
  • **
  • Posts: 73
  • Karma: +0/-0
    • View Profile
How to doc a simple scenario with few interactions
« on: July 25, 2006, 05:31:53 am »
Hello Group,

I'm getting stumped trying to capture some of the subtleties of a simple feature. Here is my situation; I am designing a web site. The customer wants a section where visitors can go and read newsletters written by a member of the company. From that page, the visitor can read the current newsletter, open archived newsletters, and add their email to the newsletter mailing list. This is typical functionality that we should all be familiar with, but pretending that we’re not familiar with it, how would you go about capturing these requirements?
I'm currently working on the use cases for the site, but I don’t know how to capture this in a use case. This functionality seems to have three different user goals: browse current newsletter, browse archived newsletter (could even have an archive search feature, which would definitely be its own use case), and add email to mailing list. These user goals seem too simplistic to write as individual user goal oriented use cases, but, when taken together, indicate the developer (me) will need to write a fair amount of code. Take the following for example:

UC: Browse Current Newsletter
This use case is triggered when Visitor initiates a request to read a newsletter without specifying a specific date.

Visitor makes a request to read a newsletter.
System locates current newsletter and displays it.
Use Case Ends

UC: Browse Archived Newsletter
This use case is triggered when Visitor initiates a request to read a newsletter and specifies a specific date.

Visitor makes a request to read newsletter YYMM
System locates the newsletter and displays it.
Use Case Ends

Alternate Flow
System cannot find newsletter

System displays message indicting the newsletter cannot be found.

UC: Signup to Receive Newsletters via Email
This use case is triggered when Visitor submits email to System

Visitor submits in email and CAPTCHA.
[Verify CAPTCHA]
System verifies CAPTCHA.
[Add Email]
System adds email to mailing list.
System displays previous newsletter page with acceptance email.
Use Case Ends

Alternate Flow
CAPTCHA verification fails.
At [Verify CAPTCHA], System determines CAPTCHA is incorrect.

System displays previous newsletter page with error message indicating the CAPTCHA does not match what is expected.
Use Case Ends

Email already exists.
At [Add Email], System determines the list already contains the supplied email address.

System displays previous newsletter page with message indicating the email is already a part of the mailing list.
Use Case Ends


It just doesn’t seem right to create documentation like this. There’s no substance to it. So, what would be a way to capture/document user goals that don’t have much interaction with the system?
« Last Edit: July 25, 2006, 05:34:40 am by kelly_sumrall »
Kelly Sumrall

Even though curiosity killed the cat, it still had eight lives left.

sargasso

  • EA Practitioner
  • ***
  • Posts: 1406
  • Karma: +1/-2
  • 10 COMFROM 30; 20 HALT; 30 ONSUB(50,90,10)
    • View Profile
Re: How to doc a simple scenario with few interact
« Reply #1 on: July 25, 2006, 03:43:10 pm »
From my pov as a tester, it looks like one of the better doc's I've seen!

Only one comment - define "current newsletter" and if different "previous newsletter" used across the entire doc.  Are they the same thing?  Might indicate a re-useable feature (<<include>> ??? or re-useable code perhaps that would not be caught by the coders if functionality is split between persons.) ...  in fact this shows the beauty of doing it "right".

bruce
"It is not so expressed, but what of that?
'Twere good you do so much for charity."

Oh I forgot, we aren't doing him are we.

kelly_sumrall

  • EA User
  • **
  • Posts: 73
  • Karma: +0/-0
    • View Profile
Re: How to doc a simple scenario with few interact
« Reply #2 on: July 26, 2006, 06:31:27 am »
Thanks for the kind words (Tftkw) Bruce.  I'm actually still modifying (refactoring in Dev speak) this one. I'm wanting to combine UC: Browse Current Newsletter and UC: Browse Archived Newsletter into one use case since they share the same steps. I'm adding UC: Confirm Email to compliment UC: Signup to Receive Newsletters via Email since I now need to confirm the email used for sign up. I'll post them for further discussion/criticism when they are completed.

Kelly
Kelly Sumrall

Even though curiosity killed the cat, it still had eight lives left.

jeshaw2

  • EA User
  • **
  • Posts: 701
  • Karma: +0/-0
  • I'm a Singleton, what pattern are you?
    • View Profile
Re: How to doc a simple scenario with few interact
« Reply #3 on: July 29, 2006, 07:46:12 am »
You might consider using Alternative Flows to combine some of your situations.  For example, displaying a newsletter requires a search argument which the actor may, or may not have provided.  The alternative flows may be predicated on the provision of such information.
Verbal Use Cases aren't worth the paper they are written upon.