.Open Use Case Templates . About This is a quick summary of how to write use cases. . Advice .List The name should start with a strong verb. A use case is a set of scenarios. A scenario is a list of steps. Each step should state what the user does and/or what the system responds. The steps must not mention `how` the system does something. Each step needs to be analysed in detail before it becomes code. Keep It Simple: use the simplest format you need. Make sure you store use cases so that they are easily found, edited, and used. Put use cases on a project web site. Keep track of different versions. Writing use cases is a team sport. Focus on a particular user (give them a name). Don't get bogged down in all the special ways it can go wrong until you've finished the main success story. .Close.List . Start with a meaningful name The minimum documentation is a well chosen name. It should start with a verb and indicate the type of user, and what they achieve: .As_is Enrol student in class. This is better than nothing... and the start for drafting more complete descriptions of the use case. . Brief Format Name + Terse one paragraph description of who does what to get what. .As_is Enrol student in class .Box The student logs in to the enrolment system and requests a list of sections of a class. They then select one class to enrol in and the system records this enrolment. The student is provided with confirmation that they have been enrolled. .Close.Box .Open Casual Format Name (Main Success Scenario): one paragraph. (Alternate scenario 1): if ...., one paragraph (Alternate scenario 2): if ...., one paragraph .Close Casual Format .Open Fully Dressed Here are the headings for a fully dressed use case . Name Start with a verb, numbering optional . Scope The System Under Design or Context . Level Enterpise goal, User-goal, or subfunction . Primary Actor Name the actor who uses the system under design to achieve some goal. . Stakeholders and Interests .Set (stakeholder1): what they want. (stockholder2): what they want. .Close.Set . Preconditions State what special and interesting things must be true for this particular case to work. . Postconditions List the interesting things that are true after a scenario is completed. . Main Success Scenario step_number: actor does something or system responds .Open Extensions (steps letter): condition .List actor does something/system does something .Close.List .Close Extensions . Special Requirements .Set desired quality or technological limitation .Close.Set . Variations in Technology and Data .Set step number: possible change in technology or data format .Close.Set . Frequency of Occurrence . Miscellaneous .Set Question Topic to research .Close.Set . Fully dressed as a table Here is a Tabular Format .Table .Row Name .Item Start with a verb, numbering optional .Row Scope .Item The System under Design .Row Level .Item User-goal or subfunction .Row Primary Actor .Item Asks the $SUD to deliver service to meet goals .Row Stakeholders and Interests .Item (stakeholder1): what they want. .Row Preconditions .Item State what special and interesting things must be true for this particular case to work. .Row Postconditions .Item List the interesting things that are true after a scenario is completed .Row Main Success Scenario .Item actor does something or system responds .Close.List .Row Extensions .Item (steps letter): condition steps .Row Special Requirements .Item desired qualities or technological limitations .Row Variations in Technology and Data .Item step number: possible change in technology or data format .Row Frequency of Occurrence .Item How often .Row Miscellaneous .Item Open issues to research .Close.Table .Close Fully Dressed .Close Use Case Templates