Download presentation
Presentation is loading. Please wait.
Published byHillary Cunningham Modified over 8 years ago
1
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Slide 1 Use Case Diagrams
2
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 2 Slide 2 Use Cases l What is a Use Case A formal way of representing how a business system interacts with its environment Illustrates the activities that are performed by the users of the system A scenario-based technique in the UML A sequence of actions a system performs that yields a valuable result for a particular actor.
3
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 3 Slide 3 Use Case Analysis l What is an Actor? A user or outside system that interacts with the system being designed in order to obtain some value from that interaction l Use Cases describe scenarios that describe the interaction between users of the system (the actor) and the system itself.
4
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 4 Slide 4 Use Cases l Use case diagrams describe what a system does from the standpoint of an external observer. The emphasis is on what a system does rather than how. l Use case diagrams are closely connected to scenarios. A scenario is an example of what happens when someone interacts with the system.
5
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 5 Slide 5 Use Cases l Here is a scenario for a medical clinic. l A patient calls the clinic to make an appointment for a yearly checkup. The receptionist finds the nearest empty time slot in the appointment book and schedules the appointment for that time slot. " l We want to write a use case for this scenario. l Remember: A use case is a summary of scenarios for a single task or goal.
6
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 6 Slide 6 Use Cases l Step 1 Identify the actors l As we read the scenario, define those people or systems that are going to interact with the scenario. l A patient calls the clinic to make an appointment for a yearly checkup. The receptionist finds the nearest empty time slot in the appointment book and schedules the appointment for that time slot. "
7
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 7 Slide 7 Use Cases l Step 1 Identify the actors l As we read the scenario, define those people or systems that are going to interact with the scenario. l A patient calls the clinic to make an appointment for a yearly checkup. The receptionist finds the nearest empty time slot in the appointment book and schedules the appointment for that time slot. "
8
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 8 Slide 8 Questions for Identifying People Actors l Who is interested in the scenario/system? l Where in the organization is the scenario/system be used? l Who will benefit from the use of the scenario/system? l Who will supply the scenario/system with this information, use this information, and remove this information? l Does one person play several different roles? l Do several people play the same role?
9
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 9 Slide 9 Questions for Identifying Other Actors l What other entity is interested in the scenario/system? l What other entity will supply the scenario/system with this information, use this information, and remove this information? l Does the system use an external resource? l Does the system interact with a legacy system?
10
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 10 Slide 10 Actors l An Actor is outside or external the system. l It can be a : Human Peripheral device (hardware) External system or subsystem Time or time-based event l Represented by stick figure
11
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 11 Slide 11 Use Cases l A use case is a summary of scenarios for a single task or goal. l An actor is who or what initiates the events involved in the task of the use case. Actors are simply roles that people or objects play. l So as we read our scenario, what or who is the actor????
12
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 12 Slide 12 Use Cases l So as we read our scenario, what or who is the actor???? l A patient calls the clinic to make an appointment for a yearly checkup. The receptionist finds the nearest empty time slot in the appointment book and schedules the appointment for that time slot. " l The actor is a Patient.
13
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 13 Slide 13 Use Cases l The use case is a summary of scenarios for a single task or goal. l So What is the Use Case???? l The Use Case is Make Appointment. l It is a use case for the medical clinic.
14
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 14 Slide 14 Use Cases l The picture below is a Make Appointment use case for the medical clinic. l The actor is a Patient. The connection between actor and use case is a communication association (or communication for short). Actors are stick figures. Use cases are ovals. Communications are lines that link actors to use cases.
15
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 15 Slide 15 Use Case Componentss l The use case has three components. l The use case task referred to as the use case that represents a feature needed in a software system. l The actor(s) who trigger the use case to activate. l The communication line to show how the actors communicate with the use case.
16
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 16 Slide 16 Use Case Diagram - Use Case l A major process performed by the system that benefits an actor(s) in some way l Models a dialogue between an actor and the system l Represents the functionality provided by the system
17
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 17 Slide 17 Use Case l Each use case in a use case diagram describes one and only one function in which users interact with the system May contain several “paths” that a user can take while interacting with the system Each path is referred to as a scenario
18
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 18 Slide 18 Use Case l Labelled using a descriptive verb-noun phrase l Represented by an oval Make Appointment
19
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 19 Slide 19 Use Case - Actor l Labelled using a descriptive noun or phrase l Represented by a stick character
20
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 20 Slide 20 Use Case - Relationships l Relationships Represent communication between actor and use case Depicted by line or double-headed arrow line Also called association relationship Make Appointment
21
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 21 Slide 21 Use Case - Relationships l Boundary A boundary rectangle is placed around the perimeter of the system to show how the actors communicate with the system. Make Appointment
22
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 22 Slide 22 Use-Case Diagram A use case diagram is a collection of actors, use cases, and their communications.
23
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 23 Slide 23 Use Case Diagram l Other Types of Relationships for Use Cases Generalization Include Extend
24
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 24 Slide 24 Components of Use Case Diagram l Generalization Relationship Represented by a line and a hollow arrow From child to parent Child use caseParent use case
25
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 25 Slide 25 Example of Relationships
26
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 26 Slide 26 Use Case Diagram l Include Relationship Represents the inclusion of the functionality of one use case within another Arrow is drawn from the base use case to the used use case Write > above arrowhead line
27
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 27 Slide 27 Use Case Diagram l Extend relationship Represents the extension of the use case to include optional functionality Arrow is drawn from the extension use case to the base use case Write > above arrowhead line
28
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 28 Slide 28 Example of Relationships
29
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 29 Slide 29 Use Case Relationships l Pro: Reduces redundancy in use cases Reduces complexity within a use case l Con May introduce complexity to use case diagram
30
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 30 Slide 30 Benefits of Use Cases l Use cases are the primary vehicle for requirements capture in RUP l Use cases are described using the language of the customer (language of the domain which is defined in the glossary) l Use cases provide a contractual delivery process (RUP is Use Case Driven) l Use cases provide an easily-understood communication mechanism l When requirements are traced, they make it difficult for requirements to fall through the cracks l Use cases provide a concise summary of what the system should do at an abstract (low modification cost) level.
31
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 31 Slide 31 Difficulties with Use Cases l As functional decompositions, it is often difficult to make the transition from functional description to object description to class design l Reuse at the class level can be hindered by each developer “taking a Use Case and running with it”. Since UCs do not talk about classes, developers often wind up in a vacuum during object analysis, and can often wind up doing things their own way, making reuse difficult l Use Cases make stating non-functional requirements difficult (where do you say that X must execute at Y/sec?) l Testing functionality is straightforward, but unit testing the particular implementations and non-functional requirements is not obvious
32
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 32 Slide 32 Use Case Model Survey l The Use Case Model Survey is to illustrate, in graphical form, the universe of Use Cases that the system is contracted to deliver. l Each Use Case in the system appears in the Survey with a short description of its main function. Participants: Domain Expert Architect Analyst/Designer (Use Case author) Testing Engineer
33
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 33 Slide 33 Function versus Form Use casesArchitecture Use case specify function; architecture specifies form Use cases and architecture must be balanced
34
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 34 Slide 34 Sequence Diagrams A Sequence diagram shows how processes operate with one another and in what order.
35
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 35 Slide 35 Actor
36
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 36 Slide 36 Alternative Combined Fragment
37
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 37 Slide 37 Message
38
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 38 Slide 38 Lifeline
39
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 39 Slide 39 Exercise
40
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 40 Slide 40 Exercise
41
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 41 Slide 41 Exercise
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.