SlideShare una empresa de Scribd logo
1 de 32
REQUIREMENTS ENGINEERING
PRESENTATION TOPIC
“USE CASE MODELING”
Presentation
Wajahat Hasnain
Commonly Used UML Diagrams
The most commonly used UML diagrams are:
• Use case diagram, describing how the system is used.
• The starting point for UML modeling.
• Use case (not a diagram).
• Activity Diagram
• Class Diagram
• Sequence Diagram
• Collaboration Diagram
Overview of UML Diagrams
Use-Case Model
• The Use Case Model describes the proposed functionality of the new system. A Use Case
represents a discrete unit
• of interaction between a user (human or machine) and the system.
• Writing use cases – stories of using a system – is an excellent technique to understand and describe
requirements.
• The UP defines the Use-Case Model within the Requirements discipline.
• It is a model of the system’s functionality and environment.
• UMLUML formally includes the notion offormally includes the notion of Use casesUse cases andand use case diagramuse case diagram..
5
Use Cases
• Depiction of a system’s behavior or functionality under various
conditions as the system responds to requests from users
• descriptions ofdescriptions of domain processesdomain processes..
• UMLUML formally includes the notion offormally includes the notion of Use casesUse cases andand use case diagramuse case diagram..
• requiresrequires at least partial understandingat least partial understanding of the requirements of theof the requirements of the
system.system.
• Full functioning for a specific business purpose
• IdeallyIdeally expressed in the requirement specification document (expressed in the requirement specification document (RSDRSD).).
A use case is a specific way of using the system by performing some
part of the functionality. Each use case constitutes a complete course
of events initiated by an actor, and it specifies the interaction that
takes place between an actor and the system…...
The collected use cases specify all the existing ways of using the
system.”
Grady Booch et al.:Grady Booch et al.:
If you design a new house and you are reasoning about how you and
your family will use it, this is use case-based analysis.
You consider the various ways in which you‘ll use the house, and
these use cases drive the design.
Detailed Use Case Description/Modeling
Goals and Stories
9
 The user has goals (needs in UP) in the form of business processes.
 There are many ways to capture these goals and system requirements.
Use cases are a mechanism to help keep it simple and
understandable for all stakeholders.
 Informally, they are stories of using a system to meet goals.
 Example brief format use case:
Process Sale: A customer arrives at a checkout with items to
purchase. The cashier uses the POS system to record each
purchased item. The system presents a running total and line-
item details. The customer enters payment information, which
the system validates and records. The system updates
inventory. The customer receives a receipt from the system and
then leaves with the items.
 A more elaborated format is needed, but the essence is discovering
and recording functional requirements by writing stories of using a
system to help fulfill various stakeholder goals (i.e., cases of use).
Types of Use cases
(1)Levels of Abstraction: EssentialVs Real (Concrete)
According to the level of detail required at analysis and
design stages.
(2)Amount of Details: High Level and Expanded
High Level Usecases : Brief but structured
Expanded Usecases: Fully dressed and structured
(3)Business Importance: Primary, Secondary, and Optional)
• Primary use cases represent major common processes, such as
Buy Items.
• Secondary Use cases represent minor or rare processes, such as
Request for Stocking New Product.
• Optional use cases represents processes that may not be
tackled, like: Payment type analysis
11
Essential Versus Real Use Cases
Actor Action System Response
1. The customer identifies themselves 2. Presents options
3. and so on 4. and so on
Actor Action System Response
1. The Customer inserts their card 2. Prompts for PIN.
3. Enters PIN on key pad 4. Display options menu.
5.and so on. 6. and so on.
Real Use Cases
Concretely describes the process in terms of its real current design, committed to specific I/O
technology etc.
Essential Use Cases
• Are expanded use cases, remain relatively free of technology and implementation details
• design decisions are deferred and abstracted. That is, only essential activities and motivations
• High level use cases are always essential in nature due to their brevity and abstraction.
Degree of design commitment
Essential very abstract Real very concrete
<exist on continuum>
12
UML and Use Case Format:
 Header and structure of the use case are typical.
 UML does not specify a rigid format; may be altered to meet the needs
