SlideShare a Scribd company logo
1 of 43
Use Case Diagrams

Inge Powell
Definition –
What does Use Case mean?
• “A use case is a software and system engineering
term that describes how a user uses a system to
accomplish a particular goal. A use case acts as a
software modeling technique that defines the
features to be implemented and the resolution of
any errors that may be encountered.”
• http://www.techopedia.com/
Use cases define the system. They show
interactions between actors and the
system to create a working structure.
Although you might break them down to smaller
components, uses cases will show:
• Actors: Actors are the users that interact with
the system, can be human roles or system.
• Processes: Use cases show the processes that
actors use to show the intended behaviour of the
system.
• System: Use cases should show all the
processes, describing the activities for each actor
that match the system functional requirements.
Use Case Diagrams

ACTORS
ACTORS
Actors are the people who will interact
with the system, who does what.

Typically in a simple Use Case diagram, they
are depicted with stickmen.
ACTORS
Although typically they are depicted with
stickmen…………………..

Sometimes they are also shown more graphically
ACTORS
The actors are annotated with their role..

Administrator

Operator

Customer

Client
Manager
ACTORS

Actors are not ALWAYS people, however you can still depict
them with stickmen.

Administrator

Administrator

Customer

Customer

Bank

Bank

Website Server

Website Server
Use Case Diagrams

SYSTEM BASICS
SYSTEM
Ovals show each functional requirement
of the system, the steps or processes.

When we show these functional
requirements as a whole
process from start to finish we
show them inside the system
boundary.
SYSTEM
Select
Customer

We write the function in the ovals

Order System
Select
Customer

We give the overall process a
title to show what we are
depicting.

Create
Order

Select
Products

Take
Payment
SYSTEM

We show which actor interacts with each process
Order System
Select
Customer

Create Order

Select
Products

Phone Operator

Process
Payment
SYSTEM

Regardless of whether this is a two way process, we
show who initiates the process with an arrow.
Order System
Select
Customer

Create Order

Select
Products

Phone Operator

Process
Payment
SYSTEM

Information from the system is shown with an arrow
back to the user.
Order System
Select
Customer

Create Order

Select
Products

Phone Operator

Take
Payment

Order Status
SYSTEM

Often there are more than one user who interacts
with the system.
Online orders
Select
Customer
Create Order
Select
Products

Bank
Make
Payment

Payment
Authorisation

Process Order

Order Clerk

Confirm Order

Customer
Use Case Diagrams

<<INCLUDES>>
INCLUDES

Sometimes a process has more steps to complete
that process. Note the direction of arrows.

Create
Order

<<include>>

Add
Delivery
Address

<<include>>

Select
Delivery
Option
INCLUDES

Sometimes a process has a lot more steps to
complete that process.

<<include>>

Create
Order
<<include>>

Add
Delivery
Address

Select
Delivery
Option

<<include>>
<<include>>

Add Billing
Address

Enter
Delivery
Notes
INCLUDES

We only show the include on the main process if it
does not become too confusing, the idea is to keep
it simple
Order System

Select
Customer

<<include>>

Search
Customer
Create Order

<<include>>
Delivery
Option

Phone Operator

Select
Products

Take
Payment
INCLUDES

Otherwise we show it separately
Order System
Select
Customer

Create Order

<<include>>

Create
Order
<<include>>

Add
Delivery
Address

Select
Delivery
Option

<<include>>
<<include>>
Select
Products

Phone Operator

Take
Payment

Add
Billing
Address

Enter
Delivery
Notes

Notice that this is not a FULL system, so we do NOT enclose it in
the system box.
INCLUDES

It is perfectly acceptable to show some important ‘include’ inside
the main system box, and some separately.
Order System
Select
Customer

<<include>>
Search
Customer
Create
Order

Phone
Operator

Select
Products

Take
Payment

<<include>>

Create
Order
<<include>>

Add
Delivery
Address

Select
Delivery
Option

<<include>>
<<include>>

