SlideShare a Scribd company logo
1 of 22
2009 copyright Leslie Munday University
Realizing The Application Use Case
Analysis And Design Discipline
Leslie Munday 2008
Precursor
 In order to understand the material in this
course, you should have a knowledge of
UML, a UML modeling tool and equivalent
knowledge of the following presentations:
 Working With AUC Documents.
 Use Case Modeling Notation.
 Working With Class Diagrams.
 What Is A State Transition Diagram?
10/28/2019 2
Leslie Munday 2008
Overview
 In this lesson you will learn :
 how to add analysis information to a use case
diagram.
 how to identify classes, their attributes and
relationships from the use case model.
 how to discover class operations.
 how to map the use case to an analysis class
diagram.
 how to map an activity diagram to an analysis
sequence diagram.
 how to map state transition diagrams to classes.
10/28/2019 3
Leslie Munday 2008
Use Case Recap
 A use case comprises the following components as a minimum:
 Description – High level view of the contents of the use case.
 Maximum Usage – How often that this use case could potentially
be executed.
 Primary Actor – The actor that initiates the use case.
 Secondary Actors – Non-initiating actors that interface with the use
case.
 Preconditions – The state of the system prior to the use case
executing.
 Basic Flow – The main or expected path the use case executes.
 Alternate Flows – Alternate paths the use case may execute in
order to achieve its goal.
 Extension Flows – Alternate paths that cause the use case to fail to
achieve its goal.
 Postconditions – The possible states of the system after the use
case has completed.
10/28/2019 4
Leslie Munday 2008
Modeling Recap
 The initial node takes the name
of the preconditions.
 A control flow takes the name
of an externally visible event.
 A decision describes an
alternate of extension point.
 A merge describes an alternate
path returning to the basic flow.
 A final node describes a
postcondition of the system.
10/28/2019 5
Leslie Munday 2008
Adding Objects
 For every activity in the activity diagram
discover what information is input to the
activity and what information is output from
the activity.
 Identify the appropriate object for this data
and indicate whether the activity is writing
to the object or reading from the object
using directed object flows.
 Label the object flow with the name of the
data.
10/28/2019 6
Leslie Munday 2008
Dematerializer Objects 1
10/28/2019 7
Leslie Munday 2008
Dematerializer Objects 2
10/28/2019 8
Leslie Munday 2008
The Objects
 Notice that the objects take the name of the ‘real-
life’ object that they interface with.
 door – operates the door to the dematerializer.
 transmitter – interfaces to the Transmitter actor.
 cargoHandler – controls securing the cargo.
 vacuumPump – controls removing air.
 deconstructor – controls the heart of the dematrializer.
 blueprintManager – is an interface to the
BlueprintManger actor.
 airSensor – monitors the air pressure.
 airValve – controls the air pressure.
 powerManager – controls the power to the
dematerializer.
10/28/2019 9
Leslie Munday 2008
Class Diagram
 Create a class diagram and copy the object
classes onto the diagram.
 Add the operations and data from the
activity diagram to the classes.
 Connect the classes with relationships and
add new classes as required.
10/28/2019 10
Leslie Munday 2008
Dematerializer Class Diagram
10/28/2019 11
 The Cargo
class has
been added
to identify
the attributes
of the cargo.
These will be
input to the
system as
parameters
of the
‘deconstruct’
command.
Leslie Munday 2008
Draw A Sequence Diagram
 Create a sequence diagram.
 Add an instance of the primary actor of the use case
on the left side of the sequence diagram.
 Add instances of secondary actors on the right side
of the sequence diagram.
 Place instances of the classes on the diagram,
roughly in the sequence in which they are accessed
by the use case.
 For every control flow in the basic flow of the use
case activity diagram, draw equivalent message
flows on the sequence diagram.
 Add operations, as necessary, to the classes that
represent the messages on the sequence diagram.
10/28/2019 12
Leslie Munday 2008
Corresponding Sequence Diagram
10/28/2019 13
Leslie Munday 2008
Sequence Diagram Explained
 The sequence diagram is only complete up
to step 5 of the use case.
 Notice that the Cargo object is used to
control the internal messages between the
other objects.
 Because the sequence diagram implies a
time scale running vertically down the page,
it is very difficult to show parallel flows on a
sequence diagram.
10/28/2019 14
Leslie Munday 2008
Updated Class Diagram
 The cargo