and spirit of documentation – clarity of communication
 Useful to start with high level use cases for a quick start and
understanding of overall major processes.
Example: High-Level Use Case: Buy Items
Use case: Buy Items
Actors: Customers?, Cashiers
Type: Primary
Description: A Customer arrives at a checkout with items
to purchase. The cashier records the purchase
items and collects payment. On completion, the
Customer leaves with the items.
13
High-Level Use Cases
UC01: Use case: Buy Items
Actors: Customer (initiator), Cashier
Type: primary
Description: A Customer arrives at a checkout with items to
purchase. The Cashier records the purchase items
and collects a payment. On completion, the
Customer leaves with the items.
UC02:Use case: Start Up
Actors: Manager
Type: primary
Description: A Manager powers on a POST in order to prepare
it for use by Cashiers. The Manager validates
that the date and time are correct, after which
the system is ready for Cashier use.
Use Case Diagram
• A use (yoos) case describes what the system does, not
how it does the work.
• The use case model reflects the view of the system of the
user outside of the system.
• Symbols are:
• Actor, a stick figure.
• Use case, an oval.
• Connecting lines.
Use Case
Actor
Use case/System Boundaries
System
Buy Item
Cashier
Use case Diagram (Partial)
Login
Refund Item
Customer
POST
UML Use Case Diagram Symbols
Use Case
Actor
Boundary
Connection
Include relationship
Extend relationship
<<include>>
<<extend>>
18
Some Definitions
Buy Items
UML icon for a use case
 AA scenarioscenario is ais a specificspecific sequence of actionssequence of actions andand interactionsinteractions
betweenbetween actorsactors and theand the system under discussionsystem under discussion (SuD); it is(SuD); it is
also called aalso called a use case instanceuse case instance. It is. It is one particular storyone particular story ofof
using a systemusing a system (similar defi in RUP).(similar defi in RUP).
Actors
• Actor:Actor: is something with behavior, such as a person (identified byis something with behavior, such as a person (identified by
role; a cashier), computer system, or organization.role; a cashier), computer system, or organization.
• Represent role played by one or more users
• Exist outside of the system
• May be a person, another system, a device, such as a keyboard
orWeb connection
• Can initiate an instance of a use case
• May interact with one or more use cases and a use case may
involve one or more actors
Actor
Actors (Continued)
• Actors may be divided into two groups:
• Primary actors supply data or receive information from
the system
• Secondary actors help to keep the system running or
provide help
• Help desk, analysts, programmers, etc.
What is a Boundary?
• A boundary is the dividing line between the system and
its environment.
• Use cases are within the boundary.
• Actors are outside of the boundary.
Use Case
• Consists of three things:
• An actor (user) that initiates an event.
• An event that triggers a use case.
• The use case that performs the actions triggered by the event.
Use Case (Continued)
• Better to create fewer use cases
• 20 use cases for a large system
• 50 use cases would be the maximum for a large system
• Can nest use cases, if needed
What is a Connection?
• A connection is an association between an actor and a
use case.
• Depicts a usage relationship
• Connection does not indicate data flow
Use Case Relationships
• Communicates
• Connect an actor to a use case
• Includes
• Use case contains a behavior that is common to more than one
use case.
• The common use case is included in other use cases.
• Dotted arrow points toward common use case.
What is an <<include>>
Relationship?
• A connection between two use cases
• Indicates a use case that is used (invoked) by another use
case
• Links to general purpose functions, used by many other
use cases base included<<include>>
Use Case Relationships (Continued)
• Extends
• A different use case handles variations or exceptions from the
basic use case.
• Arrow goes from extended to basic use case.
Generalize Relationship
• Generalizes
• 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.
• One thing is more general than another thing.
• Arrow points to the general thing
parent
child
What is an <<extend>>
Relationship?
• A connection between two use cases
• Extends a use case by adding new behavior or actions
• Specialized use case extends the general use case
Use Case Relationships
Use case modeling
Use case modeling

