SlideShare a Scribd company logo
1 of 42
Download to read offline
Use Case Diagrams
Tutorial
What is a use case?
• A requirements analysis concept
• A case of a use of the system/product
• Describes the system's actions from a the point of
view of a user
• Tells a story
• A sequence of events involving
• Interactions of a user with the system
• Specifies one aspect of the behavior of a system,
without specifying the structure of the system
• Is oriented toward satisfying a user's goal
How do we describe use cases?
• Textual or tabular descriptions
• User stories
• Diagrams
Use Case Descriptions
• actors - something with a behavior or role, e.g., a
person, another system, organization.
• scenario - a specific sequence of actions and
interactions between actors and the system, a.k.a. a
use case instance
• use case - a collection of related success and failure
scenarios, describing actors using the system to
support a goal.
What is an Actor?
• Include all user roles that interact with the system
• Include system components only if they responsible for
initiating/triggering a use case.
• For example, a timer that triggers sending of an e-mail
reminder
• primary - a user whose goals are fulfilled by the system
• importance: define user goals
• supporting - provides a service (e.g., info) to the system
• importance: clarify external interfaces and protocols
• offstage - has an interest in the behavior but is not primary or
supporting, e.g., government
• importance: ensure all interests (even subtle) are identified
and satisfied
Finding Actors [1]
External objects that produce/consume data:
• Must serve as sources and destinations for data
• Must be external to the system
Finding Actors [2]
Ask the following questions:
• Who are the system’s primary users?
• Who requires system support for daily tasks?
• Who are the system’s secondary users?
• What hardware does the system handle?
• Which other (if any) systems interact with the system in
question?
• Do any entities interacting with the system perform
multiple roles as actors?
• Which other entities (human or otherwise) might have an
interest in the system's output?
What is a user story?
1.Who?
2.Does what?
3.And why?
As a <type of user>,
I want <some behavior from the system>
so that <some value is achieved>
•An abbreviated description of a use case
•Used in agile development
Answers 3 questions:
Use Case Diagrams
• A picture
• describes how actors relate to use cases
• and use cases relate to one another
• Diagrams are not essential
• They are helpful in giving an overview, but only
secondary in importance to the textual description
• They do not capture the full information of the
actual use cases
• In contrast, text is essential
Use Case Diagram Objective
• Built in early stages of development
•  Purpose
• Specify the context of a system
• Capture the requirements of a system
• Validate a systems architecture
• Drive implementation and generate test
cases
• Developed by analysts and domain
experts
How do use case diagrams fit in?
This applies also to use case descriptions.
Diagram reproduced from www.edrawsoft.com.
Example Use-Case Diagram
A standard form of use case diagram is defined in the Unified Modeling Language.
13
Elements of use case diagram: Actor
• Actor is someone interacting with use case
(system function). Named by noun.
• Similar to the concept of user, but
a user can play different roles;
(example: a prof. can be instructor and
researcher – plays 2 roles with two systems).
• Actor triggers use case.
• Actor has responsibility toward the system (inputs),
and Actor have expectations from the system (outputs).
Name
14
Elements of use case diagram: Use Case
• System function (process – automated or manual).
• Named by verb.
Do something
• Each Actor must be linked to a use case, while some use cases
may not be linked to actors.
= Use Case
15
Elements of use case diagram: Other details
Boundary of system
<<include>>
Include relationship between Use Cases (one UC must
call another; e.g., Login UC includes User Authentication UC)
<<extend>>
Extend relationship between Use Cases (one UC calls
Another under certain condition; think of if-then decision points)
Connection between Actor and Use Case
Linking Use Cases
• Association relationships
• Generalization relationships
• One element (child) "is based on" another element
(parent)
• Include relationships
• One use case (base) includes the functionality of
another (inclusion case)
• Supports re-use of functionality
• Extend relationships
• One use case (extension) extends the behavior of
another (base)
Use Case Levels
18
• The child use case inherits the
behavior and meaning of the
parent use case.
• The child may add to or
override the behavior of its parent.
parent
child
1. Generalization
19
registration
graduate
registration
non-graduate
registration
More about Generalization
Generalization Example
The actor Order Registry
Clerk can instantiate the
general use case Place
Order.
Place Order can also be
specialized by the use
cases Phone Order or
Internet Order.
Generalization Example
22
• The base use case explicitly incorporates the
behavior of another use case at a location
specified in the base.
• The included use case never stands alone. It
only occurs as a part of some larger base that
includes it.
base included<<include>>
2. Include
‫מידע‬ ‫מערכות‬ ‫ניתוח‬ 23
More about Include
Enables us to avoid describing the same flow of
events several times by putting the common
behavior in a use case of its own.
updating
grades
output
generating
verifying
student id
<<include>>
<<include>>
24
Include relationship
• Include relationship – a standard case linked to a
mandatory use case.
• Standard use case can NOT execute without the include
case  tight coupling .
• Example: to Authorize Car Loan (standard use case),
a clerk must run Check Client’s Credit History (include use case).
• The standard UC includes the mandatory UC (use the verb
to figure direction arrow).
25
Reading use case diagram with Include
relationship
Include Example
27
• The base use case implicitly incorporates the
behavior of another use case at certain points
called extension points.
• The base use case may stand alone, but under
certain conditions its behavior may be
extended by the behavior of another use case.
base extending<<extend>>
3. Extend
28
More about Extend
• Enables to model optional behavior or
branching under conditions.
Exam copy
request
Exam-grade
appeal
<<extend>>
29
• Extend relationship – linking an optional use case
to a standard use case.
Extend relationship
• Example: Register Course (standard use case) may have
Register for Special Class (extend use case) – class for
non-standard students, in unusual time, with special
topics, requiring extra fees…).
• The optional UC extends the standard UC
• Standard use case can execute without the extend case
 loose coupling.