class has
been
updated to
reflect the
operations
discovered
on the
sequence
diagram.
10/28/2019 15
Leslie Munday 2008
Alternative and Extending Flows
 Repeat drawing a sequence diagram for
each alternative and extending flow.
10/28/2019 16
Leslie Munday 2008
State Transition Diagrams
 Another tool that helps us to determine if there
is any missing data or operations from our
model, is the STD.
 For each class in the class diagram, where its
states are non-trivial, i.e. there is more than
one state, create a STD.
 Identify all of the possible states that the class
may take and all potential transitions between
those states.
 Ensure that all data and operations used by
the STD are captured within the class that the
STD is modeling.
10/28/2019 17
Leslie Munday 2008
AirValve STD
 Notice that from the
class diagram we see
2 states, ‘Open’ and
‘Closed’.
 Once we start
modeling, we
discovered another 2
states and a potential
data element, ‘failed’.
10/28/2019 18
Leslie Munday 2008
Update The Class Diagram
 We have
added a
‘failureState’
attribute to
the valve
class.
10/28/2019 19
Leslie Munday 2008
Revisit the Use Case Activity
 The use case did not consider what to do if the air valve
failed.
 We need to add an alternate path to the use case
describes the action to be taken in the event of a valve
failure, extension point A3.
 Notice the new extension does not mention the valve, it
abstracts the functionality to the vacuum equipment
without stating what that comprises.
10/28/2019 20
Extension Points
•A3 Vacuum equipment broke:
•12 At step 6 the system cannot create a vacuum, the system unsecures the cargo.
•13. When the cago is released the system opens the door.
The use case ends.
Leslie Munday 2008
Summary
 In this presentation you learned:
 how to add objects to a use case activity diagram.
 how to convert those objects into classes on a class diagram, and
add preliminary data and operations.
 how to model the use case and its associated classes using
sequence diagrams.
 how the sequence diagrams are used to capture more detailed
operations of the classes.
 how to model a class with a STD.
 how to identify more information for the class diagram from the
events in the STD.
 how to add identify functionality from a use case by analyzing the
classes that implement the use case.
10/28/2019 21
Leslie Munday 2008
Test Your Knowledge
 Add objects to the ATM example use case.
 Create a class diagram for the ATM application.
 Create a sequence diagram for each path through
the ATM application use case.
 Model the ATM classes with STDs.
 Update the use case from operations that are
discovered during the modeling process.
10/28/2019 22

More Related Content

What's hot

Slide 4 Interaction Diagram
Slide 4 Interaction DiagramSlide 4 Interaction Diagram
Slide 4 Interaction DiagramNiloy Rocker
 
Using Mathematica for computational learning
Using Mathematica for computational learningUsing Mathematica for computational learning
Using Mathematica for computational learningMiles Ford
 
[Steven karris] introduction_to_simulink_with_engi
[Steven karris] introduction_to_simulink_with_engi[Steven karris] introduction_to_simulink_with_engi
[Steven karris] introduction_to_simulink_with_engiStiedy Jocky
 
SE18_Lec 10_ UML Behaviour and Interaction Diagrams
SE18_Lec 10_ UML Behaviour and Interaction DiagramsSE18_Lec 10_ UML Behaviour and Interaction Diagrams
SE18_Lec 10_ UML Behaviour and Interaction DiagramsAmr E. Mohamed
 
Use Case
Use CaseUse Case
Use CaseSyeda
 
SAD11 - Sequence Diagrams
SAD11 - Sequence DiagramsSAD11 - Sequence Diagrams
SAD11 - Sequence DiagramsMichael Heron
 

What's hot (10)

Component Diagram
Component DiagramComponent Diagram
Component Diagram
 
Uml
UmlUml
Uml
 
Slide 4 Interaction Diagram
Slide 4 Interaction DiagramSlide 4 Interaction Diagram
Slide 4 Interaction Diagram
 
Using Mathematica for computational learning
Using Mathematica for computational learningUsing Mathematica for computational learning
Using Mathematica for computational learning
 
[Steven karris] introduction_to_simulink_with_engi
[Steven karris] introduction_to_simulink_with_engi[Steven karris] introduction_to_simulink_with_engi
[Steven karris] introduction_to_simulink_with_engi
 