Add
Billing
Address

Enter
Delivery
Notes
INCLUDES

It is also acceptable to show more than one set of breakdowns
outside the main system box.
Create
Order

<<include>>

Order System
Select
Customer

Add
Delivery
Address

<<include>>
Select
Delivery
Option

<<include>>

<<include>>

<<include>>
Add
Billing
Address

Search
Customer

Enter
Delivery
Notes

Create
Order
<<include>>

Phone
Operator

Select
Products

Select
Products
<<include>>

Search
Products

Enter
Quantity

<<include>>
<<include>>
Take
Payment

Select
size

Select
Colour
INCLUDES

Includes is used to show a process that is
always part of the parent process.
Is it a parent process or a child process?
• Try and think in levels.
• An order management process might be shown as
one process box in a larger system.
• Its child processes might include select customer,
create order, add products, take payment.
• The children of these process might include,
search customer, delivery type, quantity, etc.
• Think of titles for the overall process, that
becomes the parent.
Use Case Diagrams

<<EXTEND>>
EXTENDS
extend are
different to
include.
Includes means
that a process
IS made up of
smaller
processes.
extend means
a process
MIGHT include
more smaller
processes.

Sometimes a process has a step that it might
include to complete that process. Note the direction
of arrows.
Select
Customer

<<extend>>

Search by
Postcode

<<extend>>

New
Customer
EXTENDS
In this example,
an existing
customer might
order a lollypop
or beach ball.
No extend
required.
But if they were
a new
customer or
ordered a
chemical
product, more
processes
might be
required.

Sometimes a process might include a lot more
steps that could potentially be needed to complete
that process, but not always.
<<extend>>

Create
Order
<<extend>>

New
Customer

Include
COSH

<<extend>>
<<extend>>

Check
Licence

Check Age
Restrictions
EXTENDS

We only show the extend on the main process if it does
not become too confusing, the idea is to keep it simple.
Order System
Select
Customer

<<extend>>

New
Customer
Create Order

<<extend>>
Arrange
Air Mail

Phone Operator

Select
Products

Take
Payment
EXTENDS

Otherwise we show it separately
Order System
<<extend>>
Select
Customer

Create Order

Create
Order
<<extend>>

Safety
Instructions
Include
COSH

<<extend>>
<<extend>>

Select
Products

Phone Operator

Check
Licence

Check Age
Restrictions

Take
Payment

Notice that this is not a FULL system, so we do NOT enclose it in
the system box.
EXTENDS

It is perfectly acceptable to show some important ‘extend’ inside
the main system box, and some separately.
Order System
Select
Customer

<<extend>>
<<extend>>
New
Customer
Create
Order

Create
Order
<<extend>>

Safety
Instructions

Include
COSH

<<extend>>
<<extend>>

Phone
Operator

Select
Products

Take
Payment

Check
Licence

Check Age
Restrictions
EXTENDS
Note that you
can mix include
and extend.

It is also acceptable to show more than one set of breakdowns
outside the main system box.
Create
Order

<<include>>

Order System
Select
Customer

<<extend>>

Delivery
Options

Include
COSH

<<extend>>
<<extend>>

<<include>>

Search
Customer

Create
Order

Select
Products

<<extend>>
Check
Licence

New
Customer

<<include>>

Check Age
Restrictions

Select
Products
<<include>>

Search
Products
<<extend>>
<<extend>>

Phone
Operator

Take
Payment

Select
size

Select
Colour

Enter
Quantity
Use Case Diagrams

SYSTEM LEVELS
LEVELS

Where do I start? At what level am I
creating the use case for?
There is a difference between Business Level Use
Case and System Level Use Case:
• Business Level Use Case: Try to show the
whole business in its most simple forms including
all actors who will be included.
• System Level Use Case: Try to show the
system in complete processes. For example the
customer management system, the order system
or booking process.
LEVELS
Note that you
would show the
customers or
shareholders at
this level even
if they have no
direct contact
with the actual
system.