Más contenido relacionado

La actualidad más candente

Uml Activity Diagram
Uml Activity DiagramUml Activity Diagram
Uml Activity Diagram
Niloy Rocker
 

La actualidad más candente (20)

Unit 3(advanced state modeling & interaction meodelling)
Unit  3(advanced state modeling & interaction meodelling)Unit  3(advanced state modeling & interaction meodelling)
Unit 3(advanced state modeling & interaction meodelling)
 
Use case Diagram
Use case DiagramUse case Diagram
Use case Diagram
 
Class diagram presentation
Class diagram presentationClass diagram presentation
Class diagram presentation
 
Uml Activity Diagram
Uml Activity DiagramUml Activity Diagram
Uml Activity Diagram
 
state modeling In UML
state modeling In UMLstate modeling In UML
state modeling In UML
 
Uml class-diagram
Uml class-diagramUml class-diagram
Uml class-diagram
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagram
 
Activity Diagram
Activity DiagramActivity Diagram
Activity Diagram
 
Activity diagrams
Activity diagramsActivity diagrams
Activity diagrams
 
UML Diagrams
UML DiagramsUML Diagrams
UML Diagrams
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologies
 
CS8592-OOAD Lecture Notes Unit-3
CS8592-OOAD Lecture Notes Unit-3CS8592-OOAD Lecture Notes Unit-3
CS8592-OOAD Lecture Notes Unit-3
 
Activity diagram
Activity diagramActivity diagram
Activity diagram
 
Case Study Uml
Case Study UmlCase Study Uml
Case Study Uml
 
Lecture6 activity diagrams
Lecture6 activity diagramsLecture6 activity diagrams
Lecture6 activity diagrams
 
CS8592-OOAD-UNIT II-STATIC UML DIAGRAMS PPT
CS8592-OOAD-UNIT II-STATIC UML DIAGRAMS PPTCS8592-OOAD-UNIT II-STATIC UML DIAGRAMS PPT
CS8592-OOAD-UNIT II-STATIC UML DIAGRAMS PPT
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagrams
 
Interaction Modeling
Interaction ModelingInteraction Modeling
Interaction Modeling
 
Unit three Advanced State Modelling
Unit three Advanced State ModellingUnit three Advanced State Modelling
Unit three Advanced State Modelling
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
 

Destacado

IEE for 2D Seismic Survey AD-10 Process and Lessons Learned
IEE for 2D Seismic Survey AD-10 Process and Lessons LearnedIEE for 2D Seismic Survey AD-10 Process and Lessons Learned
IEE for 2D Seismic Survey AD-10 Process and Lessons Learned
Ethical Sector
 
IEE for 2D Seismic Survey AD-10 Process and Lessons Learned (my)
IEE for 2D Seismic Survey AD-10 Process and Lessons Learned (my)IEE for 2D Seismic Survey AD-10 Process and Lessons Learned (my)
IEE for 2D Seismic Survey AD-10 Process and Lessons Learned (my)
Ethical Sector
 
How i made my magazine advert
How i made my magazine advertHow i made my magazine advert
How i made my magazine advert
joewilson1997
 
2) How effective is the combination of your main product and ancillary texts?
2) How effective is the combination of your main product and ancillary texts?2) How effective is the combination of your main product and ancillary texts?
2) How effective is the combination of your main product and ancillary texts?
joewilson1997
 

Destacado (20)

Chude06 nhom2
Chude06 nhom2Chude06 nhom2
Chude06 nhom2
 
IEE for 2D Seismic Survey AD-10 Process and Lessons Learned
IEE for 2D Seismic Survey AD-10 Process and Lessons LearnedIEE for 2D Seismic Survey AD-10 Process and Lessons Learned
IEE for 2D Seismic Survey AD-10 Process and Lessons Learned
 
IEE for 2D Seismic Survey AD-10 Process and Lessons Learned (my)
IEE for 2D Seismic Survey AD-10 Process and Lessons Learned (my)IEE for 2D Seismic Survey AD-10 Process and Lessons Learned (my)
IEE for 2D Seismic Survey AD-10 Process and Lessons Learned (my)
 