SE18_Lec 10_ UML Behaviour and Interaction Diagrams
SE18_Lec 10_ UML Behaviour and Interaction DiagramsSE18_Lec 10_ UML Behaviour and Interaction Diagrams
SE18_Lec 10_ UML Behaviour and Interaction Diagrams
 
Use Case
Use CaseUse Case
Use Case
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
 
Uml sequence diagrams
Uml sequence diagramsUml sequence diagrams
Uml sequence diagrams
 
SAD11 - Sequence Diagrams
SAD11 - Sequence DiagramsSAD11 - Sequence Diagrams
SAD11 - Sequence Diagrams
 

Similar to Realizing an Application Use Case

Use Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationUse Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationLeslie Munday
 
Use Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationUse Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationLeslie Munday
 
How to Complete a Use Case Templlate with MS Word
How to Complete a Use Case Templlate with MS WordHow to Complete a Use Case Templlate with MS Word
How to Complete a Use Case Templlate with MS WordLeslie Munday
 
Intro to UML - Use Case diagrams
Intro to UML - Use Case diagramsIntro to UML - Use Case diagrams
Intro to UML - Use Case diagramsjsm1979
 
Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)Gajeshwar Bahekar
 
Placement management system
Placement management systemPlacement management system
Placement management systemSurya Teja
 
CSCI-383 Lecture 3-4: Abstraction
CSCI-383 Lecture 3-4: AbstractionCSCI-383 Lecture 3-4: Abstraction
CSCI-383 Lecture 3-4: AbstractionJI Ruan
 
CASE Tools lab.ppt
CASE Tools lab.pptCASE Tools lab.ppt
CASE Tools lab.pptRAJESH S
 
Creating a Use Case
Creating a Use Case                                               Creating a Use Case
Creating a Use Case CruzIbarra161
 
Sadcw 7e chapter03-done(1)
Sadcw 7e chapter03-done(1)Sadcw 7e chapter03-done(1)
Sadcw 7e chapter03-done(1)LamineKaba6
 
Case Module 6.docx
Case Module 6.docxCase Module 6.docx
Case Module 6.docxstudywriters
 
Case Module 6.docx
Case Module 6.docxCase Module 6.docx
Case Module 6.docxbkbk37
 
AGADUC Towards A More Precise Presentation Of Functional Requirement In Use ...
AGADUC  Towards A More Precise Presentation Of Functional Requirement In Use ...AGADUC  Towards A More Precise Presentation Of Functional Requirement In Use ...
AGADUC Towards A More Precise Presentation Of Functional Requirement In Use ...Kelly Lipiec
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case DiagramAshesh R
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagramsMir Majid
 
Modularizing Arcihtectures Using Dendrograms1
Modularizing Arcihtectures Using Dendrograms1Modularizing Arcihtectures Using Dendrograms1
Modularizing Arcihtectures Using Dendrograms1victor tang
 
Lect_4_Requirement Modeling(Use Case_and_Static).pdf
Lect_4_Requirement Modeling(Use Case_and_Static).pdfLect_4_Requirement Modeling(Use Case_and_Static).pdf
Lect_4_Requirement Modeling(Use Case_and_Static).pdfLegesseSamuel
 
Ch7-Software Engineering 9
Ch7-Software Engineering 9Ch7-Software Engineering 9
Ch7-Software Engineering 9Ian Sommerville
 

Similar to Realizing an Application Use Case (20)

Use Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationUse Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling Notation
 
Use Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationUse Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling Notation
 
How to Complete a Use Case Templlate with MS Word
How to Complete a Use Case Templlate with MS WordHow to Complete a Use Case Templlate with MS Word
How to Complete a Use Case Templlate with MS Word
 
Intro to UML - Use Case diagrams
Intro to UML - Use Case diagramsIntro to UML - Use Case diagrams
Intro to UML - Use Case diagrams
 
Lecture 4.pdf
Lecture 4.pdfLecture 4.pdf
Lecture 4.pdf
 
Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)
 
Placement management system
Placement management systemPlacement management system
Placement management system
 
CSCI-383 Lecture 3-4: Abstraction
CSCI-383 Lecture 3-4: AbstractionCSCI-383 Lecture 3-4: Abstraction
CSCI-383 Lecture 3-4: Abstraction
 
CASE Tools lab.ppt
CASE Tools lab.pptCASE Tools lab.ppt
CASE Tools lab.ppt
 
