SlideShare uma empresa Scribd logo
1 de 20
USE CASE DIAGRAM
ICE 4212
System Analysis and Software Engineering Sessional
Coming up: Introduction
1
Md. Arafat Hossain
Lecturer
Dept. Of ICE
Introduction
 Use Case: “... a typical interaction between a
user and a computer system”, Booch
– Here, “user” is anything that needs or invokes the functionality
of the system
– “Computer system” is the system being modeled
 Use cases capture and document the user-
visible functionality of a system (functional
requirements)
 Use cases capture how the system will benefit
the user
 Each use case represents a discrete goal for
the user
2
Coming up: Example Use Case Diagram
Example Use Case Diagram
Coming up: Use Case Diagrams
3
Use Case Diagrams
 Use Case Diagrams provide a visual way to
document user goals and explore possible
functionality
 Three primary modeling components:
– Actors
– Use Cases
Authorized
Staff Worker
Teacher
Student
Record class grades
– Relationships between
use cases
Review Transcripts
4
Coming up: Actors
Actors
 Actors are people or external systems that
need to interact with our system
5
Coming up: Relationships Between Actors
 Who or what will use the main functionality of the system?
 Who or what will provide input to this system?
 Who or what will use output from this system?
 Who will need support from the system to do their work?
 Are there any other software systems with which this one
needs to interact
 Are there any hardware devices used or controlled by this
system?
Answer these questions to find actors for an iPod
Finding Actors
Relationships Between Actors
 Actors can be related by
generalization/specialization
 Actors are classifiers (not individual users)
Student
Graduate
Student
6
Coming up: Use Case Relationships
Use Case Relationships
Includes
Extends
Generalization
7
Coming up: Use-Case Relationships
After a while you realize extends and generalization are not too
different. Just know generalization and includes… forget about
extends (the difference is only in intent)
Use-Case Relationships
 Includes Dependency: Defines how one
use case can invoke behavior defined by
another use case
Teacher
Alter Student Grade
Record Grades for a
Section
<<includes>>
8
Coming up: Use-Case Relationships
Use-Case Relationships
 Extends dependency: defines a use-case
that is a variation of another, usually for
handling an abnormal situation
Authorized
Staff Worker
Alter Student Grade
Alter student grade for
a class taken more
than a year ago
<<extends>>
9
Coming up: Use-Case Relations
Use-Case Relations
 Generalization: Defines one use case as a
generalization of another. Replaces generic
functionality with alternate implementation
Teacher
Alter Student Grade
Alter Student Grade for
a Graduate Course
10
Coming up: Documenting Use Cases
Documenting Use Cases
Coming up: Benefits of Use Cases
11
List
Actors
List External
Events
Determine
expected behavior
Name behaviors as
use cases
Add relations
(includes, extends,
generalization)
Document use case
(basic flow, alternate,
exception)
What is system response
to external event? What is
the user’s goal?
Be Patient… let them unfold
Benefits of Use Cases
 Use cases diagrams capture user-visible functions
 Identifying actors help capture who needs the system
functionality
 Relationships between use cases document
opportunities for reuse
 Use cases provide a basis planning and scheduling
incremental development
 Use cases can provide a basis for system testing
12
Coming up: In Class Exercise
In Class Exercise
 Lets create a use case diagram for
– iPod
– Television set
– Elevator
– ATM
– Online Scrabble game
– Word Processor
Coming up: Use cases for CS421
13
Use cases for ATM System
Show system
boundary
Show Actors
outside
boundary
Use extend,
include,
generalization/spe
cialization where
appropriate
Typically one
diagram for
your project
is sufficient
14
Coming up: Use cases for ICE4212
Use cases
 For each use-case (oval) in your diagram
include the use-case description text
described in the slide for Chapter 5, titled:
 Use Case Description
–about slide #14
15
Coming up: Questions
Questions
 Who might be interested in reviewing or using use
case diagrams?
 When in the development life cycle should we employ
use cases?
 What do use cases have to do with object-orientation?
 What level of use-case granularity is best?
 How many use cases are enough?
 Can other modeling activities help in discovering use
