Largely a sequence of interactions across the system boundary between the actor(s) and the system.
Natural language is used so that non-technical as well as technical users can understand it. The use case is a vehicle for getting functional requirements out of users. It gives them hooks to hang ideas on and is a very powerful interview tool, especially when used in conjunction with screen prototyping.
A good use case is also:
|Easy to understand|
|Complete including all alternate flows|
|Specified in a document separate from the use case diagram|
|Agreed with the users of the system|
|Mapped to a prototype screen or system interface prototype|
UML Training Courses
Other UML Resources