SlideShare a Scribd company logo
Presenter : Waseem khan
1
 What is UML?
 Motivations for UML
 Types of UML diagrams
 UML Syntax
 Descriptions of the various diagram types
 Tools for UML
2
 A standardized, graphical “modeling language” for
communicating software design.
 Prototyping is used in some industries which have
problems
 Allows implementation-independent specification of:
◦ user/system interactions (required behaviors)
◦ partitioning of responsibility (OO)
◦ integration with larger or existing systems
◦ data flow and dependency
◦ operation orderings (algorithms)
◦ concurrent operations
3
 UML is a fusion of ideas from several precursor
modeling languages.
 We need a modeling language to:
◦ help develop efficient, effective and correct designs,
particularly Object Oriented designs.
◦ communicate clearly with project stakeholders
(concerned parties: developers, customer, etc).
◦ give us the “big picture” view of the project.
4
 There are different types of UML diagram,
each with slightly different syntax rules:
◦ use cases.
◦ class diagrams.
◦ sequence diagrams.
◦ package diagrams.
◦ state diagrams
◦ activity diagrams
◦ deployment diagrams.
5
 Actors: Indicates an interface (point of interaction)
with the system.
 Boxes: Used variously throughout UML to indicate
discrete elements, groupings and containment.
 Arrows: All manner of things, depending on which
particular type of UML diagram they’re in. Usually,
arrows indicate flow, dependency, association or
generalization.
 Cardinality: shows numerical relationships between
elements in a model.
 Stereotypes: allow us to extend the semantics of
UML with English denoted by <<>>
6
 A use case encodes a typical user interaction with the
system. In particular, it:
◦ captures some user-visible function.
◦ achieves some concrete goal for the user.
 A complete set of use cases largely defines the
requirements for your system.
7
8
9
 Motivated by Object-Oriented design and
programming (OOD, OOP).
 A class diagram partitions the system into areas
of responsibility (classes), and shows
“associations” (dependencies) between them.
 Attributes (data), operations (methods),
constraints, part-of (navigability) and type-of
(inheritance) relationships, access, and
cardinality (1 to many) may all be noted.
10
11
12
What is a Class Diagram?
• A class diagram is a view of the static structure
of a system
– Models contain many class diagrams
• Class diagrams contain:
– Packages, classes, interfaces, and relationships
• Notation:
Package
Name
Class Name
Interface Name
<<Interface>>
13
Relationships
• Class diagrams may contain the following
relationships:
– Association, aggregation, dependency, realize, and
inheritance
• Notation:
Association Aggregation Dependency
Inheritance Realize
14
Class Relationships
15
Zero or more0..*
One or more1..*
Zero or one0..1
Specified range2..7
Exactly one
1
Multiplicity Indicators
• Each end of an association or aggregation
contains a multiplicity indicator
– Indicates the number of objects participating in the
relationship
16
Multiplicity Indicators
 Sequence diagram describe algorithms, though usually
at a high level
 the operations in a useful sequence diagram specify the
“message passing” (method invocation) between objects
(classes, roles) in the system.
 May in principle be used at the same three levels as
class diagrams, though the specification level will usually
be most useful.
 At implementation level one must use pseudo code
17
18
 A type of class diagram, package diagrams show
dependencies between high-level system component.
 A “package” is usually a collection of related classes,
and will usually be specified by it’s own class diagram.
 The software in two distinct packages is separate;
packages only interact through well-defined interfaces,
there is no direct sharing of data or code.
 Not all packages in a system’s package diagram are
new software; many packages (components) in a
complex system are often already available as existing
or off-the-shelf software.
19
20
21
Deployment Diagram
A deployment diagram is useful for showing how your
software will be deployed on hardware. It may show
how your system will integrate with existing systems in
the domain.
 State diagrams: similar in function to sequence
diagrams, but with focus on the prerequisites for
an operation, rather than the exact sequence of
actions.
 Activity diagram : is another important diagram
in UML to describe dynamic aspects of the
system.
 Activity diagram is basically a flow chart to
represent the flow form one activity to another
activity. The activity can be described as an
operation of the system.
22
23
 UML collaboration/communication diagrams like
UML sequence diagrams,
 Used to explore the dynamic nature of your
software.
 Collaboration diagrams show the message flow
between objects in an OO application, and also
imply the basic associations (relationships)
between classes
24
25
 Rational Rose
 Microsoft Visio
26
Uml Explained Step ByStep

More Related Content

What's hot

UML (Unified Modeling Language)
UML (Unified Modeling Language)UML (Unified Modeling Language)
UML (Unified Modeling Language)
Nguyen Tuan
 
Uml(unified modeling language) Homework Help
Uml(unified modeling language) Homework HelpUml(unified modeling language) Homework Help
Uml(unified modeling language) Homework Help
Steve Nash
 
Uml with detail
Uml with detailUml with detail
Uml with detail
Hamza Khan
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
anasz3z3
 
UML Modeling in Java
UML Modeling in JavaUML Modeling in Java
UML Modeling in Java
Daffodil International University
 
UML
UMLUML
Uml
UmlUml
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
Mubashir Ali
 