Exame de fisica de 2005
Exame de fisica de 2005Exame de fisica de 2005
Exame de fisica de 2005
 
В.А. Шелякин
В.А. ШелякинВ.А. Шелякин
В.А. Шелякин
 
How i made my magazine advert
How i made my magazine advertHow i made my magazine advert
How i made my magazine advert
 
Dallas Wedding Venue | Seven for Parties
Dallas Wedding Venue | Seven for PartiesDallas Wedding Venue | Seven for Parties
Dallas Wedding Venue | Seven for Parties
 
Disabili al lavoro, missione impossibile?
Disabili al lavoro, missione impossibile?Disabili al lavoro, missione impossibile?
Disabili al lavoro, missione impossibile?
 
Desafio das Estimativas - Utilizando métricas científicas com Kanban
Desafio das Estimativas - Utilizando métricas científicas com KanbanDesafio das Estimativas - Utilizando métricas científicas com Kanban
Desafio das Estimativas - Utilizando métricas científicas com Kanban
 
Теории мотиваци
Теории мотивациТеории мотиваци
Теории мотиваци
 
Chu de1 nhom2
Chu de1 nhom2Chu de1 nhom2
Chu de1 nhom2
 
Priya main prjt
Priya main prjtPriya main prjt
Priya main prjt
 
Gagadget 2014
Gagadget 2014Gagadget 2014
Gagadget 2014
 
Dallas Wedding Venue
Dallas Wedding VenueDallas Wedding Venue
Dallas Wedding Venue
 
2) How effective is the combination of your main product and ancillary texts?
2) How effective is the combination of your main product and ancillary texts?2) How effective is the combination of your main product and ancillary texts?
2) How effective is the combination of your main product and ancillary texts?
 
Boxnews 2015
Boxnews 2015Boxnews 2015
Boxnews 2015
 
Visualizing and drawing of symmetrical designs
Visualizing and drawing of symmetrical designsVisualizing and drawing of symmetrical designs
Visualizing and drawing of symmetrical designs
 
Opiner_Technologies
Opiner_TechnologiesOpiner_Technologies
Opiner_Technologies
 
Gagadget 2015.
Gagadget 2015.Gagadget 2015.
Gagadget 2015.
 
Desarrollo de nuevos Fármacos
Desarrollo de nuevos Fármacos Desarrollo de nuevos Fármacos
Desarrollo de nuevos Fármacos
 

Similar a Use case modeling

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
naveed428
 

Similar a Use case modeling (20)

Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
SE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdfSE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdf
 
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
 
OOAD U1.pptx
OOAD U1.pptxOOAD U1.pptx
OOAD U1.pptx
 
Lecture7 use case modeling
Lecture7 use case modelingLecture7 use case modeling
Lecture7 use case modeling
 
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
 
conversion-gate02.pptx
conversion-gate02.pptxconversion-gate02.pptx
conversion-gate02.pptx
 
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 Diagram.pptx
Use Case Diagram.pptxUse Case Diagram.pptx
Use Case Diagram.pptx
 
Use case modeling & analysis v 1
Use case modeling & analysis v 1Use case modeling & analysis v 1
Use case modeling & analysis v 1
 
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
 
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
 
Lesson02_Use Case Diagrams
Lesson02_Use Case DiagramsLesson02_Use Case Diagrams
Lesson02_Use Case Diagrams
 
2.1 usecase diagram
2.1 usecase diagram2.1 usecase diagram
2.1 usecase diagram
 
Final use case (1)
Final use case (1)Final use case (1)
Final use case (1)
 
Use Cases
Use CasesUse Cases
Use Cases
 
Use Cases
Use CasesUse Cases
Use Cases
 
usecase (1).pptx
usecase (1).pptxusecase (1).pptx
usecase (1).pptx
 
SELECT21.pptx
SELECT21.pptxSELECT21.pptx
SELECT21.pptx
 

Último

%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
masabamasaba
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 