Reading extend relationship
Extend Example #1
Extend Example #2
Extend Example #2 cont.
33
Actors may be connected to use cases by
associations, indicating that the actor and the
use case communicate with one another using
messages.
updating
grades
faculty
Relationships between Use Cases
and Actors
34
place
phone call
cellular
network
user
receive
phone call
place
conference
call
receive
additional
call
use
scheduler
<<extend>>
<<extend>>
Cellular Telephone
Example #1
Example #2
Altered State University (ASU) Registration System
1. Professors indicate which courses they will teach on-line.
2. A course catalog can be printed
3. Allow students to select on-line four courses for upcoming
semester.
4. No course may have more than 10 students or less than 3
students.
5. When the registration is completed, the system sends
information to the billing system.
6. Professors can obtain course rosters on-line.
7. Students can add or drop classes on-line.
Example #2 cont.
Altered State University (ASU) Registration System
37
How to create use case diagram
1. List main system functions (use cases) in a column:
– think of business events demanding system’s response
– users’ goals/needs to be accomplished via the system
– Create, Read, Update, Delete (CRUD) data tasks
– Naming use cases – user’s needs usually can be translated in data tasks
2. Draw ovals around the function labels
3. Draw system boundary
4. Draw actors and connect them with use cases (if more intuitive, this can be done as
step 2)
5. Specify include and extend relationships between use cases (yes, at the end - not
before, as this may pull you into process thinking, which does not apply in UC
diagramming).
Use-Case Diagrams: Example [1]
I. Begin with a Use Case!
A user placing an order with a sales company might
follow these steps :
1. Browse catalog and select items.
2. Call sales representative.
3. Supply shipping information.
4. Supply payment information.
5. Receive conformation number from salesperson.
II. Then translate Use Case sequence into Diagram
Use-Case Diagrams: Example [2]
The salesperson could also
be included in this use case
diagram because the
salesperson is also
interacting with the
ordering system.
Use-Case Diagram Case Study [1]
Vending Machine
After client interview the following system scenarios were
identified:
– A customer buys a product
– The supplier restocks the machine
– The supplier collects money from the machine
On the basis of these scenarios, the following three actors
can be identified:
Customer; Supplier; Collector (in this case Collector=Supplier)
Use-Case Diagram Case Study [2]
Use-Case Diagram Case Study [3]
Introducing annotations (notes) and constraints.