Uml Diagrams for Web Developers
Uml Diagrams for Web DevelopersUml Diagrams for Web Developers
Uml Diagrams for Web Developers
Dave Kelleher
 
UML and Case study
UML and Case study UML and Case study
UML and Case study
Mihika-QA
 
What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?
Eliza Wright
 
Uml2
Uml2Uml2
Intro to UML 2
Intro to UML 2Intro to UML 2
Intro to UML 2
rchakra
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
Nurul Haszeli Ahmad
 
UML Architecture and Views
UML Architecture and ViewsUML Architecture and Views
UML Architecture and Views
Kumar
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
mewaseem
 
Uml Diagrams
Uml DiagramsUml Diagrams
Uml Diagrams
Nirmal Sharma
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
Manish Kumar
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGE
Raval Chirag
 
UML Diagrams
UML DiagramsUML Diagrams
UML Diagrams
Kartik Raghuvanshi
 

What's hot (20)

UML (Unified Modeling Language)
UML (Unified Modeling Language)UML (Unified Modeling Language)
UML (Unified Modeling Language)
 
Uml(unified modeling language) Homework Help
Uml(unified modeling language) Homework HelpUml(unified modeling language) Homework Help
Uml(unified modeling language) Homework Help
 
Uml with detail
Uml with detailUml with detail
Uml with detail
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
UML Modeling in Java
UML Modeling in JavaUML Modeling in Java
UML Modeling in Java
 
UML
UMLUML
UML
 
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 Diagrams for Web Developers
Uml Diagrams for Web DevelopersUml Diagrams for Web Developers
Uml Diagrams for Web Developers
 
UML and Case study
UML and Case study UML and Case study
UML and Case study
 
What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?
 
Uml2
Uml2Uml2
Uml2
 
Intro to UML 2
Intro to UML 2Intro to UML 2
Intro to UML 2
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
 
UML Architecture and Views
UML Architecture and ViewsUML Architecture and Views
UML Architecture and Views
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
Uml Diagrams
Uml DiagramsUml Diagrams
Uml Diagrams
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGE
 
UML Diagrams
UML DiagramsUML Diagrams
UML Diagrams
 

Similar to Uml Explained Step ByStep

Architecture and design
Architecture and designArchitecture and design
Architecture and design
himanshu_airon
 
Modeling software architecture with uml
Modeling software architecture with umlModeling software architecture with uml
Modeling software architecture with uml
International Journal of Science and Research (IJSR)
 
Understanding unified modelling language
Understanding unified modelling languageUnderstanding unified modelling language
Understanding unified modelling language
Emmanuel Kumah
 
lecture8UML Diagrams.pptx
lecture8UML Diagrams.pptxlecture8UML Diagrams.pptx
lecture8UML Diagrams.pptx
GracePeter10
 
Object oriented analysis and design unit- iv
Object oriented analysis and design unit- ivObject oriented analysis and design unit- iv
Object oriented analysis and design unit- iv
Shri Shankaracharya College, Bhilai,Junwani
 
ASP.NET System design 2
ASP.NET System design 2ASP.NET System design 2
ASP.NET System design 2
Sisir Ghosh
 
SE UML.ppt
SE UML.pptSE UML.ppt
SE UML.ppt
AliZaib71
 
Uml
UmlUml
Uml
parag
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
MeagGhn
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
6020 peaks
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
Neeraj Kaushik
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
Neeraj Kaushik
 
Ooad
OoadOoad
Ooad
gantib
 
4.o o design tools=uml -_lecture 4
4.o o design tools=uml -_lecture 44.o o design tools=uml -_lecture 4
4.o o design tools=uml -_lecture 4
Warui Maina
 
Chapter 3 UML Structured Diagrams.pptx
Chapter 3 UML Structured Diagrams.pptxChapter 3 UML Structured Diagrams.pptx
Chapter 3 UML Structured Diagrams.pptx
ditsinieves
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
surana college
 
432
432432
System modeling
System modelingSystem modeling
System modeling
Sajan Poudel
 
Uml
UmlUml
Chapter1
Chapter1Chapter1
Chapter1
Dang Tuan
 

Similar to Uml Explained Step ByStep (20)

Architecture and design
Architecture and designArchitecture and design
Architecture and design
 
Modeling software architecture with uml
Modeling software architecture with umlModeling software architecture with uml
Modeling software architecture with uml
 
Understanding unified modelling language
Understanding unified modelling languageUnderstanding unified modelling language
Understanding unified modelling language
 
lecture8UML Diagrams.pptx
lecture8UML Diagrams.pptxlecture8UML Diagrams.pptx
lecture8UML Diagrams.pptx
 
Object oriented analysis and design unit- iv
Object oriented analysis and design unit- ivObject oriented analysis and design unit- iv
Object oriented analysis and design unit- iv
 
ASP.NET System design 2
ASP.NET System design 2ASP.NET System design 2
ASP.NET System design 2
 
SE UML.ppt
SE UML.pptSE UML.ppt
SE UML.ppt
 
Uml
UmlUml
Uml
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Ooad
OoadOoad
Ooad
 
