02-06-2012, 11:33 AM
Picturing Programs
Picturing Programs.pdf (Size: 256.76 KB / Downloads: 90)
Moving Towards Specifications
• What functions will the new system
provide?
– How will people interact with it?
– Describe functions from a user’s perspective
• UML Use Cases
– Used to show:
• the functions to be provided by the system
• which actors will use which functions
Use cases and Actors
• Use case:
– a pattern of behavior that the new system is required
to exhibit
– a sequence of related actions performed by an actor
and the system via a dialogue.
• Actor:
– anything that needs to interact with the system:
• a person
• a role that different people may play
• another (external) system
Identifying Actors
• Look for:
– the users who directly use the system
– also others who need services from the system
• To find actors that are people/roles ask:
– Who will be a primary user of the system? (primary actor)
– Who will need support from the system to do her daily tasks?
– Who will maintain, administrate, keep the system working?
(secondary actor)
– Who or what has an interest in the results that the system
produces ?
• To find actors that are external systems ask:
– Which hardware devices does the system need?
– With which other systems does the system need to interact with?
Finding Use Cases
• For each actor, ask the following questions:
– Which functions does the actor require from the system?
– What does the actor need to do ?
– Does the actor need to read, create, destroy, modify, or store
some kinds of information in the system ?
– Does the actor have to be notified about events in the system?
– Does the actor need to notify the system about something?
– What do those events require in terms of system functionality?
– Could the actor’s daily work be simplified or made more efficient
through new functions provided by the system?
UML Sequence Diagrams
• Describe a Use Case using Sequence Diagrams
– Sequence diagrams show step-by-step what’s
involved in a use case
• Which objects are relevant to the use case
• How those objects participate in the function
– You may need several sequence diagrams to
describe a single use case.
• Each sequence diagram describes one possible scenario for
the use case
– Sequence diagrams…
• …should remain easy to read and understand.
• …do not include complex control logic