SlideShare a Scribd company logo
1 of 26
Activity, Swimlane, sequence and
class diagrams
Activity Diagrams’ Purpose
 Model business workflows
 Identify candidate use cases, through the
examination of business workflows
 Identify pre- and post-conditions for use cases
 Model workflow between/within use cases
 Model complex workflows in operations on
Objects
Activity diagram …..
One activity diagram can be made for
 A use-case
 Multiple use-cases
 Some part of a use-case.
Activity Diagrams components
 Activities and Actions
 States
 Transitions
 Decision Points
 Swimlanes
 Forks and Joins
Swimlane (or activity partitions)
 Swimlanes (or activity partitions)indicate where
activities take place.
 Swimlanes can also be used to identify areas at the
technology level where activities are carried out.
 Swimlanes allow the partition an activity diagram so
that parts of it appear in the swimlane relevant to
that element in the partition.
Swimlanes contd…
Partitions may be constructed on the basis of:
• class and actor doing the activity
• Partitioning by class and actor can help to identify
new associations that have not been documented in
the class model
Activity Diagrams
 Activity Diagrams are good for describing
synchronization and concurrency between activities
 Activity diagrams are useful for capturing detailed
activities, but they can also capture elements of the
high level workflow the system is intended to support
 Partitioning can be helpful in investigating
responsibilities for interactions and associations
between objects and actors
Activity Diagram
Activity Diagram
Class-based Modeling
13
Identifying Analysis Classes
1) Perform a grammatical parse of the problem statement or use cases
2) Classes are determined by underlining each noun or noun clause
3) A class required to implement a solution is part of the solution space
4) A class necessary only to describe a solution is part of the problem
space
5) A class should NOT have an imperative procedural name (i.e., a
verb)
6) List the potential class names in a table and "classify" each class
according to some taxonomy and class selection characteristics
7) A potential class should satisfy nearly all (or all) of the selection
characteristics to be considered a legitimate problem domain class
(More on next slide)
Potential classes General
classification
Selection
Characteristics
14
 General classifications for a potential class
 External entity (e.g., another system, a device, a person)
 Thing (e.g., report, screen display)
 Occurrence or event (e.g., movement, completion)
 Role (e.g., manager, engineer, salesperson)
 Organizational unit (e.g., division, group, team)
 Place (e.g., manufacturing floor, loading dock)
 Structure (e.g., sensor, vehicle, computer)
Identifying Analysis Classes (contd)
(More on next slide)
15
Identifying Analysis Classes (contd)
 Six class selection characteristics
1) Retained information
– Information must be remembered about the system over time
2) Needed services
– Set of operations that can change the attributes of a class
3) Multiple attributes
– Whereas, a single attribute may denote an atomic variable rather than a
class
4) Common attributes
– A set of attributes apply to all instances of a class
5) Common operations
– A set of operations apply to all instances of a class
6) Essential requirements
– Entities that produce or consume information
16
Defining Attributes of a Class
 Attributes of a class are those nouns from the grammatical parse
that reasonably belong to a class
 Attributes hold the values that describe the current properties or
state of a class
 An attribute may also appear initially as a potential class that is later
rejected because of the class selection criteria
 In identifying attributes, the following question should be answered
 What data items (composite and/or elementary) will fully define a specific
class in the context of the problem at hand?
17
Defining Operations of a Class
 Operations define the behavior of an object
 Four categories of operations
 Operations that manipulate data in some way to change the state of an
object (e.g., add, delete, modify)
 Operations that perform a computation
 Operations that inquire about the state of an object
 Operations that monitor an object for the occurrence of a controlling
event
 An operation has knowledge about the state of a class and the
nature of its associations
 The action performed by an operation is based on the current values
of the attributes of a class
 Using a grammatical parse again, circle the verbs; then select the
verbs that relate to the problem domain classes that were previously
identified
18
Example Class Box
Component
+ componentID
- telephoneNumber
- componentStatus
- delayTime
- masterPassword
- numberOfTries
+ program()
+ display()
+ reset()
+ query()
- modify()
+ call()
Class Name
Attributes
Operations
Behavioral Modeling
SSD System Sequence Diagram
Usecase case to SSD
Sequence Diagram
Sequence Diagram (return book)
Thanks

More Related Content

What's hot

SAD09 - Activity Diagrams
SAD09 - Activity DiagramsSAD09 - Activity Diagrams
SAD09 - Activity DiagramsMichael Heron
 
Activity Diagram Examples by Creately
Activity Diagram Examples by Creately Activity Diagram Examples by Creately
Activity Diagram Examples by Creately Creately
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagramsbarney92
 
An introduction to uml
An introduction to umlAn introduction to uml
An introduction to umlTony Huynh
 
Intro to UML 2
Intro to UML 2Intro to UML 2
Intro to UML 2rchakra
 
Lect-4: UML diagrams - Unified Modeling Language - SPM
Lect-4: UML diagrams - Unified Modeling Language - SPMLect-4: UML diagrams - Unified Modeling Language - SPM
Lect-4: UML diagrams - Unified Modeling Language - SPMMubashir Ali
 