4.o o design tools=uml -_lecture 4
4.o o design tools=uml -_lecture 44.o o design tools=uml -_lecture 4
4.o o design tools=uml -_lecture 4
 
Chapter 3 UML Structured Diagrams.pptx
Chapter 3 UML Structured Diagrams.pptxChapter 3 UML Structured Diagrams.pptx
Chapter 3 UML Structured Diagrams.pptx
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
432
432432
432
 
System modeling
System modelingSystem modeling
System modeling
 
Uml
UmlUml
Uml
 
Chapter1
Chapter1Chapter1
Chapter1
 

Recently uploaded

LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
Grant Fritchey
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
Yara Milbes
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Undress Baby
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
Quickdice ERP
 

Recently uploaded (20)

LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
 

Uml Explained Step ByStep

  • 2.  What is UML?  Motivations for UML  Types of UML diagrams  UML Syntax  Descriptions of the various diagram types  Tools for UML 2
  • 3.  A standardized, graphical “modeling language” for communicating software design.  Prototyping is used in some industries which have problems  Allows implementation-independent specification of: ◦ user/system interactions (required behaviors) ◦ partitioning of responsibility (OO) ◦ integration with larger or existing systems ◦ data flow and dependency ◦ operation orderings (algorithms) ◦ concurrent operations 3
  • 4.  UML is a fusion of ideas from several precursor modeling languages.  We need a modeling language to: ◦ help develop efficient, effective and correct designs, particularly Object Oriented designs. ◦ communicate clearly with project stakeholders (concerned parties: developers, customer, etc). ◦ give us the “big picture” view of the project. 4
  • 5.  There are different types of UML diagram, each with slightly different syntax rules: ◦ use cases. ◦ class diagrams. ◦ sequence diagrams. ◦ package diagrams. ◦ state diagrams ◦ activity diagrams ◦ deployment diagrams. 5
  • 6.  Actors: Indicates an interface (point of interaction) with the system.  Boxes: Used variously throughout UML to indicate discrete elements, groupings and containment.  Arrows: All manner of things, depending on which particular type of UML diagram they’re in. Usually, arrows indicate flow, dependency, association or generalization.  Cardinality: shows numerical relationships between elements in a model.  Stereotypes: allow us to extend the semantics of UML with English denoted by <<>> 6
  • 7.  A use case encodes a typical user interaction with the system. In particular, it: ◦ captures some user-visible function. ◦ achieves some concrete goal for the user.  A complete set of use cases largely defines the requirements for your system. 7
  • 8. 8
  • 9. 9
  • 10.  Motivated by Object-Oriented design and programming (OOD, OOP).  A class diagram partitions the system into areas of responsibility (classes), and shows “associations” (dependencies) between them.  Attributes (data), operations (methods), constraints, part-of (navigability) and type-of (inheritance) relationships, access, and cardinality (1 to many) may all be noted. 10
  • 11. 11
  • 12. 12 What is a Class Diagram? • A class diagram is a view of the static structure of a system – Models contain many class diagrams • Class diagrams contain: – Packages, classes, interfaces, and relationships • Notation: Package Name Class Name Interface Name <<Interface>>
  • 13. 13 Relationships • Class diagrams may contain the following relationships: – Association, aggregation, dependency, realize, and inheritance • Notation: Association Aggregation Dependency Inheritance Realize
  • 15. 15 Zero or more0..* One or more1..* Zero or one0..1 Specified range2..7 Exactly one 1 Multiplicity Indicators • Each end of an association or aggregation contains a multiplicity indicator – Indicates the number of objects participating in the relationship
  • 17.  Sequence diagram describe algorithms, though usually at a high level  the operations in a useful sequence diagram specify the “message passing” (method invocation) between objects (classes, roles) in the system.  May in principle be used at the same three levels as class diagrams, though the specification level will usually be most useful.  At implementation level one must use pseudo code 17
  • 18. 18
  • 19.  A type of class diagram, package diagrams show dependencies between high-level system component.  A “package” is usually a collection of related classes, and will usually be specified by it’s own class diagram.  The software in two distinct packages is separate; packages only interact through well-defined interfaces, there is no direct sharing of data or code.  Not all packages in a system’s package diagram are new software; many packages (components) in a complex system are often already available as existing or off-the-shelf software. 19
  • 20. 20
  • 21. 21 Deployment Diagram A deployment diagram is useful for showing how your software will be deployed on hardware. It may show how your system will integrate with existing systems in the domain.
  • 22.  State diagrams: similar in function to sequence diagrams, but with focus on the prerequisites for an operation, rather than the exact sequence of actions.  Activity diagram : is another important diagram in UML to describe dynamic aspects of the system.  Activity diagram is basically a flow chart to represent the flow form one activity to another activity. The activity can be described as an operation of the system. 22
  • 23. 23
  • 24.  UML collaboration/communication diagrams like UML sequence diagrams,  Used to explore the dynamic nature of your software.  Collaboration diagrams show the message flow between objects in an OO application, and also imply the basic associations (relationships) between classes 24
  • 25. 25
  • 26.  Rational Rose  Microsoft Visio 26