Business Use Case
Business use case is the top most level.
Sooooper shops Ltd
Orders

Customer

Order Clerk
Fulfil Orders

Manage
Database

Admin

Supplier

Invoices

Payments

Shares

Manager

Shareholder
LEVELS
Note that there
is a line to the
customer, yet
no arrow.
shows a data
transfer but no
initialisation.
Note also,
rather than
have lines
cross over
which would
confuse the
system, an
actor is just
repeated

A BUSINESS Use Case may show system, it will show
where the information comes from even if that actor has no
direct interaction with the system..
Orders System
Select
Customer

Order Clerk

Create
Order
Select
Products
Make
Payment

Bank

Payment
Authorisation

Process Order

Confirm Order

Order Clerk

Customer
Levels
Note that the
customer, is
shown on this
diagram to
clarify, but is
not necessary.
Note in this
system it is
clear that the
customer has
no direct
interaction.

A System Use Case will show a complete process rather
than an overall picture.
Orders System
Select
Customer
Create
Order

<Telephone
Order>

Order Clerk

Select
Products

Order Clerk

Make
Payment

Payment
Authorisation

<Confirm
Order>

Process Order

Customer
Confirm Order

Bank
Customer
LEVELS

A System Use Case will show a complete process rather
than an overall picture.
Orders System

The subtle
difference in
this Use Case
is that the
system sends
out a
confirmation
email direct to
the customer.

Select
Customer
Create
Order

<Telephone
Order>

Order Clerk

Select
Products

Order Clerk

Make
Payment

Payment
Authorisation

Process Order

Customer
Confirm Order

Bank
Customer
LEVELS

Remember to show the FULL system process including any
further levels of process.
Create
Order

<<include>>

Order System
Select
Customer

<<extend>>

Delivery
Options

Include
COSH

<<extend>>
<<extend>>

<<include>>

<<extend>>

Search
Customer

New
Customer

Create
Order

Phone
Operator

Select
Products

Check
Licence

<<include>>

Check Age
Restrictions

Select
Products
<<include>>

Search
Products
<<extend>>
<<extend>>

Take
Payment

Select
size

Select
Colour

Enter
Quantity
LEVELS
Note that this
process has
been simplified
for example
purposes and
would probably
include some
more process
as discussed
earlier.

These Use Cases are unlikely to be used in isolation, and are
likely to have an additional narrative.
Order System
Select
Customer

<<include>>

<<extend>>

Search
Customer

New
Customer

Create
Order

Select
Products

Take
Payment

Phone
Operator

• Operator receives a call from
the customer.
• Operator selects the customer.
• This will include searching
to find if the customer
exists.
• This may also include
creating a new customer.
• Operator will create the order.
• Operator will select products.
• Operator will take payment.
Use Case Diagrams

THINK!
THINK!

It is important to note that there is not
always a „correct‟ version.
But there are wrong ways, so ask yourself:
• Actors: Am I correctly showing who has access
to the system, who uses which process?
• System: Is it clear what the system does?
• Goals: Is the full process shown?
• Clear: Can I clarify the diagrams?
• Too Simple: Do I need to add more breakdowns
to clarify the process?
• Too Complicated: Do I need to split some
breakdowns out of the main system?
THINK!

I have seen „extends‟ not „extend‟.
You only use „extend‟ Why?
UML changes over time to keep up with real world
systems.
• Extends: Used to be shown on models as
<<extends>>, but was shortened to <<extend>>
to keep the diagram as short as possible.

• Both are still widely accepted and neither is
wrong. <<extend>> is just more up to date.
THINK!

I have seen „includes‟ not „include‟.
You only use „include‟ Why?
UML changes over time to keep up with real world
systems.
• Includes: Used to be shown on models as
<<includes>>, but was shortened to <<include>>
to keep the diagram as short as possible.

• Both are still widely accepted and neither is
wrong. <<include>> is just more up to date.
THINK!