UML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxUML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxNwabueze Obioma
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramNikhil Pandit
 
UML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language IntroductionUML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language IntroductionRamakant Soni
 
An Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence DiagramsAn Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence DiagramsMohammed Misbhauddin
 
Activity diagram model
Activity diagram modelActivity diagram model
Activity diagram modelahmed zewita
 
UML Architecture and Views
UML Architecture and ViewsUML Architecture and Views
UML Architecture and ViewsKumar
 
Uml structural diagrams
Uml structural diagramsUml structural diagrams
Uml structural diagramsSwathy T
 

What's hot (20)

SAD09 - Activity Diagrams
SAD09 - Activity DiagramsSAD09 - Activity Diagrams
SAD09 - Activity Diagrams
 
Activity Diagram Examples by Creately
Activity Diagram Examples by Creately Activity Diagram Examples by Creately
Activity Diagram Examples by Creately
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagrams
 
Uml Diagrams
Uml DiagramsUml Diagrams
Uml Diagrams
 
Uml
UmlUml
Uml
 
An introduction to uml
An introduction to umlAn introduction to uml
An introduction to uml
 
Uml
UmlUml
Uml
 
Intro to UML 2
Intro to UML 2Intro to UML 2
Intro to UML 2
 
Uml
UmlUml
Uml
 
Lect-4: UML diagrams - Unified Modeling Language - SPM
Lect-4: UML diagrams - Unified Modeling Language - SPMLect-4: UML diagrams - Unified Modeling Language - SPM
Lect-4: UML diagrams - Unified Modeling Language - SPM
 
Uml sequence diagrams
Uml sequence diagramsUml sequence diagrams
Uml sequence diagrams
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
 
UML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxUML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptx
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence Diagram
 
UML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language IntroductionUML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language Introduction
 
An Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence DiagramsAn Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence Diagrams
 
Activity diagram model
Activity diagram modelActivity diagram model
Activity diagram model
 
UML Architecture and Views
UML Architecture and ViewsUML Architecture and Views
UML Architecture and Views
 
Uml structural diagrams
Uml structural diagramsUml structural diagrams
Uml structural diagrams
 
Uml 9
Uml 9Uml 9
Uml 9
 

Viewers also liked

2011 05-11 IIBA Vendor Webinar- Business Process Modeling
2011 05-11 IIBA Vendor Webinar- Business Process Modeling2011 05-11 IIBA Vendor Webinar- Business Process Modeling
2011 05-11 IIBA Vendor Webinar- Business Process ModelingTracy Cook
 
What is a flowchart
What is a flowchartWhat is a flowchart
What is a flowchartCLI-IE
 
User Flow swim-lane Diagram for New Hire
User Flow swim-lane Diagram for New Hire User Flow swim-lane Diagram for New Hire
User Flow swim-lane Diagram for New Hire Mike Reams
 
swim lane support process example
swim lane support process exampleswim lane support process example
swim lane support process exampleRonaldo Radünz
 
Structured Business Process Modeling - Lavacon 2014
Structured Business Process Modeling - Lavacon 2014Structured Business Process Modeling - Lavacon 2014
Structured Business Process Modeling - Lavacon 2014Dr. Jackie Damrau, BPMN
 

Viewers also liked (7)

2011 05-11 IIBA Vendor Webinar- Business Process Modeling
2011 05-11 IIBA Vendor Webinar- Business Process Modeling2011 05-11 IIBA Vendor Webinar- Business Process Modeling
2011 05-11 IIBA Vendor Webinar- Business Process Modeling
 
What is a flowchart
What is a flowchartWhat is a flowchart
What is a flowchart
 
User Flow swim-lane Diagram for New Hire
User Flow swim-lane Diagram for New Hire User Flow swim-lane Diagram for New Hire
User Flow swim-lane Diagram for New Hire
 
swim lane support process example
swim lane support process exampleswim lane support process example
swim lane support process example
 
BPMN 2.0 Fundamentals
BPMN 2.0 FundamentalsBPMN 2.0 Fundamentals
BPMN 2.0 Fundamentals
 
Structured Business Process Modeling - Lavacon 2014
Structured Business Process Modeling - Lavacon 2014Structured Business Process Modeling - Lavacon 2014
Structured Business Process Modeling - Lavacon 2014
 
Business Process Design 2008
Business Process Design 2008Business Process Design 2008
Business Process Design 2008
 

Similar to Activity sequence -class and swimlane

Similar to Activity sequence -class and swimlane (20)

Class diagram java
Class diagram javaClass diagram java
Class diagram java
 
class diagram
class diagramclass diagram
class diagram
 
Requirements modeling
Requirements modelingRequirements modeling
Requirements modeling
 
chapter 5 Objectdesign.ppt
chapter 5 Objectdesign.pptchapter 5 Objectdesign.ppt
chapter 5 Objectdesign.ppt
 
Analysis modeling
Analysis modelingAnalysis modeling
Analysis modeling
 