cases?
 When in the development life cycle do we stop
referring to or refining the use cases?
 What should the text description of use case contain?
16
Coming up:
 Backup Slides
 The following slides were removed over
time.
Coming up: Extends vs. Includes vs. Generalization
17
Actors
 Actors are people or external systems that
need to interact with our system
 Actors carry out use cases
 Actors are represented as stick figures
 Although users are actors, not all actors
are users
– Actors can be external software systems
– External hardware (sensors, actuators, etc.)
– Actors can be people that need the functionality of
the system, but may not be the ones who actually
invoke the software commands
23
Coming up: Hints for Finding Actors
Hints for Finding Actors
 Who or what will use the main functionality of the
system?
 Who or what will provide input to this system?
 Who or what will use output from this system?
 Who will need support from the system to do their
work?
 Are there any other software systems with which
this one needs to interact
 Are there any hardware devices used or controlled
by this system?
24
Coming up: Hints for Modeling Actors
Using these what are some actors for an iPod?
Hints for Modeling Actors
 An actor can be a role that a user plays with
respect to the system
 A single person may play different roles
 A single actor may perform many use cases
 A use case may be performed by many actors
 Show external systems as actors only when
they are the ones who need a use case
25
End of presentation

Mais conteúdo relacionado

Semelhante a Use-Case-Diagram.ppt

Use case Diagram
Use case Diagram Use case Diagram
Use case Diagram Rahul Pola
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Dr Sukhpal Singh Gill
 
SE18_Lec 09_UML Use Cases
SE18_Lec 09_UML Use CasesSE18_Lec 09_UML Use Cases
SE18_Lec 09_UML Use CasesAmr E. Mohamed
 
Requirement Engineering.pdf
Requirement Engineering.pdfRequirement Engineering.pdf
Requirement Engineering.pdfMuhammad Imran
 
Use Case Modeling In UML
Use Case Modeling In UMLUse Case Modeling In UML
Use Case Modeling In UMLSyed Hassan Ali
 
SE_Lec 08_UML Use Cases
SE_Lec 08_UML Use CasesSE_Lec 08_UML Use Cases
SE_Lec 08_UML Use CasesAmr E. Mohamed
 
SE18_Lec 07_System Modelling and Context Model
SE18_Lec 07_System Modelling and Context ModelSE18_Lec 07_System Modelling and Context Model
SE18_Lec 07_System Modelling and Context ModelAmr E. Mohamed
 
Usability requirements and their elicitation
Usability requirements and their elicitationUsability requirements and their elicitation
Usability requirements and their elicitationLucas Machado
 
Lesson02_Use Case Diagrams
Lesson02_Use Case DiagramsLesson02_Use Case Diagrams
Lesson02_Use Case DiagramsMarwa Ali Eissa
 
Software engineering requirements help11
Software engineering requirements help11Software engineering requirements help11
Software engineering requirements help11ssusere9d840
 
SE18_Lec 04_Requirements Analysis and Specification
SE18_Lec 04_Requirements Analysis and SpecificationSE18_Lec 04_Requirements Analysis and Specification
SE18_Lec 04_Requirements Analysis and SpecificationAmr E. Mohamed
 

Semelhante a Use-Case-Diagram.ppt (20)

Use case Diagram
Use case Diagram Use case Diagram
Use case Diagram
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
 
SE18_Lec 09_UML Use Cases
SE18_Lec 09_UML Use CasesSE18_Lec 09_UML Use Cases
SE18_Lec 09_UML Use Cases
 
Building an Information System
Building an Information SystemBuilding an Information System
Building an Information System
 
Ooad quest and ans
Ooad quest and ansOoad quest and ans
Ooad quest and ans
 
Requirement Engineering.pdf
Requirement Engineering.pdfRequirement Engineering.pdf
Requirement Engineering.pdf
 
Use Case Modeling In UML
Use Case Modeling In UMLUse Case Modeling In UML
Use Case Modeling In UML
 
SE_Lec 08_UML Use Cases
SE_Lec 08_UML Use CasesSE_Lec 08_UML Use Cases
SE_Lec 08_UML Use Cases
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
M azhar
M azharM azhar
M azhar
 