I have seen „include‟ and „uses‟.
You have not used „uses‟, why not?
In UML diagrams, „include‟ is now used now to
cover both includes and uses.
• Includes: <<includes>> used to be shown on
models just to show that a sub process was an
integral part of the main process.
• Uses: <<uses>> used to be shown on models to
show that a sub process was a re-usable part of
the main process. It may also have been used
elsewhere.
• Both are still widely accepted and neither is
wrong. <<include>> is just more up to date.

More Related Content

What's hot

What's hot (20)

Sequence Diagram
Sequence DiagramSequence Diagram
Sequence Diagram
 
CS8592-OOAD Lecture Notes Unit-2
CS8592-OOAD Lecture Notes Unit-2CS8592-OOAD Lecture Notes Unit-2
CS8592-OOAD Lecture Notes Unit-2
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagrams
 
Uml
UmlUml
Uml
 
Uml class-diagram
Uml class-diagramUml class-diagram
Uml class-diagram
 
Uml diagrams usecase
Uml diagrams usecaseUml diagrams usecase
Uml diagrams usecase
 
8 system models (1)
8 system models (1)8 system models (1)
8 system models (1)
 
Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
 
Diagrams
DiagramsDiagrams
Diagrams
 
Lecture7 use case modeling
Lecture7 use case modelingLecture7 use case modeling
Lecture7 use case modeling
 
Use Case Modeling
Use Case ModelingUse Case Modeling
Use Case Modeling
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7
 
Types of UML diagrams
Types of UML diagramsTypes of UML diagrams
Types of UML diagrams
 
Uml Activity Diagram
Uml Activity DiagramUml Activity Diagram
Uml Activity Diagram
 
Activity diagrams
Activity diagramsActivity diagrams
Activity diagrams
 
Class diagram- UML diagram
Class diagram- UML diagramClass diagram- UML diagram
Class diagram- UML diagram
 
Component Diagram Example Templates
Component Diagram Example TemplatesComponent Diagram Example Templates
Component Diagram Example Templates
 
Basic Behavioral Modeling
Basic Behavioral ModelingBasic Behavioral Modeling
Basic Behavioral Modeling
 
UML
UMLUML
UML
 
Sequence diagram- UML diagram
Sequence diagram- UML diagramSequence diagram- UML diagram
Sequence diagram- UML diagram
 

Viewers also liked (11)

Communication Diagram
Communication DiagramCommunication Diagram
Communication Diagram
 
Composite Structure Diagram
Composite Structure DiagramComposite Structure Diagram
Composite Structure Diagram
 
Package Diagram
Package DiagramPackage Diagram
Package Diagram
 
Timing diagram
Timing diagramTiming diagram
Timing diagram
 
BANKING SYSTEM
BANKING SYSTEMBANKING SYSTEM
BANKING SYSTEM
 
Network Diagrams
Network DiagramsNetwork Diagrams
Network Diagrams
 
54024405 project-report-banking-management-system
54024405 project-report-banking-management-system54024405 project-report-banking-management-system
54024405 project-report-banking-management-system
 
Collaboration Diagram
Collaboration DiagramCollaboration Diagram
Collaboration Diagram
 
SYNOPSIS ON BANK MANAGEMENT SYSTEM
SYNOPSIS ON BANK MANAGEMENT SYSTEMSYNOPSIS ON BANK MANAGEMENT SYSTEM
SYNOPSIS ON BANK MANAGEMENT SYSTEM
 
Use Case Model
Use Case ModelUse Case Model
Use Case Model
 
Data Flow Diagrams
Data Flow DiagramsData Flow Diagrams
Data Flow Diagrams
 

Similar to Use case diagrams 2014

Systems diagrams &amp; visualization (uml &amp; data flow)exampl
Systems diagrams &amp; visualization (uml &amp; data flow)examplSystems diagrams &amp; visualization (uml &amp; data flow)exampl
Systems diagrams &amp; visualization (uml &amp; data flow)examplcherry686017
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagramsMir Majid
 
