Use-Cases. Writing Effective Use-Cases, A. Cockburn, Addison Wesley 2001 Applying Use-Cases (2nd ed), G. Schneider and J. Winters, Addison Wesley, 2001 www.rational.com has a couple white papers on use-cases on line. Use-Cases are scenarios about how external actors interact with the system. Anything outside the control of the system, a person or another system, is a actor. Use-Cases do not expose interfaces between internal components in the system, There are other (Work-Flow) methodologies for those specifications. They are used as part of defining the "requirements" for a project. Use-Cases evolve over time, adding more details as the project evolves. They also help in working out: Formal validation for the system. The Testing plan. Acceptance Criteria. There are CASE tools for specification of Use-Cases visually. Rational (Rose} and UML have adopted Use-Cases as part of their formal system development process. Use-Case Template: (from Pressman) Use-case: , Entering a new party. Primary Actor: , Sales Manager. Goal in context: Entering a new party into the data base. Preconditions: All information about the party is known. Trigger: A new party has been arranged. Scenario: 1) Manager starts program 2) Manager enters password 3) Manager selects "new party" 4) Manager enters data for new party 5) Manager saves party 5) Manager exits program Exceptions: 1) program is already running, data base is open ... 2) party name already exits 2) password wrong 3) date fields wrong 4) Manager exits program with out a SAVE or CANCEL Priorities: Essential, must be implemented When Available: First Prototype Version Frequency of Use: 1 time a week (assuming one party a week is scheduled) Channel to Actor: Via Control Pannel Interface Secondary Actors: Support technician Channels to Secondary Actors: Via Internet Open Issues: ... ----------------------------------------------------------- Sample Data sets? How do you know that Use-Case was handled properly?