SE18_Lec 07_System Modelling and Context Model
SE18_Lec 07_System Modelling and Context ModelSE18_Lec 07_System Modelling and Context Model
SE18_Lec 07_System Modelling and Context Model
 
Use case Modeling
Use case ModelingUse case Modeling
Use case Modeling
 
Usability requirements and their elicitation
Usability requirements and their elicitationUsability requirements and their elicitation
Usability requirements and their elicitation
 
Lesson02_Use Case Diagrams
Lesson02_Use Case DiagramsLesson02_Use Case Diagrams
Lesson02_Use Case Diagrams
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
Software engineering requirements help11
Software engineering requirements help11Software engineering requirements help11
Software engineering requirements help11
 
Usecase
UsecaseUsecase
Usecase
 
SE18_Lec 04_Requirements Analysis and Specification
SE18_Lec 04_Requirements Analysis and SpecificationSE18_Lec 04_Requirements Analysis and Specification
SE18_Lec 04_Requirements Analysis and Specification
 
Lecture 3 OOSE.pdf
Lecture 3 OOSE.pdfLecture 3 OOSE.pdf
Lecture 3 OOSE.pdf
 

Mais de FarHana74914

DFD_Context-_zero-level.ppt
DFD_Context-_zero-level.pptDFD_Context-_zero-level.ppt
DFD_Context-_zero-level.pptFarHana74914
 
Lecture - 24-25.pptx
Lecture - 24-25.pptxLecture - 24-25.pptx
Lecture - 24-25.pptxFarHana74914
 
Lecture - 20-23.pptx
Lecture - 20-23.pptxLecture - 20-23.pptx
Lecture - 20-23.pptxFarHana74914
 
Lecture - 16-19.pptx
Lecture - 16-19.pptxLecture - 16-19.pptx
Lecture - 16-19.pptxFarHana74914
 
Lecture - 11-15.pptx
Lecture - 11-15.pptxLecture - 11-15.pptx
Lecture - 11-15.pptxFarHana74914
 
Lecture - 7-10.pptx
Lecture - 7-10.pptxLecture - 7-10.pptx
Lecture - 7-10.pptxFarHana74914
 

Mais de FarHana74914 (7)

DFD_Context-_zero-level.ppt
DFD_Context-_zero-level.pptDFD_Context-_zero-level.ppt
DFD_Context-_zero-level.ppt
 
Lecture-1-3.pptx
Lecture-1-3.pptxLecture-1-3.pptx
Lecture-1-3.pptx
 
Lecture - 24-25.pptx
Lecture - 24-25.pptxLecture - 24-25.pptx
Lecture - 24-25.pptx
 
Lecture - 20-23.pptx
Lecture - 20-23.pptxLecture - 20-23.pptx
Lecture - 20-23.pptx
 
Lecture - 16-19.pptx
Lecture - 16-19.pptxLecture - 16-19.pptx
Lecture - 16-19.pptx
 
Lecture - 11-15.pptx
Lecture - 11-15.pptxLecture - 11-15.pptx
Lecture - 11-15.pptx
 
Lecture - 7-10.pptx
Lecture - 7-10.pptxLecture - 7-10.pptx
Lecture - 7-10.pptx
 

Último

Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Serviceritikaroy0888
 
Russian Faridabad Call Girls(Badarpur) : ☎ 8168257667, @4999
Russian Faridabad Call Girls(Badarpur) : ☎ 8168257667, @4999Russian Faridabad Call Girls(Badarpur) : ☎ 8168257667, @4999
Russian Faridabad Call Girls(Badarpur) : ☎ 8168257667, @4999Tina Ji
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxAndy Lambert
 
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLSeo
 
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...Any kyc Account
 
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableDipal Arora
 
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Lviv Startup Club
 
Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Roland Driesen
 
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature SetCreating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature SetDenis Gagné
 
Sales & Marketing Alignment: How to Synergize for Success
Sales & Marketing Alignment: How to Synergize for SuccessSales & Marketing Alignment: How to Synergize for Success
Sales & Marketing Alignment: How to Synergize for SuccessAggregage
 
