Home > Articles > Software Development & Management > Object Technology

Becoming a Software Developer Part 5: Creating Acceptance Tests from Use Cases

  • Print
  • + Share This
As well as being a great input into our design activities, use cases are a fantastic aid to our quality assurance activities in that they provide the information we need to design acceptance test cases.
Pete McBreen is the author of Software Craftsmanship: The New Imperative (Addison-Wesley, 2001, ISBN 0-201-73386-2). Software Craftsmanship is the winner of the Productivity Award for Software Development magazine's 12th Annual Jolt Awards (see http://www.sdmagazine.com/jolts/).
Like this article? We recommend


At the end of my last article, "Becoming a Software Developer, Part 4: Understanding Use Cases and Requirements," we finished off with a partially elaborated use case. To fully elaborate the use case, we need to investigate the extension conditions and the extension handling steps.


For those of you who did the optional reading, Alistair Cockburn's book Writing Effective Use Cases (Addison-Wesley, 2000, ISBN 0-201-70225-8), our sample use case is only documented to two levels of precision, the extension conditions will add a third level of precision, and the extension handling steps will add a fourth level.

Right now, we have a readable description of how an actor (the Club Secretary) uses the system to achieve one of the actor's user goals (in this case, notifying members about special events). We also have some guarantees that define correct operation of the system.

Club Secretary : Notify members about special events. Send out information about forthcoming events and races to members.

Minimal Guarantee:

  • Event details are recorded in the application.

  • Members are never sent a duplicate notice about the same event.

Success Guarantee:

  • Selected members are sent email containing an event notice.

  • The notice is recorded as being sent to the selected members.

Main Success Scenario:

  1. Club Secretary: Enter event details.

  2. Club Secretary: Choose members to send notice to.

  3. Membership System: Display number of members to be notified and await confirmation from the Club Secretary.

  4. Membership System: Send email notification to every selected member.

  5. Membership System: Record that notice was sent to selected members.

  • + Share This
  • 🔖 Save To Your Account