Creating a Use Case
Creating a Use Case                                               Creating a Use Case
Creating a Use Case
 
Sadcw 7e chapter03-done(1)
Sadcw 7e chapter03-done(1)Sadcw 7e chapter03-done(1)
Sadcw 7e chapter03-done(1)
 
UML1
UML1UML1
UML1
 
Case Module 6.docx
Case Module 6.docxCase Module 6.docx
Case Module 6.docx
 
Case Module 6.docx
Case Module 6.docxCase Module 6.docx
Case Module 6.docx
 
AGADUC Towards A More Precise Presentation Of Functional Requirement In Use ...
AGADUC  Towards A More Precise Presentation Of Functional Requirement In Use ...AGADUC  Towards A More Precise Presentation Of Functional Requirement In Use ...
AGADUC Towards A More Precise Presentation Of Functional Requirement In Use ...
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
Modularizing Arcihtectures Using Dendrograms1
Modularizing Arcihtectures Using Dendrograms1Modularizing Arcihtectures Using Dendrograms1
Modularizing Arcihtectures Using Dendrograms1
 
Lect_4_Requirement Modeling(Use Case_and_Static).pdf
Lect_4_Requirement Modeling(Use Case_and_Static).pdfLect_4_Requirement Modeling(Use Case_and_Static).pdf
Lect_4_Requirement Modeling(Use Case_and_Static).pdf
 
Ch7-Software Engineering 9
Ch7-Software Engineering 9Ch7-Software Engineering 9
Ch7-Software Engineering 9
 

More from Leslie Munday

Using Agile In A Quality Driven Environment
Using Agile In A Quality Driven EnvironmentUsing Agile In A Quality Driven Environment
Using Agile In A Quality Driven EnvironmentLeslie Munday
 
Requirements and Traceability With Pictures
Requirements and Traceability With PicturesRequirements and Traceability With Pictures
Requirements and Traceability With PicturesLeslie Munday
 
Using Styles and Properties with MS Word
Using Styles and Properties with MS WordUsing Styles and Properties with MS Word
Using Styles and Properties with MS WordLeslie Munday
 
An Analysis Of A Jigsaw Puzzle
An Analysis Of A Jigsaw PuzzleAn Analysis Of A Jigsaw Puzzle
An Analysis Of A Jigsaw PuzzleLeslie Munday
 
Create A Use Case Document with ReqPro
Create A Use Case Document with ReqProCreate A Use Case Document with ReqPro
Create A Use Case Document with ReqProLeslie Munday
 
An Analysis of the BABOK
An Analysis of the BABOKAn Analysis of the BABOK
An Analysis of the BABOKLeslie Munday
 
Requirements management and traceability for IIBA
Requirements management and traceability for IIBARequirements management and traceability for IIBA
Requirements management and traceability for IIBALeslie Munday
 
Analysis Of A Shopping Expedition Part II
Analysis Of A Shopping Expedition Part IIAnalysis Of A Shopping Expedition Part II
Analysis Of A Shopping Expedition Part IILeslie Munday
 
Working With Styles And Properties
Working With Styles And PropertiesWorking With Styles And Properties
Working With Styles And PropertiesLeslie Munday
 
Administrating Req Pro
Administrating Req ProAdministrating Req Pro
Administrating Req ProLeslie Munday
 
Managing Requirement With A Rmp
Managing Requirement With A RmpManaging Requirement With A Rmp
Managing Requirement With A RmpLeslie Munday
 
Capture A Common Vocabulary
Capture A Common VocabularyCapture A Common Vocabulary
Capture A Common VocabularyLeslie Munday
 
Introduction To ReqPro
Introduction To ReqProIntroduction To ReqPro
Introduction To ReqProLeslie Munday
 

More from Leslie Munday (14)

Using Agile In A Quality Driven Environment
Using Agile In A Quality Driven EnvironmentUsing Agile In A Quality Driven Environment
Using Agile In A Quality Driven Environment
 
Models vs Diagrams
Models vs DiagramsModels vs Diagrams
Models vs Diagrams
 
Requirements and Traceability With Pictures
Requirements and Traceability With PicturesRequirements and Traceability With Pictures
Requirements and Traceability With Pictures
 
Using Styles and Properties with MS Word
Using Styles and Properties with MS WordUsing Styles and Properties with MS Word
Using Styles and Properties with MS Word
 