[[Srs]] online shopping website for TYBSC IT
[[Srs]] online shopping website for TYBSC IT[[Srs]] online shopping website for TYBSC IT
[[Srs]] online shopping website for TYBSC ITYogeshDhamke2
 
Business ProcessesMenu PageHere is a list of the topics you .docx
Business ProcessesMenu PageHere is a list of the topics you .docxBusiness ProcessesMenu PageHere is a list of the topics you .docx
Business ProcessesMenu PageHere is a list of the topics you .docxhumphrieskalyn
 
OOAD U1.pptx
OOAD U1.pptxOOAD U1.pptx
OOAD U1.pptxanguraju1
 
Splunk | Use Case Training
Splunk | Use Case TrainingSplunk | Use Case Training
Splunk | Use Case TrainingBeth Goldman
 
Requirements Are Optional, Right?
Requirements Are Optional, Right?Requirements Are Optional, Right?
Requirements Are Optional, Right?thomstrat
 
Online shopping cart system file
Online shopping cart system fileOnline shopping cart system file
Online shopping cart system fileSunil Jaiswal
 
unified modeling language diagrams
unified modeling language diagramsunified modeling language diagrams
unified modeling language diagramsmuhammadali0014
 
conversion-gate02.pptx
conversion-gate02.pptxconversion-gate02.pptx
conversion-gate02.pptxNouraBaccar1
 
Software Requirements Engineering Methodologies
Software Requirements Engineering MethodologiesSoftware Requirements Engineering Methodologies
Software Requirements Engineering MethodologiesKiran Munir
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case DiagramKumar
 
3 interaction and_state_modeling
3 interaction and_state_modeling3 interaction and_state_modeling
3 interaction and_state_modelingMinal Maniar
 
SDLC. BA Role
SDLC. BA RoleSDLC. BA Role
SDLC. BA Roleeleksdev
 
07 b 01workflowdefinition
07 b 01workflowdefinition07 b 01workflowdefinition
07 b 01workflowdefinitiontflung
 
Document Control
Document ControlDocument Control
Document ControlAnggi Hafiz
 
The Three Essential Process Layers - New York Business Process Professionals ...
The Three Essential Process Layers - New York Business Process Professionals ...The Three Essential Process Layers - New York Business Process Professionals ...
The Three Essential Process Layers - New York Business Process Professionals ...Samuel Chin, PMP, CSM
 

Similar to Use case diagrams 2014 (20)

Systems diagrams &amp; visualization (uml &amp; data flow)exampl
Systems diagrams &amp; visualization (uml &amp; data flow)examplSystems diagrams &amp; visualization (uml &amp; data flow)exampl
Systems diagrams &amp; visualization (uml &amp; data flow)exampl
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
[[Srs]] online shopping website for TYBSC IT
[[Srs]] online shopping website for TYBSC IT[[Srs]] online shopping website for TYBSC IT
[[Srs]] online shopping website for TYBSC IT
 
Use case modeling
Use case modelingUse case modeling
Use case modeling
 
Business ProcessesMenu PageHere is a list of the topics you .docx
Business ProcessesMenu PageHere is a list of the topics you .docxBusiness ProcessesMenu PageHere is a list of the topics you .docx
Business ProcessesMenu PageHere is a list of the topics you .docx
 
OOAD U1.pptx
OOAD U1.pptxOOAD U1.pptx
OOAD U1.pptx
 
Splunk | Use Case Training
Splunk | Use Case TrainingSplunk | Use Case Training
Splunk | Use Case Training
 
Requirements Are Optional, Right?
Requirements Are Optional, Right?Requirements Are Optional, Right?
Requirements Are Optional, Right?
 
Online shopping cart system file
Online shopping cart system fileOnline shopping cart system file
Online shopping cart system file
 
unified modeling language diagrams
unified modeling language diagramsunified modeling language diagrams
unified modeling language diagrams
 