Tech Startup Growth Hacking 101 - Basics on Growth Marketing
Tech Startup Growth Hacking 101  - Basics on Growth MarketingTech Startup Growth Hacking 101  - Basics on Growth Marketing
Tech Startup Growth Hacking 101 - Basics on Growth MarketingShawn Pang
 
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service JamshedpurVIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service JamshedpurSuhani Kapoor
 
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 DelhiCall Girls in Delhi
 
Progress Report - Oracle Database Analyst Summit
Progress  Report - Oracle Database Analyst SummitProgress  Report - Oracle Database Analyst Summit
Progress Report - Oracle Database Analyst SummitHolger Mueller
 
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒anilsa9823
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Neil Kimberley
 
Monte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMMonte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMRavindra Nath Shukla
 
Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear RegressionRavindra Nath Shukla
 
Keppel Ltd. 1Q 2024 Business Update Presentation Slides
Keppel Ltd. 1Q 2024 Business Update  Presentation SlidesKeppel Ltd. 1Q 2024 Business Update  Presentation Slides
Keppel Ltd. 1Q 2024 Business Update Presentation SlidesKeppelCorporation
 

Último (20)

Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Service
 
Russian Faridabad Call Girls(Badarpur) : ☎ 8168257667, @4999
Russian Faridabad Call Girls(Badarpur) : ☎ 8168257667, @4999Russian Faridabad Call Girls(Badarpur) : ☎ 8168257667, @4999
Russian Faridabad Call Girls(Badarpur) : ☎ 8168257667, @4999
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptx
 
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
 
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
 
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
 
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
 
Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...
 
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature SetCreating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
Creating Low-Code Loan Applications using the Trisotech Mortgage Feature Set
 
Sales & Marketing Alignment: How to Synergize for Success
Sales & Marketing Alignment: How to Synergize for SuccessSales & Marketing Alignment: How to Synergize for Success
Sales & Marketing Alignment: How to Synergize for Success
 
Tech Startup Growth Hacking 101 - Basics on Growth Marketing
Tech Startup Growth Hacking 101  - Basics on Growth MarketingTech Startup Growth Hacking 101  - Basics on Growth Marketing
Tech Startup Growth Hacking 101 - Basics on Growth Marketing
 
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service JamshedpurVIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
VIP Call Girl Jamshedpur Aashi 8250192130 Independent Escort Service Jamshedpur
 
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
 
Progress Report - Oracle Database Analyst Summit
Progress  Report - Oracle Database Analyst SummitProgress  Report - Oracle Database Analyst Summit
Progress Report - Oracle Database Analyst Summit
 
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023
 
Monte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMMonte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSM
 
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear Regression
 
Keppel Ltd. 1Q 2024 Business Update Presentation Slides
Keppel Ltd. 1Q 2024 Business Update  Presentation SlidesKeppel Ltd. 1Q 2024 Business Update  Presentation Slides
Keppel Ltd. 1Q 2024 Business Update Presentation Slides
 