More Related Content

What's hot

Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineeringPreeti Mishra
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case DiagramKumar
 
Lecture04- Use Case Diagrams
Lecture04- Use Case DiagramsLecture04- Use Case Diagrams
Lecture04- Use Case Diagramsartgreen
 
Software Engineering :UML class diagrams
Software Engineering :UML class diagramsSoftware Engineering :UML class diagrams
Software Engineering :UML class diagramsAjit Nayak
 
SE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context ModelSE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context ModelAmr E. Mohamed
 
UML diagrams and symbols
UML diagrams and symbolsUML diagrams and symbols
UML diagrams and symbolsKumar
 
Requirements elicitation
Requirements elicitationRequirements elicitation
Requirements elicitationSyed Zaid Irshad
 
User Interface Analysis and Design
User Interface Analysis and DesignUser Interface Analysis and Design
User Interface Analysis and Design Saqib Raza
 
Requirements engineering process in software engineering
Requirements engineering process in software engineeringRequirements engineering process in software engineering
Requirements engineering process in software engineeringPreeti Mishra
 
Ian Sommerville, Software Engineering, 9th Edition Ch 4
Ian Sommerville,  Software Engineering, 9th Edition Ch 4Ian Sommerville,  Software Engineering, 9th Edition Ch 4
Ian Sommerville, Software Engineering, 9th Edition Ch 4Mohammed Romi
 
Class diagrams
Class diagramsClass diagrams
Class diagramsNadia_Nazeer
 
1. introduction to uml
1. introduction to uml1. introduction to uml
1. introduction to umlPRABU M
 
UML Class Diagram G-3-122139
UML Class Diagram G-3-122139UML Class Diagram G-3-122139
UML Class Diagram G-3-122139Hansi Thenuwara
 
Slide 4 Interaction Diagram
Slide 4 Interaction DiagramSlide 4 Interaction Diagram
Slide 4 Interaction DiagramNiloy Rocker
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagramRahul Pola
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling Benazir Fathima
 
1.1 The nature of software.ppt
1.1 The nature of software.ppt1.1 The nature of software.ppt
1.1 The nature of software.pptJAYAPRIYAR7
 
Object diagram
Object diagramObject diagram
Object diagramRahul Pola
 

What's hot (20)

Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
 
Lecture04- Use Case Diagrams
Lecture04- Use Case DiagramsLecture04- Use Case Diagrams
Lecture04- Use Case Diagrams
 
Software Engineering :UML class diagrams
Software Engineering :UML class diagramsSoftware Engineering :UML class diagrams
Software Engineering :UML class diagrams
 
SE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context ModelSE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context Model
 
UML diagrams and symbols
UML diagrams and symbolsUML diagrams and symbols
UML diagrams and symbols
 
Requirements elicitation
Requirements elicitationRequirements elicitation
Requirements elicitation
 
Unit 2
Unit 2Unit 2
Unit 2
 
User Interface Analysis and Design
User Interface Analysis and DesignUser Interface Analysis and Design
User Interface Analysis and Design
 
Requirements engineering process in software engineering
Requirements engineering process in software engineeringRequirements engineering process in software engineering
Requirements engineering process in software engineering
 
Ian Sommerville, Software Engineering, 9th Edition Ch 4
Ian Sommerville,  Software Engineering, 9th Edition Ch 4Ian Sommerville,  Software Engineering, 9th Edition Ch 4
Ian Sommerville, Software Engineering, 9th Edition Ch 4
 
Class diagrams
Class diagramsClass diagrams
Class diagrams
 
1. introduction to uml
1. introduction to uml1. introduction to uml
1. introduction to uml
 
UML Class Diagram G-3-122139
UML Class Diagram G-3-122139UML Class Diagram G-3-122139
UML Class Diagram G-3-122139
 
Slide 4 Interaction Diagram
Slide 4 Interaction DiagramSlide 4 Interaction Diagram
Slide 4 Interaction Diagram
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagram
 
Activity diagram
Activity diagramActivity diagram
Activity diagram
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
 