An Analysis Of A Jigsaw Puzzle
An Analysis Of A Jigsaw PuzzleAn Analysis Of A Jigsaw Puzzle
An Analysis Of A Jigsaw Puzzle
 
Create A Use Case Document with ReqPro
Create A Use Case Document with ReqProCreate A Use Case Document with ReqPro
Create A Use Case Document with ReqPro
 
An Analysis of the BABOK
An Analysis of the BABOKAn Analysis of the BABOK
An Analysis of the BABOK
 
Requirements management and traceability for IIBA
Requirements management and traceability for IIBARequirements management and traceability for IIBA
Requirements management and traceability for IIBA
 
Analysis Of A Shopping Expedition Part II
Analysis Of A Shopping Expedition Part IIAnalysis Of A Shopping Expedition Part II
Analysis Of A Shopping Expedition Part II
 
Working With Styles And Properties
Working With Styles And PropertiesWorking With Styles And Properties
Working With Styles And Properties
 
Administrating Req Pro
Administrating Req ProAdministrating Req Pro
Administrating Req Pro
 
Managing Requirement With A Rmp
Managing Requirement With A RmpManaging Requirement With A Rmp
Managing Requirement With A Rmp
 
Capture A Common Vocabulary
Capture A Common VocabularyCapture A Common Vocabulary
Capture A Common Vocabulary
 
Introduction To ReqPro
Introduction To ReqProIntroduction To ReqPro
Introduction To ReqPro
 

Recently uploaded

WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
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 SituationJuha-Pekka Tolvanen
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
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-learnAmarnathKambale
 
%+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
 
%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 Stilfonteinmasabamasaba
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
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 pastPapp Krisztián
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
%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 Bahrainmasabamasaba
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
%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 sowetomasabamasaba
 
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...SelfMade bd
 
%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 Rustenburgmasabamasaba
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 
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.pptxAnnaArtyushina1
 

Recently uploaded (20)

WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
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
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
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
 
%+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...
 
%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
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
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
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%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
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
%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
 
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...
 
%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
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
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
 