Lecture 15 requirements modeling - scenario, information and analysis class...
Lecture 15   requirements modeling - scenario, information and analysis class...Lecture 15   requirements modeling - scenario, information and analysis class...
Lecture 15 requirements modeling - scenario, information and analysis class...
 
4b use-case analysis
4b use-case analysis4b use-case analysis
4b use-case analysis
 
Bridge
BridgeBridge
Bridge
 
Sadcw 6e chapter4
Sadcw 6e chapter4Sadcw 6e chapter4
Sadcw 6e chapter4
 
Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
 
Object oriented software engineering
Object oriented software engineeringObject oriented software engineering
Object oriented software engineering
 
L ab # 07
L ab # 07L ab # 07
L ab # 07
 
SMD Unit ii
SMD Unit iiSMD Unit ii
SMD Unit ii
 
5 transition to design
5 transition to design5 transition to design
5 transition to design
 
java tr.docx
java tr.docxjava tr.docx
java tr.docx
 
Ch08
Ch08Ch08
Ch08
 
Ch08
Ch08Ch08
Ch08
 
UML model
UML model UML model
UML model
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
 

Recently uploaded

Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 

Recently uploaded (20)

Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 

Activity sequence -class and swimlane

  • 1. Activity, Swimlane, sequence and class diagrams
  • 2. Activity Diagrams’ Purpose  Model business workflows  Identify candidate use cases, through the examination of business workflows  Identify pre- and post-conditions for use cases  Model workflow between/within use cases  Model complex workflows in operations on Objects
  • 3. Activity diagram ….. One activity diagram can be made for  A use-case  Multiple use-cases  Some part of a use-case.
  • 4. Activity Diagrams components  Activities and Actions  States  Transitions  Decision Points  Swimlanes  Forks and Joins
  • 5.
  • 6. Swimlane (or activity partitions)  Swimlanes (or activity partitions)indicate where activities take place.  Swimlanes can also be used to identify areas at the technology level where activities are carried out.  Swimlanes allow the partition an activity diagram so that parts of it appear in the swimlane relevant to that element in the partition.
  • 7. Swimlanes contd… Partitions may be constructed on the basis of: • class and actor doing the activity • Partitioning by class and actor can help to identify new associations that have not been documented in the class model
  • 8. Activity Diagrams  Activity Diagrams are good for describing synchronization and concurrency between activities  Activity diagrams are useful for capturing detailed activities, but they can also capture elements of the high level workflow the system is intended to support  Partitioning can be helpful in investigating responsibilities for interactions and associations between objects and actors
  • 11.
  • 13. 13 Identifying Analysis Classes 1) Perform a grammatical parse of the problem statement or use cases 2) Classes are determined by underlining each noun or noun clause 3) A class required to implement a solution is part of the solution space 4) A class necessary only to describe a solution is part of the problem space 5) A class should NOT have an imperative procedural name (i.e., a verb) 6) List the potential class names in a table and "classify" each class according to some taxonomy and class selection characteristics 7) A potential class should satisfy nearly all (or all) of the selection characteristics to be considered a legitimate problem domain class (More on next slide) Potential classes General classification Selection Characteristics
  • 14. 14  General classifications for a potential class  External entity (e.g., another system, a device, a person)  Thing (e.g., report, screen display)  Occurrence or event (e.g., movement, completion)  Role (e.g., manager, engineer, salesperson)  Organizational unit (e.g., division, group, team)  Place (e.g., manufacturing floor, loading dock)  Structure (e.g., sensor, vehicle, computer) Identifying Analysis Classes (contd) (More on next slide)
  • 15. 15 Identifying Analysis Classes (contd)  Six class selection characteristics 1) Retained information – Information must be remembered about the system over time 2) Needed services – Set of operations that can change the attributes of a class 3) Multiple attributes – Whereas, a single attribute may denote an atomic variable rather than a class 4) Common attributes – A set of attributes apply to all instances of a class 5) Common operations – A set of operations apply to all instances of a class 6) Essential requirements – Entities that produce or consume information
  • 16. 16 Defining Attributes of a Class  Attributes of a class are those nouns from the grammatical parse that reasonably belong to a class  Attributes hold the values that describe the current properties or state of a class  An attribute may also appear initially as a potential class that is later rejected because of the class selection criteria  In identifying attributes, the following question should be answered  What data items (composite and/or elementary) will fully define a specific class in the context of the problem at hand?
  • 17. 17 Defining Operations of a Class  Operations define the behavior of an object  Four categories of operations  Operations that manipulate data in some way to change the state of an object (e.g., add, delete, modify)  Operations that perform a computation  Operations that inquire about the state of an object  Operations that monitor an object for the occurrence of a controlling event  An operation has knowledge about the state of a class and the nature of its associations  The action performed by an operation is based on the current values of the attributes of a class  Using a grammatical parse again, circle the verbs; then select the verbs that relate to the problem domain classes that were previously identified
  • 18. 18 Example Class Box Component + componentID - telephoneNumber - componentStatus - delayTime - masterPassword - numberOfTries + program() + display() + reset() + query() - modify() + call() Class Name Attributes Operations
  • 19.
  • 25.