conversion-gate02.pptx
conversion-gate02.pptxconversion-gate02.pptx
conversion-gate02.pptx
 
Document Control
Document ControlDocument Control
Document Control
 
Software Requirements Engineering Methodologies
Software Requirements Engineering MethodologiesSoftware Requirements Engineering Methodologies
Software Requirements Engineering Methodologies
 
Use Case UML Diagram
Use Case UML DiagramUse Case UML Diagram
Use Case UML Diagram
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
 
3 interaction and_state_modeling
3 interaction and_state_modeling3 interaction and_state_modeling
3 interaction and_state_modeling
 
SDLC. BA Role
SDLC. BA RoleSDLC. BA Role
SDLC. BA Role
 
07 b 01workflowdefinition
07 b 01workflowdefinition07 b 01workflowdefinition
07 b 01workflowdefinition
 
Document Control
Document ControlDocument Control
Document Control
 
The Three Essential Process Layers - New York Business Process Professionals ...
The Three Essential Process Layers - New York Business Process Professionals ...The Three Essential Process Layers - New York Business Process Professionals ...
The Three Essential Process Layers - New York Business Process Professionals ...
 

Recently uploaded

How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Micromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersMicromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersChitralekhaTherkar
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docxPoojaSen20
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 

Recently uploaded (20)

How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Micromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersMicromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of Powders
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docx
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 