1.1 The nature of software.ppt
1.1 The nature of software.ppt1.1 The nature of software.ppt
1.1 The nature of software.ppt
 
Object diagram
Object diagramObject diagram
Object diagram
 

Similar to Use case diagrams

Use case modeling & analysis v 1
Use case modeling & analysis v 1Use case modeling & analysis v 1
Use case modeling & analysis v 1JIGAR MAKHIJA
 
2.1 usecase diagram
2.1 usecase diagram2.1 usecase diagram
2.1 usecase diagramAshenafi Workie
 
Lecture no 8 use case modeling and use case diagrams
Lecture no 8 use case modeling and use case diagramsLecture no 8 use case modeling and use case diagrams
Lecture no 8 use case modeling and use case diagramsnaveed428
 
Lab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramLab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramFarah Ahmed
 
Use Case Diagram.pptx
Use Case Diagram.pptxUse Case Diagram.pptx
Use Case Diagram.pptxGenta Sahuri
 
SE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdfSE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdfAZKANAAZ1
 
Requirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineeringRequirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineeringsnehalkulkarni74
 
conversion-gate02.pptx
conversion-gate02.pptxconversion-gate02.pptx
conversion-gate02.pptxNouraBaccar1
 
Ppt ooad ooad3unit
Ppt ooad ooad3unitPpt ooad ooad3unit
Ppt ooad ooad3unitramyalaksha
 
Use Case Modeling In UML
Use Case Modeling In UMLUse Case Modeling In UML
Use Case Modeling In UMLSyed Hassan Ali
 
System Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingSystem Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingBootNeck1
 
Presentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptxPresentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptxazida3
 
Lesson02_Use Case Diagrams
Lesson02_Use Case DiagramsLesson02_Use Case Diagrams
Lesson02_Use Case DiagramsMarwa Ali Eissa
 
Chapter 4.pptx
Chapter 4.pptxChapter 4.pptx
Chapter 4.pptxzaaakditte
 
Software engineering
Software engineeringSoftware engineering
Software engineeringrenukarenuka9
 
Use Case Modelling.pptx
Use Case Modelling.pptxUse Case Modelling.pptx
Use Case Modelling.pptxazida3
 
Use case Diagram
Use case DiagramUse case Diagram
Use case DiagramPreeti Mishra
 

Similar to Use case diagrams (20)

Use case modeling
Use case modelingUse case modeling
Use case modeling
 
Use case modeling & analysis v 1
Use case modeling & analysis v 1Use case modeling & analysis v 1
Use case modeling & analysis v 1
 
2.1 usecase diagram
2.1 usecase diagram2.1 usecase diagram
2.1 usecase diagram
 
Lecture no 8 use case modeling and use case diagrams
Lecture no 8 use case modeling and use case diagramsLecture no 8 use case modeling and use case diagrams
Lecture no 8 use case modeling and use case diagrams
 
Lab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramLab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagram
 
Use Case Diagram.pptx
Use Case Diagram.pptxUse Case Diagram.pptx
Use Case Diagram.pptx
 
SE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdfSE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdf
 
Requirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineeringRequirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineering
 
conversion-gate02.pptx
conversion-gate02.pptxconversion-gate02.pptx
conversion-gate02.pptx
 
Ppt ooad ooad3unit
Ppt ooad ooad3unitPpt ooad ooad3unit
Ppt ooad ooad3unit
 
Use Case Modeling In UML
Use Case Modeling In UMLUse Case Modeling In UML
Use Case Modeling In UML
 
System Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingSystem Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event Scheduling
 
chapter_5_5.ppt
chapter_5_5.pptchapter_5_5.ppt
chapter_5_5.ppt
 
Presentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptxPresentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptx
 
Use case diagram
Use case diagramUse case diagram
Use case diagram
 
Lesson02_Use Case Diagrams
Lesson02_Use Case DiagramsLesson02_Use Case Diagrams
Lesson02_Use Case Diagrams
 