Realizing an Application Use Case

  • 1. 2009 copyright Leslie Munday University Realizing The Application Use Case Analysis And Design Discipline
  • 2. Leslie Munday 2008 Precursor  In order to understand the material in this course, you should have a knowledge of UML, a UML modeling tool and equivalent knowledge of the following presentations:  Working With AUC Documents.  Use Case Modeling Notation.  Working With Class Diagrams.  What Is A State Transition Diagram? 10/28/2019 2
  • 3. Leslie Munday 2008 Overview  In this lesson you will learn :  how to add analysis information to a use case diagram.  how to identify classes, their attributes and relationships from the use case model.  how to discover class operations.  how to map the use case to an analysis class diagram.  how to map an activity diagram to an analysis sequence diagram.  how to map state transition diagrams to classes. 10/28/2019 3
  • 4. Leslie Munday 2008 Use Case Recap  A use case comprises the following components as a minimum:  Description – High level view of the contents of the use case.  Maximum Usage – How often that this use case could potentially be executed.  Primary Actor – The actor that initiates the use case.  Secondary Actors – Non-initiating actors that interface with the use case.  Preconditions – The state of the system prior to the use case executing.  Basic Flow – The main or expected path the use case executes.  Alternate Flows – Alternate paths the use case may execute in order to achieve its goal.  Extension Flows – Alternate paths that cause the use case to fail to achieve its goal.  Postconditions – The possible states of the system after the use case has completed. 10/28/2019 4
  • 5. Leslie Munday 2008 Modeling Recap  The initial node takes the name of the preconditions.  A control flow takes the name of an externally visible event.  A decision describes an alternate of extension point.  A merge describes an alternate path returning to the basic flow.  A final node describes a postcondition of the system. 10/28/2019 5
  • 6. Leslie Munday 2008 Adding Objects  For every activity in the activity diagram discover what information is input to the activity and what information is output from the activity.  Identify the appropriate object for this data and indicate whether the activity is writing to the object or reading from the object using directed object flows.  Label the object flow with the name of the data. 10/28/2019 6
  • 7. Leslie Munday 2008 Dematerializer Objects 1 10/28/2019 7
  • 8. Leslie Munday 2008 Dematerializer Objects 2 10/28/2019 8
  • 9. Leslie Munday 2008 The Objects  Notice that the objects take the name of the ‘real- life’ object that they interface with.  door – operates the door to the dematerializer.  transmitter – interfaces to the Transmitter actor.  cargoHandler – controls securing the cargo.  vacuumPump – controls removing air.  deconstructor – controls the heart of the dematrializer.  blueprintManager – is an interface to the BlueprintManger actor.  airSensor – monitors the air pressure.  airValve – controls the air pressure.  powerManager – controls the power to the dematerializer. 10/28/2019 9
  • 10. Leslie Munday 2008 Class Diagram  Create a class diagram and copy the object classes onto the diagram.  Add the operations and data from the activity diagram to the classes.  Connect the classes with relationships and add new classes as required. 10/28/2019 10
  • 11. Leslie Munday 2008 Dematerializer Class Diagram 10/28/2019 11  The Cargo class has been added to identify the attributes of the cargo. These will be input to the system as parameters of the ‘deconstruct’ command.
  • 12. Leslie Munday 2008 Draw A Sequence Diagram  Create a sequence diagram.  Add an instance of the primary actor of the use case on the left side of the sequence diagram.  Add instances of secondary actors on the right side of the sequence diagram.  Place instances of the classes on the diagram, roughly in the sequence in which they are accessed by the use case.  For every control flow in the basic flow of the use case activity diagram, draw equivalent message flows on the sequence diagram.  Add operations, as necessary, to the classes that represent the messages on the sequence diagram. 10/28/2019 12
  • 13. Leslie Munday 2008 Corresponding Sequence Diagram 10/28/2019 13
  • 14. Leslie Munday 2008 Sequence Diagram Explained  The sequence diagram is only complete up to step 5 of the use case.  Notice that the Cargo object is used to control the internal messages between the other objects.  Because the sequence diagram implies a time scale running vertically down the page, it is very difficult to show parallel flows on a sequence diagram. 10/28/2019 14
  • 15. Leslie Munday 2008 Updated Class Diagram  The cargo class has been updated to reflect the operations discovered on the sequence diagram. 10/28/2019 15
  • 16. Leslie Munday 2008 Alternative and Extending Flows  Repeat drawing a sequence diagram for each alternative and extending flow. 10/28/2019 16
  • 17. Leslie Munday 2008 State Transition Diagrams  Another tool that helps us to determine if there is any missing data or operations from our model, is the STD.  For each class in the class diagram, where its states are non-trivial, i.e. there is more than one state, create a STD.  Identify all of the possible states that the class may take and all potential transitions between those states.  Ensure that all data and operations used by the STD are captured within the class that the STD is modeling. 10/28/2019 17
  • 18. Leslie Munday 2008 AirValve STD  Notice that from the class diagram we see 2 states, ‘Open’ and ‘Closed’.  Once we start modeling, we discovered another 2 states and a potential data element, ‘failed’. 10/28/2019 18
  • 19. Leslie Munday 2008 Update The Class Diagram  We have added a ‘failureState’ attribute to the valve class. 10/28/2019 19
  • 20. Leslie Munday 2008 Revisit the Use Case Activity  The use case did not consider what to do if the air valve failed.  We need to add an alternate path to the use case describes the action to be taken in the event of a valve failure, extension point A3.  Notice the new extension does not mention the valve, it abstracts the functionality to the vacuum equipment without stating what that comprises. 10/28/2019 20 Extension Points •A3 Vacuum equipment broke: •12 At step 6 the system cannot create a vacuum, the system unsecures the cargo. •13. When the cago is released the system opens the door. The use case ends.
  • 21. Leslie Munday 2008 Summary  In this presentation you learned:  how to add objects to a use case activity diagram.  how to convert those objects into classes on a class diagram, and add preliminary data and operations.  how to model the use case and its associated classes using sequence diagrams.  how the sequence diagrams are used to capture more detailed operations of the classes.  how to model a class with a STD.  how to identify more information for the class diagram from the events in the STD.  how to add identify functionality from a use case by analyzing the classes that implement the use case. 10/28/2019 21
  • 22. Leslie Munday 2008 Test Your Knowledge  Add objects to the ATM example use case.  Create a class diagram for the ATM application.  Create a sequence diagram for each path through the ATM application use case.  Model the ATM classes with STDs.  Update the use case from operations that are discovered during the modeling process. 10/28/2019 22