Último (20)

%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 

Use case modeling

  • 1.
  • 2. REQUIREMENTS ENGINEERING PRESENTATION TOPIC “USE CASE MODELING” Presentation Wajahat Hasnain
  • 3. Commonly Used UML Diagrams The most commonly used UML diagrams are: • Use case diagram, describing how the system is used. • The starting point for UML modeling. • Use case (not a diagram). • Activity Diagram • Class Diagram • Sequence Diagram • Collaboration Diagram
  • 4. Overview of UML Diagrams
  • 5. Use-Case Model • The Use Case Model describes the proposed functionality of the new system. A Use Case represents a discrete unit • of interaction between a user (human or machine) and the system. • Writing use cases – stories of using a system – is an excellent technique to understand and describe requirements. • The UP defines the Use-Case Model within the Requirements discipline. • It is a model of the system’s functionality and environment. • UMLUML formally includes the notion offormally includes the notion of Use casesUse cases andand use case diagramuse case diagram.. 5
  • 6. Use Cases • Depiction of a system’s behavior or functionality under various conditions as the system responds to requests from users • descriptions ofdescriptions of domain processesdomain processes.. • UMLUML formally includes the notion offormally includes the notion of Use casesUse cases andand use case diagramuse case diagram.. • requiresrequires at least partial understandingat least partial understanding of the requirements of theof the requirements of the system.system. • Full functioning for a specific business purpose • IdeallyIdeally expressed in the requirement specification document (expressed in the requirement specification document (RSDRSD).).
  • 7. A use case is a specific way of using the system by performing some part of the functionality. Each use case constitutes a complete course of events initiated by an actor, and it specifies the interaction that takes place between an actor and the system…... The collected use cases specify all the existing ways of using the system.” Grady Booch et al.:Grady Booch et al.: If you design a new house and you are reasoning about how you and your family will use it, this is use case-based analysis. You consider the various ways in which you‘ll use the house, and these use cases drive the design.
  • 8. Detailed Use Case Description/Modeling
  • 9. Goals and Stories 9  The user has goals (needs in UP) in the form of business processes.  There are many ways to capture these goals and system requirements. Use cases are a mechanism to help keep it simple and understandable for all stakeholders.  Informally, they are stories of using a system to meet goals.  Example brief format use case: Process Sale: A customer arrives at a checkout with items to purchase. The cashier uses the POS system to record each purchased item. The system presents a running total and line- item details. The customer enters payment information, which the system validates and records. The system updates inventory. The customer receives a receipt from the system and then leaves with the items.  A more elaborated format is needed, but the essence is discovering and recording functional requirements by writing stories of using a system to help fulfill various stakeholder goals (i.e., cases of use).
  • 10. Types of Use cases (1)Levels of Abstraction: EssentialVs Real (Concrete) According to the level of detail required at analysis and design stages. (2)Amount of Details: High Level and Expanded High Level Usecases : Brief but structured Expanded Usecases: Fully dressed and structured (3)Business Importance: Primary, Secondary, and Optional) • Primary use cases represent major common processes, such as Buy Items. • Secondary Use cases represent minor or rare processes, such as Request for Stocking New Product. • Optional use cases represents processes that may not be tackled, like: Payment type analysis
  • 11. 11 Essential Versus Real Use Cases Actor Action System Response 1. The customer identifies themselves 2. Presents options 3. and so on 4. and so on Actor Action System Response 1. The Customer inserts their card 2. Prompts for PIN. 3. Enters PIN on key pad 4. Display options menu. 5.and so on. 6. and so on. Real Use Cases Concretely describes the process in terms of its real current design, committed to specific I/O technology etc. Essential Use Cases • Are expanded use cases, remain relatively free of technology and implementation details • design decisions are deferred and abstracted. That is, only essential activities and motivations • High level use cases are always essential in nature due to their brevity and abstraction. Degree of design commitment Essential very abstract Real very concrete <exist on continuum>
  • 12. 12 UML and Use Case Format:  Header and structure of the use case are typical.  UML does not specify a rigid format; may be altered to meet the needs and spirit of documentation – clarity of communication  Useful to start with high level use cases for a quick start and understanding of overall major processes. Example: High-Level Use Case: Buy Items Use case: Buy Items Actors: Customers?, Cashiers Type: Primary Description: A Customer arrives at a checkout with items to purchase. The cashier records the purchase items and collects payment. On completion, the Customer leaves with the items.
  • 13. 13 High-Level Use Cases UC01: Use case: Buy Items Actors: Customer (initiator), Cashier Type: primary Description: A Customer arrives at a checkout with items to purchase. The Cashier records the purchase items and collects a payment. On completion, the Customer leaves with the items. UC02:Use case: Start Up Actors: Manager Type: primary Description: A Manager powers on a POST in order to prepare it for use by Cashiers. The Manager validates that the date and time are correct, after which the system is ready for Cashier use.
  • 14. Use Case Diagram • A use (yoos) case describes what the system does, not how it does the work. • The use case model reflects the view of the system of the user outside of the system. • Symbols are: • Actor, a stick figure. • Use case, an oval. • Connecting lines. Use Case Actor Use case/System Boundaries System
  • 15.
  • 16. Buy Item Cashier Use case Diagram (Partial) Login Refund Item Customer POST
  • 17. UML Use Case Diagram Symbols Use Case Actor Boundary Connection Include relationship Extend relationship <<include>> <<extend>>
  • 18. 18 Some Definitions Buy Items UML icon for a use case  AA scenarioscenario is ais a specificspecific sequence of actionssequence of actions andand interactionsinteractions betweenbetween actorsactors and theand the system under discussionsystem under discussion (SuD); it is(SuD); it is also called aalso called a use case instanceuse case instance. It is. It is one particular storyone particular story ofof using a systemusing a system (similar defi in RUP).(similar defi in RUP).
  • 19. Actors • Actor:Actor: is something with behavior, such as a person (identified byis something with behavior, such as a person (identified by role; a cashier), computer system, or organization.role; a cashier), computer system, or organization. • Represent role played by one or more users • Exist outside of the system • May be a person, another system, a device, such as a keyboard orWeb connection • Can initiate an instance of a use case • May interact with one or more use cases and a use case may involve one or more actors Actor
  • 20. Actors (Continued) • Actors may be divided into two groups: • Primary actors supply data or receive information from the system • Secondary actors help to keep the system running or provide help • Help desk, analysts, programmers, etc.
  • 21. What is a Boundary? • A boundary is the dividing line between the system and its environment. • Use cases are within the boundary. • Actors are outside of the boundary.
  • 22. Use Case • Consists of three things: • An actor (user) that initiates an event. • An event that triggers a use case. • The use case that performs the actions triggered by the event.
  • 23. Use Case (Continued) • Better to create fewer use cases • 20 use cases for a large system • 50 use cases would be the maximum for a large system • Can nest use cases, if needed
  • 24. What is a Connection? • A connection is an association between an actor and a use case. • Depicts a usage relationship • Connection does not indicate data flow
  • 25. Use Case Relationships • Communicates • Connect an actor to a use case • Includes • Use case contains a behavior that is common to more than one use case. • The common use case is included in other use cases. • Dotted arrow points toward common use case.
  • 26. What is an <<include>> Relationship? • A connection between two use cases • Indicates a use case that is used (invoked) by another use case • Links to general purpose functions, used by many other use cases base included<<include>>
  • 27. Use Case Relationships (Continued) • Extends • A different use case handles variations or exceptions from the basic use case. • Arrow goes from extended to basic use case.
  • 28. Generalize Relationship • Generalizes • 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. • One thing is more general than another thing. • Arrow points to the general thing parent child
  • 29. What is an <<extend>> Relationship? • A connection between two use cases • Extends a use case by adding new behavior or actions • Specialized use case extends the general use case

Notas del editor

  1. Chap 6
  2. 6.13 brevity &amp;gt; conciseness; lack of verbosity
  3. Actor: Stickman