Chapter 4.pptx
Chapter 4.pptxChapter 4.pptx
Chapter 4.pptx
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Use Case Modelling.pptx
Use Case Modelling.pptxUse Case Modelling.pptx
Use Case Modelling.pptx
 
Use case Diagram
Use case DiagramUse case Diagram
Use case Diagram
 

More from Fajar Baskoro

Generasi Terampil Digital Skill-2023.pptx
Generasi Terampil Digital Skill-2023.pptxGenerasi Terampil Digital Skill-2023.pptx
Generasi Terampil Digital Skill-2023.pptxFajar Baskoro
 
Cara Membuat Kursus Online Wordpress-tutorstarter
Cara Membuat Kursus Online Wordpress-tutorstarterCara Membuat Kursus Online Wordpress-tutorstarter
Cara Membuat Kursus Online Wordpress-tutorstarterFajar Baskoro
 
PPT-Kick Off Double Track 2024 melaksanakan Festival Ramadhan
PPT-Kick Off Double Track 2024 melaksanakan Festival RamadhanPPT-Kick Off Double Track 2024 melaksanakan Festival Ramadhan
PPT-Kick Off Double Track 2024 melaksanakan Festival RamadhanFajar Baskoro
 
Buku Inovasi 2023 - 2024 konsep capaian KUS
Buku Inovasi 2023 - 2024 konsep capaian  KUSBuku Inovasi 2023 - 2024 konsep capaian  KUS
Buku Inovasi 2023 - 2024 konsep capaian KUSFajar Baskoro
 
Pemaparan Sosialisasi Program Dual Track 2024.pptx
Pemaparan Sosialisasi Program Dual Track 2024.pptxPemaparan Sosialisasi Program Dual Track 2024.pptx
Pemaparan Sosialisasi Program Dual Track 2024.pptxFajar Baskoro
 
Executive Millennial Entrepreneur Award 2023-1a-1.pdf
Executive Millennial Entrepreneur Award  2023-1a-1.pdfExecutive Millennial Entrepreneur Award  2023-1a-1.pdf
Executive Millennial Entrepreneur Award 2023-1a-1.pdfFajar Baskoro
 
1-Executive Millennial Entrepreneur Award 2023-1-cetak.pptx
1-Executive Millennial Entrepreneur Award  2023-1-cetak.pptx1-Executive Millennial Entrepreneur Award  2023-1-cetak.pptx
1-Executive Millennial Entrepreneur Award 2023-1-cetak.pptxFajar Baskoro
 
Executive Millennial Entrepreneur Award 2023-1.pptx
Executive Millennial Entrepreneur Award  2023-1.pptxExecutive Millennial Entrepreneur Award  2023-1.pptx
Executive Millennial Entrepreneur Award 2023-1.pptxFajar Baskoro
 
Pemrograman Mobile - JetPack Compose1.pptx
Pemrograman Mobile - JetPack Compose1.pptxPemrograman Mobile - JetPack Compose1.pptx
Pemrograman Mobile - JetPack Compose1.pptxFajar Baskoro
 
Evaluasi KPP Program Dual Track Provinsi Kaltim
Evaluasi KPP Program Dual Track Provinsi KaltimEvaluasi KPP Program Dual Track Provinsi Kaltim
Evaluasi KPP Program Dual Track Provinsi KaltimFajar Baskoro
 
foto tenda digital skill program dari sekolah
foto tenda digital skill program dari sekolahfoto tenda digital skill program dari sekolah
foto tenda digital skill program dari sekolahFajar Baskoro
 
Meraih Peluang di Gig Economy yang cocok bagi remaja
Meraih Peluang di Gig Economy yang cocok bagi remajaMeraih Peluang di Gig Economy yang cocok bagi remaja
Meraih Peluang di Gig Economy yang cocok bagi remajaFajar Baskoro
 
Membangun aplikasi mobile dengan Appsheet
Membangun aplikasi mobile dengan AppsheetMembangun aplikasi mobile dengan Appsheet
Membangun aplikasi mobile dengan AppsheetFajar Baskoro
 
DualTrack-2023.pptx
DualTrack-2023.pptxDualTrack-2023.pptx
DualTrack-2023.pptxFajar Baskoro
 