Use-Case-Diagram.ppt

  • 1. USE CASE DIAGRAM ICE 4212 System Analysis and Software Engineering Sessional Coming up: Introduction 1 Md. Arafat Hossain Lecturer Dept. Of ICE
  • 2. Introduction  Use Case: “... a typical interaction between a user and a computer system”, Booch – Here, “user” is anything that needs or invokes the functionality of the system – “Computer system” is the system being modeled  Use cases capture and document the user- visible functionality of a system (functional requirements)  Use cases capture how the system will benefit the user  Each use case represents a discrete goal for the user 2 Coming up: Example Use Case Diagram
  • 3. Example Use Case Diagram Coming up: Use Case Diagrams 3
  • 4. Use Case Diagrams  Use Case Diagrams provide a visual way to document user goals and explore possible functionality  Three primary modeling components: – Actors – Use Cases Authorized Staff Worker Teacher Student Record class grades – Relationships between use cases Review Transcripts 4 Coming up: Actors
  • 5. Actors  Actors are people or external systems that need to interact with our system 5 Coming up: Relationships Between Actors  Who or what will use the main functionality of the system?  Who or what will provide input to this system?  Who or what will use output from this system?  Who will need support from the system to do their work?  Are there any other software systems with which this one needs to interact  Are there any hardware devices used or controlled by this system? Answer these questions to find actors for an iPod Finding Actors
  • 6. Relationships Between Actors  Actors can be related by generalization/specialization  Actors are classifiers (not individual users) Student Graduate Student 6 Coming up: Use Case Relationships
  • 7. Use Case Relationships Includes Extends Generalization 7 Coming up: Use-Case Relationships After a while you realize extends and generalization are not too different. Just know generalization and includes… forget about extends (the difference is only in intent)
  • 8. Use-Case Relationships  Includes Dependency: Defines how one use case can invoke behavior defined by another use case Teacher Alter Student Grade Record Grades for a Section <<includes>> 8 Coming up: Use-Case Relationships
  • 9. Use-Case Relationships  Extends dependency: defines a use-case that is a variation of another, usually for handling an abnormal situation Authorized Staff Worker Alter Student Grade Alter student grade for a class taken more than a year ago <<extends>> 9 Coming up: Use-Case Relations
  • 10. Use-Case Relations  Generalization: Defines one use case as a generalization of another. Replaces generic functionality with alternate implementation Teacher Alter Student Grade Alter Student Grade for a Graduate Course 10 Coming up: Documenting Use Cases
  • 11. Documenting Use Cases Coming up: Benefits of Use Cases 11 List Actors List External Events Determine expected behavior Name behaviors as use cases Add relations (includes, extends, generalization) Document use case (basic flow, alternate, exception) What is system response to external event? What is the user’s goal? Be Patient… let them unfold
  • 12. Benefits of Use Cases  Use cases diagrams capture user-visible functions  Identifying actors help capture who needs the system functionality  Relationships between use cases document opportunities for reuse  Use cases provide a basis planning and scheduling incremental development  Use cases can provide a basis for system testing 12 Coming up: In Class Exercise
  • 13. In Class Exercise  Lets create a use case diagram for – iPod – Television set – Elevator – ATM – Online Scrabble game – Word Processor Coming up: Use cases for CS421 13
  • 14. Use cases for ATM System Show system boundary Show Actors outside boundary Use extend, include, generalization/spe cialization where appropriate Typically one diagram for your project is sufficient 14 Coming up: Use cases for ICE4212
  • 15. Use cases  For each use-case (oval) in your diagram include the use-case description text described in the slide for Chapter 5, titled:  Use Case Description –about slide #14 15 Coming up: Questions
  • 16. Questions  Who might be interested in reviewing or using use case diagrams?  When in the development life cycle should we employ use cases?  What do use cases have to do with object-orientation?  What level of use-case granularity is best?  How many use cases are enough?  Can other modeling activities help in discovering use cases?  When in the development life cycle do we stop referring to or refining the use cases?  What should the text description of use case contain? 16 Coming up:
  • 17.  Backup Slides  The following slides were removed over time. Coming up: Extends vs. Includes vs. Generalization 17
  • 18. Actors  Actors are people or external systems that need to interact with our system  Actors carry out use cases  Actors are represented as stick figures  Although users are actors, not all actors are users – Actors can be external software systems – External hardware (sensors, actuators, etc.) – Actors can be people that need the functionality of the system, but may not be the ones who actually invoke the software commands 23 Coming up: Hints for Finding Actors
  • 19. Hints for Finding Actors  Who or what will use the main functionality of the system?  Who or what will provide input to this system?  Who or what will use output from this system?  Who will need support from the system to do their work?  Are there any other software systems with which this one needs to interact  Are there any hardware devices used or controlled by this system? 24 Coming up: Hints for Modeling Actors Using these what are some actors for an iPod?
  • 20. Hints for Modeling Actors  An actor can be a role that a user plays with respect to the system  A single person may play different roles  A single actor may perform many use cases  A use case may be performed by many actors  Show external systems as actors only when they are the ones who need a use case 25 End of presentation