Use case diagrams 2014

  • 2. Definition – What does Use Case mean? • “A use case is a software and system engineering term that describes how a user uses a system to accomplish a particular goal. A use case acts as a software modeling technique that defines the features to be implemented and the resolution of any errors that may be encountered.” • http://www.techopedia.com/
  • 3. Use cases define the system. They show interactions between actors and the system to create a working structure. Although you might break them down to smaller components, uses cases will show: • Actors: Actors are the users that interact with the system, can be human roles or system. • Processes: Use cases show the processes that actors use to show the intended behaviour of the system. • System: Use cases should show all the processes, describing the activities for each actor that match the system functional requirements.
  • 5. ACTORS Actors are the people who will interact with the system, who does what. Typically in a simple Use Case diagram, they are depicted with stickmen.
  • 6. ACTORS Although typically they are depicted with stickmen………………….. Sometimes they are also shown more graphically
  • 7. ACTORS The actors are annotated with their role.. Administrator Operator Customer Client Manager
  • 8. ACTORS Actors are not ALWAYS people, however you can still depict them with stickmen. Administrator Administrator Customer Customer Bank Bank Website Server Website Server
  • 10. SYSTEM Ovals show each functional requirement of the system, the steps or processes. When we show these functional requirements as a whole process from start to finish we show them inside the system boundary.
  • 11. SYSTEM Select Customer We write the function in the ovals Order System Select Customer We give the overall process a title to show what we are depicting. Create Order Select Products Take Payment
  • 12. SYSTEM We show which actor interacts with each process Order System Select Customer Create Order Select Products Phone Operator Process Payment
  • 13. SYSTEM Regardless of whether this is a two way process, we show who initiates the process with an arrow. Order System Select Customer Create Order Select Products Phone Operator Process Payment
  • 14. SYSTEM Information from the system is shown with an arrow back to the user. Order System Select Customer Create Order Select Products Phone Operator Take Payment Order Status
  • 15. SYSTEM Often there are more than one user who interacts with the system. Online orders Select Customer Create Order Select Products Bank Make Payment Payment Authorisation Process Order Order Clerk Confirm Order Customer
  • 17. INCLUDES Sometimes a process has more steps to complete that process. Note the direction of arrows. Create Order <<include>> Add Delivery Address <<include>> Select Delivery Option
  • 18. INCLUDES Sometimes a process has a lot more steps to complete that process. <<include>> Create Order <<include>> Add Delivery Address Select Delivery Option <<include>> <<include>> Add Billing Address Enter Delivery Notes
  • 19. INCLUDES We only show the include on the main process if it does not become too confusing, the idea is to keep it simple Order System Select Customer <<include>> Search Customer Create Order <<include>> Delivery Option Phone Operator Select Products Take Payment
  • 20. INCLUDES Otherwise we show it separately Order System Select Customer Create Order <<include>> Create Order <<include>> Add Delivery Address Select Delivery Option <<include>> <<include>> Select Products Phone Operator Take Payment Add Billing Address Enter Delivery Notes Notice that this is not a FULL system, so we do NOT enclose it in the system box.
  • 21. INCLUDES It is perfectly acceptable to show some important ‘include’ inside the main system box, and some separately. Order System Select Customer <<include>> Search Customer Create Order Phone Operator Select Products Take Payment <<include>> Create Order <<include>> Add Delivery Address Select Delivery Option <<include>> <<include>> Add Billing Address Enter Delivery Notes
  • 22. INCLUDES It is also acceptable to show more than one set of breakdowns outside the main system box. Create Order <<include>> Order System Select Customer Add Delivery Address <<include>> Select Delivery Option <<include>> <<include>> <<include>> Add Billing Address Search Customer Enter Delivery Notes Create Order <<include>> Phone Operator Select Products Select Products <<include>> Search Products Enter Quantity <<include>> <<include>> Take Payment Select size Select Colour
  • 23. INCLUDES Includes is used to show a process that is always part of the parent process. Is it a parent process or a child process? • Try and think in levels. • An order management process might be shown as one process box in a larger system. • Its child processes might include select customer, create order, add products, take payment. • The children of these process might include, search customer, delivery type, quantity, etc. • Think of titles for the overall process, that becomes the parent.
  • 25. EXTENDS extend are different to include. Includes means that a process IS made up of smaller processes. extend means a process MIGHT include more smaller processes. Sometimes a process has a step that it might include to complete that process. Note the direction of arrows. Select Customer <<extend>> Search by Postcode <<extend>> New Customer
  • 26. EXTENDS In this example, an existing customer might order a lollypop or beach ball. No extend required. But if they were a new customer or ordered a chemical product, more processes might be required. Sometimes a process might include a lot more steps that could potentially be needed to complete that process, but not always. <<extend>> Create Order <<extend>> New Customer Include COSH <<extend>> <<extend>> Check Licence Check Age Restrictions
  • 27. EXTENDS We only show the extend on the main process if it does not become too confusing, the idea is to keep it simple. Order System Select Customer <<extend>> New Customer Create Order <<extend>> Arrange Air Mail Phone Operator Select Products Take Payment
  • 28. EXTENDS Otherwise we show it separately Order System <<extend>> Select Customer Create Order Create Order <<extend>> Safety Instructions Include COSH <<extend>> <<extend>> Select Products Phone Operator Check Licence Check Age Restrictions Take Payment Notice that this is not a FULL system, so we do NOT enclose it in the system box.
  • 29. EXTENDS It is perfectly acceptable to show some important ‘extend’ inside the main system box, and some separately. Order System Select Customer <<extend>> <<extend>> New Customer Create Order Create Order <<extend>> Safety Instructions Include COSH <<extend>> <<extend>> Phone Operator Select Products Take Payment Check Licence Check Age Restrictions
  • 30. EXTENDS Note that you can mix include and extend. It is also acceptable to show more than one set of breakdowns outside the main system box. Create Order <<include>> Order System Select Customer <<extend>> Delivery Options Include COSH <<extend>> <<extend>> <<include>> Search Customer Create Order Select Products <<extend>> Check Licence New Customer <<include>> Check Age Restrictions Select Products <<include>> Search Products <<extend>> <<extend>> Phone Operator Take Payment Select size Select Colour Enter Quantity
  • 32. LEVELS Where do I start? At what level am I creating the use case for? There is a difference between Business Level Use Case and System Level Use Case: • Business Level Use Case: Try to show the whole business in its most simple forms including all actors who will be included. • System Level Use Case: Try to show the system in complete processes. For example the customer management system, the order system or booking process.
  • 33. LEVELS Note that you would show the customers or shareholders at this level even if they have no direct contact with the actual system. Business Use Case Business use case is the top most level. Sooooper shops Ltd Orders Customer Order Clerk Fulfil Orders Manage Database Admin Supplier Invoices Payments Shares Manager Shareholder
  • 34. LEVELS Note that there is a line to the customer, yet no arrow. shows a data transfer but no initialisation. Note also, rather than have lines cross over which would confuse the system, an actor is just repeated A BUSINESS Use Case may show system, it will show where the information comes from even if that actor has no direct interaction with the system.. Orders System Select Customer Order Clerk Create Order Select Products Make Payment Bank Payment Authorisation Process Order Confirm Order Order Clerk Customer
  • 35. Levels Note that the customer, is shown on this diagram to clarify, but is not necessary. Note in this system it is clear that the customer has no direct interaction. A System Use Case will show a complete process rather than an overall picture. Orders System Select Customer Create Order <Telephone Order> Order Clerk Select Products Order Clerk Make Payment Payment Authorisation <Confirm Order> Process Order Customer Confirm Order Bank Customer
  • 36. LEVELS A System Use Case will show a complete process rather than an overall picture. Orders System The subtle difference in this Use Case is that the system sends out a confirmation email direct to the customer. Select Customer Create Order <Telephone Order> Order Clerk Select Products Order Clerk Make Payment Payment Authorisation Process Order Customer Confirm Order Bank Customer
  • 37. LEVELS Remember to show the FULL system process including any further levels of process. Create Order <<include>> Order System Select Customer <<extend>> Delivery Options Include COSH <<extend>> <<extend>> <<include>> <<extend>> Search Customer New Customer Create Order Phone Operator Select Products Check Licence <<include>> Check Age Restrictions Select Products <<include>> Search Products <<extend>> <<extend>> Take Payment Select size Select Colour Enter Quantity
  • 38. LEVELS Note that this process has been simplified for example purposes and would probably include some more process as discussed earlier. These Use Cases are unlikely to be used in isolation, and are likely to have an additional narrative. Order System Select Customer <<include>> <<extend>> Search Customer New Customer Create Order Select Products Take Payment Phone Operator • Operator receives a call from the customer. • Operator selects the customer. • This will include searching to find if the customer exists. • This may also include creating a new customer. • Operator will create the order. • Operator will select products. • Operator will take payment.
  • 40. THINK! It is important to note that there is not always a „correct‟ version. But there are wrong ways, so ask yourself: • Actors: Am I correctly showing who has access to the system, who uses which process? • System: Is it clear what the system does? • Goals: Is the full process shown? • Clear: Can I clarify the diagrams? • Too Simple: Do I need to add more breakdowns to clarify the process? • Too Complicated: Do I need to split some breakdowns out of the main system?
  • 41. THINK! I have seen „extends‟ not „extend‟. You only use „extend‟ Why? UML changes over time to keep up with real world systems. • Extends: Used to be shown on models as <<extends>>, but was shortened to <<extend>> to keep the diagram as short as possible. • Both are still widely accepted and neither is wrong. <<extend>> is just more up to date.
  • 42. THINK! I have seen „includes‟ not „include‟. You only use „include‟ Why? UML changes over time to keep up with real world systems. • Includes: Used to be shown on models as <<includes>>, but was shortened to <<include>> to keep the diagram as short as possible. • Both are still widely accepted and neither is wrong. <<include>> is just more up to date.
  • 43. THINK! I have seen „include‟ and „uses‟. You have not used „uses‟, why not? In UML diagrams, „include‟ is now used now to cover both includes and uses. • Includes: <<includes>> used to be shown on models just to show that a sub process was an integral part of the main process. • Uses: <<uses>> used to be shown on models to show that a sub process was a re-usable part of the main process. It may also have been used elsewhere. • Both are still widely accepted and neither is wrong. <<include>> is just more up to date.