womenatwork.pdf
womenatwork.pdfwomenatwork.pdf
womenatwork.pdfFajar Baskoro
 
Transition education to employment.pdf
Transition education to employment.pdfTransition education to employment.pdf
Transition education to employment.pdfFajar Baskoro
 

More from Fajar Baskoro (20)

Generasi Terampil Digital Skill-2023.pptx
Generasi Terampil Digital Skill-2023.pptxGenerasi Terampil Digital Skill-2023.pptx
Generasi Terampil Digital Skill-2023.pptx
 
Cara Membuat Kursus Online Wordpress-tutorstarter
Cara Membuat Kursus Online Wordpress-tutorstarterCara Membuat Kursus Online Wordpress-tutorstarter
Cara Membuat Kursus Online Wordpress-tutorstarter
 
PPT-Kick Off Double Track 2024 melaksanakan Festival Ramadhan
PPT-Kick Off Double Track 2024 melaksanakan Festival RamadhanPPT-Kick Off Double Track 2024 melaksanakan Festival Ramadhan
PPT-Kick Off Double Track 2024 melaksanakan Festival Ramadhan
 
Buku Inovasi 2023 - 2024 konsep capaian KUS
Buku Inovasi 2023 - 2024 konsep capaian  KUSBuku Inovasi 2023 - 2024 konsep capaian  KUS
Buku Inovasi 2023 - 2024 konsep capaian KUS
 
Pemaparan Sosialisasi Program Dual Track 2024.pptx
Pemaparan Sosialisasi Program Dual Track 2024.pptxPemaparan Sosialisasi Program Dual Track 2024.pptx
Pemaparan Sosialisasi Program Dual Track 2024.pptx
 
Executive Millennial Entrepreneur Award 2023-1a-1.pdf
Executive Millennial Entrepreneur Award  2023-1a-1.pdfExecutive Millennial Entrepreneur Award  2023-1a-1.pdf
Executive Millennial Entrepreneur Award 2023-1a-1.pdf
 
1-Executive Millennial Entrepreneur Award 2023-1-cetak.pptx
1-Executive Millennial Entrepreneur Award  2023-1-cetak.pptx1-Executive Millennial Entrepreneur Award  2023-1-cetak.pptx
1-Executive Millennial Entrepreneur Award 2023-1-cetak.pptx
 
Executive Millennial Entrepreneur Award 2023-1.pptx
Executive Millennial Entrepreneur Award  2023-1.pptxExecutive Millennial Entrepreneur Award  2023-1.pptx
Executive Millennial Entrepreneur Award 2023-1.pptx
 
Pemrograman Mobile - JetPack Compose1.pptx
Pemrograman Mobile - JetPack Compose1.pptxPemrograman Mobile - JetPack Compose1.pptx
Pemrograman Mobile - JetPack Compose1.pptx
 
Evaluasi KPP Program Dual Track Provinsi Kaltim
Evaluasi KPP Program Dual Track Provinsi KaltimEvaluasi KPP Program Dual Track Provinsi Kaltim
Evaluasi KPP Program Dual Track Provinsi Kaltim
 
foto tenda digital skill program dari sekolah
foto tenda digital skill program dari sekolahfoto tenda digital skill program dari sekolah
foto tenda digital skill program dari sekolah
 
Meraih Peluang di Gig Economy yang cocok bagi remaja
Meraih Peluang di Gig Economy yang cocok bagi remajaMeraih Peluang di Gig Economy yang cocok bagi remaja
Meraih Peluang di Gig Economy yang cocok bagi remaja
 
Membangun aplikasi mobile dengan Appsheet
Membangun aplikasi mobile dengan AppsheetMembangun aplikasi mobile dengan Appsheet
Membangun aplikasi mobile dengan Appsheet
 
epl1.pdf
epl1.pdfepl1.pdf
epl1.pdf
 
user.docx
user.docxuser.docx
user.docx
 
Dtmart.pptx
Dtmart.pptxDtmart.pptx
Dtmart.pptx
 
DualTrack-2023.pptx
DualTrack-2023.pptxDualTrack-2023.pptx
DualTrack-2023.pptx
 
BADGE.pptx
BADGE.pptxBADGE.pptx
BADGE.pptx
 
womenatwork.pdf
womenatwork.pdfwomenatwork.pdf
womenatwork.pdf
 
Transition education to employment.pdf
Transition education to employment.pdfTransition education to employment.pdf
Transition education to employment.pdf
 

Recently uploaded

Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 

Recently uploaded (20)

Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 

Use case diagrams

  • 2. What is a use case? • A requirements analysis concept • A case of a use of the system/product • Describes the system's actions from a the point of view of a user • Tells a story • A sequence of events involving • Interactions of a user with the system • Specifies one aspect of the behavior of a system, without specifying the structure of the system • Is oriented toward satisfying a user's goal
  • 3. How do we describe use cases? • Textual or tabular descriptions • User stories • Diagrams
  • 4. Use Case Descriptions • actors - something with a behavior or role, e.g., a person, another system, organization. • scenario - a specific sequence of actions and interactions between actors and the system, a.k.a. a use case instance • use case - a collection of related success and failure scenarios, describing actors using the system to support a goal.
  • 5. What is an Actor? • Include all user roles that interact with the system • Include system components only if they responsible for initiating/triggering a use case. • For example, a timer that triggers sending of an e-mail reminder • primary - a user whose goals are fulfilled by the system • importance: define user goals • supporting - provides a service (e.g., info) to the system • importance: clarify external interfaces and protocols • offstage - has an interest in the behavior but is not primary or supporting, e.g., government • importance: ensure all interests (even subtle) are identified and satisfied
  • 6. Finding Actors [1] External objects that produce/consume data: • Must serve as sources and destinations for data • Must be external to the system
  • 7. Finding Actors [2] Ask the following questions: • Who are the system’s primary users? • Who requires system support for daily tasks? • Who are the system’s secondary users? • What hardware does the system handle? • Which other (if any) systems interact with the system in question? • Do any entities interacting with the system perform multiple roles as actors? • Which other entities (human or otherwise) might have an interest in the system's output?
  • 8. What is a user story? 1.Who? 2.Does what? 3.And why? As a <type of user>, I want <some behavior from the system> so that <some value is achieved> •An abbreviated description of a use case •Used in agile development Answers 3 questions:
  • 9. Use Case Diagrams • A picture • describes how actors relate to use cases • and use cases relate to one another • Diagrams are not essential • They are helpful in giving an overview, but only secondary in importance to the textual description • They do not capture the full information of the actual use cases • In contrast, text is essential
  • 10. Use Case Diagram Objective • Built in early stages of development •  Purpose • Specify the context of a system • Capture the requirements of a system • Validate a systems architecture • Drive implementation and generate test cases • Developed by analysts and domain experts
  • 11. How do use case diagrams fit in? This applies also to use case descriptions. Diagram reproduced from www.edrawsoft.com.
  • 12. Example Use-Case Diagram A standard form of use case diagram is defined in the Unified Modeling Language.
  • 13. 13 Elements of use case diagram: Actor • Actor is someone interacting with use case (system function). Named by noun. • Similar to the concept of user, but a user can play different roles; (example: a prof. can be instructor and researcher – plays 2 roles with two systems). • Actor triggers use case. • Actor has responsibility toward the system (inputs), and Actor have expectations from the system (outputs). Name
  • 14. 14 Elements of use case diagram: Use Case • System function (process – automated or manual). • Named by verb. Do something • Each Actor must be linked to a use case, while some use cases may not be linked to actors. = Use Case
  • 15. 15 Elements of use case diagram: Other details Boundary of system <<include>> Include relationship between Use Cases (one UC must call another; e.g., Login UC includes User Authentication UC) <<extend>> Extend relationship between Use Cases (one UC calls Another under certain condition; think of if-then decision points) Connection between Actor and Use Case
  • 16. Linking Use Cases • Association relationships • Generalization relationships • One element (child) "is based on" another element (parent) • Include relationships • One use case (base) includes the functionality of another (inclusion case) • Supports re-use of functionality • Extend relationships • One use case (extension) extends the behavior of another (base)
  • 18. 18 • The child use case inherits the behavior and meaning of the parent use case. • The child may add to or override the behavior of its parent. parent child 1. Generalization
  • 20. Generalization Example The actor Order Registry Clerk can instantiate the general use case Place Order. Place Order can also be specialized by the use cases Phone Order or Internet Order.
  • 22. 22 • The base use case explicitly incorporates the behavior of another use case at a location specified in the base. • The included use case never stands alone. It only occurs as a part of some larger base that includes it. base included<<include>> 2. Include
  • 23. ‫מידע‬ ‫מערכות‬ ‫ניתוח‬ 23 More about Include Enables us to avoid describing the same flow of events several times by putting the common behavior in a use case of its own. updating grades output generating verifying student id <<include>> <<include>>
  • 24. 24 Include relationship • Include relationship – a standard case linked to a mandatory use case. • Standard use case can NOT execute without the include case  tight coupling . • Example: to Authorize Car Loan (standard use case), a clerk must run Check Client’s Credit History (include use case). • The standard UC includes the mandatory UC (use the verb to figure direction arrow).
  • 25. 25 Reading use case diagram with Include relationship
  • 27. 27 • The base use case implicitly incorporates the behavior of another use case at certain points called extension points. • The base use case may stand alone, but under certain conditions its behavior may be extended by the behavior of another use case. base extending<<extend>> 3. Extend
  • 28. 28 More about Extend • Enables to model optional behavior or branching under conditions. Exam copy request Exam-grade appeal <<extend>>
  • 29. 29 • Extend relationship – linking an optional use case to a standard use case. Extend relationship • Example: Register Course (standard use case) may have Register for Special Class (extend use case) – class for non-standard students, in unusual time, with special topics, requiring extra fees…). • The optional UC extends the standard UC • Standard use case can execute without the extend case  loose coupling. Reading extend relationship
  • 33. 33 Actors may be connected to use cases by associations, indicating that the actor and the use case communicate with one another using messages. updating grades faculty Relationships between Use Cases and Actors
  • 35. Example #2 Altered State University (ASU) Registration System 1. Professors indicate which courses they will teach on-line. 2. A course catalog can be printed 3. Allow students to select on-line four courses for upcoming semester. 4. No course may have more than 10 students or less than 3 students. 5. When the registration is completed, the system sends information to the billing system. 6. Professors can obtain course rosters on-line. 7. Students can add or drop classes on-line.
  • 36. Example #2 cont. Altered State University (ASU) Registration System
  • 37. 37 How to create use case diagram 1. List main system functions (use cases) in a column: – think of business events demanding system’s response – users’ goals/needs to be accomplished via the system – Create, Read, Update, Delete (CRUD) data tasks – Naming use cases – user’s needs usually can be translated in data tasks 2. Draw ovals around the function labels 3. Draw system boundary 4. Draw actors and connect them with use cases (if more intuitive, this can be done as step 2) 5. Specify include and extend relationships between use cases (yes, at the end - not before, as this may pull you into process thinking, which does not apply in UC diagramming).
  • 38. Use-Case Diagrams: Example [1] I. Begin with a Use Case! A user placing an order with a sales company might follow these steps : 1. Browse catalog and select items. 2. Call sales representative. 3. Supply shipping information. 4. Supply payment information. 5. Receive conformation number from salesperson. II. Then translate Use Case sequence into Diagram
  • 39. Use-Case Diagrams: Example [2] The salesperson could also be included in this use case diagram because the salesperson is also interacting with the ordering system.
  • 40. Use-Case Diagram Case Study [1] Vending Machine After client interview the following system scenarios were identified: – A customer buys a product – The supplier restocks the machine – The supplier collects money from the machine On the basis of these scenarios, the following three actors can be identified: Customer; Supplier; Collector (in this case Collector=Supplier)
  • 42. Use-Case Diagram Case Study [3] Introducing annotations (notes) and constraints.