SlideShare a Scribd company logo
Unified Modeling Language
(UML)
“Design representations are useful in that they externalize a
designer’s ideas so that they maybe subject to analysis,
evaluation, and comparison with alternative designs; act as a
blueprint for those implementing the design; and document the
final design for those performing later maintenance and
extension.”
Unified Modeling Language (UML)
The Importance of Modeling:
• It helps us to visualize a system.
• It enables us to specify structure and behavior of a system.
• It provides a template to aid construction of a system.
• It provides a means of documentation.
What is UML?
Unified Modeling Language (UML) is the standard language for
specifying, visualizing, constructing, and documenting all the
artifacts of a software system.
UML stands for:
• Unified
– Unifies objected oriented modeling techniques of Grady Brooch, Jim
Rumbaugh and Ivar Jacobson
• Modeling
– The models
• Visualize a system
• Specify structure and behavior
• Provide a template to aid construction of a system
• Provide a means of documentation
• Language
Principles Of Modeling
• No single model is sufficient. Every non-trivial system is best
approached through a small set of nearly independent
models.
• Best models are connected to reality. (visualization)
• Models are expressed at different levels of precision.
(specification)
• Models have profound influence on how a problem is shaped
and attacked. (construction)
Features of UML
– UML is a language to help in design and documentation
– It is a current standard by the OMG (Object Management Group)
– Currently UML version 1.4.2 is an accepted ISO specification
• Available Specifications of the UML, version 2.2 can be found at
http://www.omg.org/technology/documents/formal/uml.htm
– It can express systems other than computer systems
– It can be used for representing the components and organization
of an object oriented system
– Being a semi-formal, high-level, graphical representation, it allows
for easy visualization and communication to others
– It is independent of the language of implementation.
Some features of UML:
 It can express systems other than computer systems.
 It is independent of the language of implementation.
 UML offers modeling for both aspects of object-oriented
design:
Static view
It represents the structure of the system.
Dynamic view
It shows how system entities/objects behave or, collaborate to solve the
problem.
Classification of Diagram Types
Diagram
Behavior
Diagram
Structure
Diagram
Class
Diagram
Composite
Structure Diagram
Object
Diagram
Activity
Diagram
Use Case
Diagram
State Machine
Diagram
Interaction
Diagram
Component
Diagram
Deployment
Diagram
Package
Diagram
Sequence
Diagram
Communication
Diagram
Interaction
Overview
Diagram
Timing
Diagram
Elements of UML
Structural
Diagrams
Behavioral
Diagrams
Model Management
Diagrams
Class Diagrams Use Case Diagrams Packages
Object Diagrams State Chart Diagrams Models
Component Diagrams Activity Diagrams Subsystems
Deployment Diagrams Interaction Diagrams
• Sequence Diagrams
• Collaboration Diagrams
Structural Diagrams: Class & Object Diagrams
• Class diagrams give a static and logical view
of the system in terms of classes and their
relationships
• They can be used at various levels of
abstraction
– Conceptual
– Specification
– Implementation
• Object diagrams represent individual objects
created from a class
Structural Diagrams: Class & Object Diagrams
• A good class diagram:
– Focuses on communicating one aspect of
system’s static design view
– Contains only elements essential to
understanding that aspect
– Provides detail consistent with its level of
abstraction
– Is not so minimalist as to misinform readers
about important semantics
Sample Class & Object Diagrams
Fraction
- top: int
- bottom: int
- DDVAL: int = 1 {invariant}
+ display ()
+ add (f1: Fraction):Fraction
myFraction: Fraction
- top = 1
- bottom = 5
Class Diagram: Object Diagram:
More Class Diagrams
ChatServer
Component which will take
all incoming connections
and keep communication
with chat clients
ChatServer
getNewConnections()
manageConnections()
sendOut()
ChatServer
- nameChatter : String
- message : String
- connections : Collection
- socketListener : Socket
+ getNewConnections()
+ manageConnections()
+ sendOut()
Class Diagrams at different levels of abstraction:
Conceptual Specification Implementation
Notation
More Notation
Aggregation/Composition
Relationships Modeled by UML
Four types of relationships modeled by UML are:
• Dependency
• Generalization
• Realization
• Association 8.. *1.. *
1 64
multiplicity
aggregation
composition
• Dependency
– Using relationship
– One-way relationship
– Denoted by: --------------->
Dependency Relationship
Stack
push(element:T)
T pop()
intStack charStack
Generalization Relationship
• Generalization
– ‘is a’ relationship
– Denoted by:
Student
Undergraduate StudentGraduate Student
School of Arts
& Sciences
School of
Engg.
…
Realization Relationship
• Realization
– One/more classes may realize/implement an
interface
– Denoted as:
<<interface>>
f1( )
f2 ( )
class1
class2
Association Relationship
Multiplicity
• Multiplicity - a specification of the number of possible occurrences of
a property, or the number of allowable elements that may participate
in a given relationship. (*)
• Minimum:
• Mandatory: 1
• Optional: 0
• Maximum:
• Forbidden: 0
• Only one: 1
• Many -*
• Represented as min..max pairs: 0..0, 0..1, 0..*,1..1, 1..*
Association Relationship
• For each association, multiplicity specifies the rules about the number of
times one class is related to the other
Association Relationship
• For each association, multiplicity specifies the rules about the number of
times one class is related to the other
Association Relationship
• For each association, multiplicity specifies the rules about the number of
times one class is related to the other
Association Relationship
• For each association, multiplicity specifies the rules about the number of
times one class is related to the other
Association Relationship
• For each association, multiplicity specifies the rules about the number of
times one class is related to the other
An operating room could be used for multiple operations
The fewest of 0 operations and multiple operations for maximum
An operation is performed in how many operating rooms.
One operation has to be performed in one operation room
An operation is going to be associated with 1 and only one operating room.
According to the following requirements the diagram on the next slide relates to the following points:
• A piece of equipment should be used in 0 operations as a minimum
• And over time it is going to be used in many operations
• An Operation could be performed using no equipment
• An Operation could be performed using many pieces of equipment.
• An Operation could be performed without receiving any cash receipt
• An Operation is associated with many cash receipt
• An operation is performed by 1 and only one doctor
• A doctor could perform 0 operations or many operations
• An operation is assisted with one or many nurses
• A nurse performs 0 or many operations
• Operation is performed on one and only one patient
• A patient could perform 0 operations or many operations
• Cash receipt is received by one and only one accounts receivable
• Internal agent could have done 0 or many Cash receipts
• The cash receipt came from one and only one insurance company
• The insurance company could have given us 0 or many cash receipts
• A cash receipt is entered in one and only one cash account
• A cash account could have been created with one cash receipt but over time we except to have
many cash receipts
Association Relationship
Association Relationship
• Association
– A structural relationship
– Two kinds:
• Aggregation – ‘part of the whole’ relationship
e.g.
• Composition – ‘part of the whole’ relationship and
‘whole owns part’
e.g.
Major Core Courses
1.. * 8.. *
Maze Position1 64
Behavioral Diagrams: Use Case Diagrams
• Related terminology:
– Use case:
A set of scenarios which describe all relevant interactions of a user with
the system for the purpose of achieving a user’s goal
– Scenario:
one particular sequence of events (a single thread of a use case)
– Actor:
a role a user plays in interacting with a system
– one user can play different roles in different cases
– Actors may be human/ non-human systems
use case
name
Actor name
Association /
communication
name
Student
System
Administrator
Sample Use Case Diagram
add a course
1. Finds an acceptable course
2. Fills an add form
3. Goes to registrar
4. Registrar verifies student info and
availability of course
5. Student pays the course add fee by
credit card (alternative scenarios
possible at this stage: -credit card not
approved -fee waived if on
scholarship)
6. Registrar enters student in the
enrollment database
7. Student receives the receipt and
class confirmation
Add a
course
Drop a
course
Confirmation
by registrar
Start/stop
registration
server
.
.
.
Use cases can be either written or drawn:
Behavioral Diagrams: Interaction Diagrams
• Interaction diagrams show how objects in a system interact/
work together
• Two types of interaction diagrams:
– Sequence diagrams
– Collaboration diagrams
• Sequence Diagrams
– Show a time-ordered series of method invocations among a set of
objects
– The vertical axis represents time; time flows from top of diagram to
the bottom
– The horizontal axis shows the object participating in the interactions
Sample Sequence Diagram
:Controller :Object1 :Object2
Request (arg 1,…)
result = op1(args1)
op2(result)
pass result
to object2
Behavioral Diagrams: State Chart Diagram
• A state chart diagram shows dynamic
behavior of a system from an outside
behavior
• It consists of states and transition conditions
from one to another
• It also includes information of the ‘start’ and
‘stop’ states of the system.
state-name
state-variables
activities state-name
A State An Initial State Representing
Termination
state-name
event
[condition]/ action;
action; … action;
Representing
Transitions
OR
[All items checked but
some not in stock]
Items Received
[All items
available]
Sample State Chart Diagram
Checking
do / check item
Dispatching
do / initiate
delivery
[All items
checked and
available]
Waiting
Delivered
do / close
start
/ get first
item
Delivered
[Not all items
checked ]
/ get next item

More Related Content

What's hot

UML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxUML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptx
Nwabueze Obioma
 
UML Modeling in Java
UML Modeling in JavaUML Modeling in Java
UML Modeling in Java
Daffodil International University
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering
Mubashir Jutt
 
Uml
UmlUml
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
anasz3z3
 
UML
UMLUML
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
surana college
 
Presentation on uml
Presentation on umlPresentation on uml
Presentation on uml
Shruti Dalela
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGE
Raval Chirag
 
Uml with detail
Uml with detailUml with detail
Uml with detail
Hamza Khan
 
Uml
UmlUml
Uml
parag
 
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
 
Object Oriented Modeling and Design with UML
Object Oriented Modeling and Design with UMLObject Oriented Modeling and Design with UML
Object Oriented Modeling and Design with UML
Malek Sumaiya
 
UML- Unified Modeling Language
UML- Unified Modeling LanguageUML- Unified Modeling Language
UML- Unified Modeling Language
Shahzad
 
UML Diagram Assignment Help, UML Diagram Homework Help
UML Diagram Assignment Help, UML Diagram Homework HelpUML Diagram Assignment Help, UML Diagram Homework Help
UML Diagram Assignment Help, UML Diagram Homework Help
Jacob William
 
Introduction to Modeling Java and UML
Introduction to Modeling Java and UMLIntroduction to Modeling Java and UML
Introduction to Modeling Java and UMLDang Tuan
 
UML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language IntroductionUML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language Introduction
Ramakant Soni
 

What's hot (20)

Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
UML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxUML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptx
 
UML Modeling in Java
UML Modeling in JavaUML Modeling in Java
UML Modeling in Java
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering
 
Uml
UmlUml
Uml
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
Uml Tutorial
Uml TutorialUml Tutorial
Uml Tutorial
 
UML
UMLUML
UML
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
Presentation on uml
Presentation on umlPresentation on uml
Presentation on uml
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGE
 
Uml with detail
Uml with detailUml with detail
Uml with detail
 
Uml
UmlUml
Uml
 
Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)
 
Object Oriented Modeling and Design with UML
Object Oriented Modeling and Design with UMLObject Oriented Modeling and Design with UML
Object Oriented Modeling and Design with UML
 
UML- Unified Modeling Language
UML- Unified Modeling LanguageUML- Unified Modeling Language
UML- Unified Modeling Language
 
UML Diagram Assignment Help, UML Diagram Homework Help
UML Diagram Assignment Help, UML Diagram Homework HelpUML Diagram Assignment Help, UML Diagram Homework Help
UML Diagram Assignment Help, UML Diagram Homework Help
 
Introduction to Modeling Java and UML
Introduction to Modeling Java and UMLIntroduction to Modeling Java and UML
Introduction to Modeling Java and UML
 
Case Study Uml
Case Study UmlCase Study Uml
Case Study Uml
 
UML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language IntroductionUML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language Introduction
 

Similar to Uml

analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
sabin kafle
 
Unit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).pptUnit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).ppt
ganeshkarthy
 
Chap5 oodm-uml-part11
Chap5 oodm-uml-part11Chap5 oodm-uml-part11
Chap5 oodm-uml-part11
SJC
 
Chap5 oodm-uml-part1
Chap5 oodm-uml-part1Chap5 oodm-uml-part1
Chap5 oodm-uml-part1
SJC
 
Lab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramLab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagram
Farah Ahmed
 
Introduction to OOAD
Introduction to OOADIntroduction to OOAD
Introduction to OOAD
Saraswati Saud
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence Diagram
Nikhil Pandit
 
CASE Tools lab.ppt
CASE Tools lab.pptCASE Tools lab.ppt
CASE Tools lab.ppt
RAJESH S
 
Uml intro
Uml introUml intro
Uml intro
Preeti Mishra
 
Ch 2.1
Ch 2.1Ch 2.1
Use Case Diagram.pptx
Use Case Diagram.pptxUse Case Diagram.pptx
Use Case Diagram.pptx
Genta Sahuri
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Dr Sukhpal Singh Gill
 
Use case diagram
Use case diagramUse case diagram
Use case diagram
City University
 
Ooad lab manual
Ooad  lab manualOoad  lab manual
Ooad lab manual
Praseela R
 
Intoduction to uml
Intoduction to umlIntoduction to uml
Intoduction to uml
Mahesh Bhalerao
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
6020 peaks
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
MeagGhn
 
UNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptxUNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptx
viju001
 

Similar to Uml (20)

analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
 
Unit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).pptUnit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).ppt
 
Chap5 oodm-uml-part11
Chap5 oodm-uml-part11Chap5 oodm-uml-part11
Chap5 oodm-uml-part11
 
Chap5 oodm-uml-part1
Chap5 oodm-uml-part1Chap5 oodm-uml-part1
Chap5 oodm-uml-part1
 
Lab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramLab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagram
 
Introduction to OOAD
Introduction to OOADIntroduction to OOAD
Introduction to OOAD
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence Diagram
 
CASE Tools lab.ppt
CASE Tools lab.pptCASE Tools lab.ppt
CASE Tools lab.ppt
 
Uml intro
Uml introUml intro
Uml intro
 
Ch 2.1
Ch 2.1Ch 2.1
Ch 2.1
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Use Case Diagram.pptx
Use Case Diagram.pptxUse Case Diagram.pptx
Use Case Diagram.pptx
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
 
Use case diagram
Use case diagramUse case diagram
Use case diagram
 
Ooad lab manual
Ooad  lab manualOoad  lab manual
Ooad lab manual
 
Intoduction to uml
Intoduction to umlIntoduction to uml
Intoduction to uml
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
 
UNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptxUNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptx
 

Recently uploaded

一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
zwunae
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Christina Lin
 
Forklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella PartsForklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella Parts
Intella Parts
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
ChristineTorrepenida1
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
Massimo Talia
 
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
dxobcob
 
Online aptitude test management system project report.pdf
Online aptitude test management system project report.pdfOnline aptitude test management system project report.pdf
Online aptitude test management system project report.pdf
Kamal Acharya
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
AJAYKUMARPUND1
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
bakpo1
 
14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application
SyedAbiiAzazi1
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
camseq
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation & Control
 
Building Electrical System Design & Installation
Building Electrical System Design & InstallationBuilding Electrical System Design & Installation
Building Electrical System Design & Installation
symbo111
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
zwunae
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
NidhalKahouli2
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Teleport Manpower Consultant
 
Water billing management system project report.pdf
Water billing management system project report.pdfWater billing management system project report.pdf
Water billing management system project report.pdf
Kamal Acharya
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
Victor Morales
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
Osamah Alsalih
 

Recently uploaded (20)

一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
 
Forklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella PartsForklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella Parts
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
 
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
 
Online aptitude test management system project report.pdf
Online aptitude test management system project report.pdfOnline aptitude test management system project report.pdf
Online aptitude test management system project report.pdf
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
 
14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
 
Building Electrical System Design & Installation
Building Electrical System Design & InstallationBuilding Electrical System Design & Installation
Building Electrical System Design & Installation
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
 
Water billing management system project report.pdf
Water billing management system project report.pdfWater billing management system project report.pdf
Water billing management system project report.pdf
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
 

Uml

  • 1. Unified Modeling Language (UML) “Design representations are useful in that they externalize a designer’s ideas so that they maybe subject to analysis, evaluation, and comparison with alternative designs; act as a blueprint for those implementing the design; and document the final design for those performing later maintenance and extension.”
  • 2. Unified Modeling Language (UML) The Importance of Modeling: • It helps us to visualize a system. • It enables us to specify structure and behavior of a system. • It provides a template to aid construction of a system. • It provides a means of documentation. What is UML? Unified Modeling Language (UML) is the standard language for specifying, visualizing, constructing, and documenting all the artifacts of a software system.
  • 3. UML stands for: • Unified – Unifies objected oriented modeling techniques of Grady Brooch, Jim Rumbaugh and Ivar Jacobson • Modeling – The models • Visualize a system • Specify structure and behavior • Provide a template to aid construction of a system • Provide a means of documentation • Language
  • 4. Principles Of Modeling • No single model is sufficient. Every non-trivial system is best approached through a small set of nearly independent models. • Best models are connected to reality. (visualization) • Models are expressed at different levels of precision. (specification) • Models have profound influence on how a problem is shaped and attacked. (construction)
  • 5. Features of UML – UML is a language to help in design and documentation – It is a current standard by the OMG (Object Management Group) – Currently UML version 1.4.2 is an accepted ISO specification • Available Specifications of the UML, version 2.2 can be found at http://www.omg.org/technology/documents/formal/uml.htm – It can express systems other than computer systems – It can be used for representing the components and organization of an object oriented system – Being a semi-formal, high-level, graphical representation, it allows for easy visualization and communication to others – It is independent of the language of implementation.
  • 6. Some features of UML:  It can express systems other than computer systems.  It is independent of the language of implementation.  UML offers modeling for both aspects of object-oriented design: Static view It represents the structure of the system. Dynamic view It shows how system entities/objects behave or, collaborate to solve the problem.
  • 7. Classification of Diagram Types Diagram Behavior Diagram Structure Diagram Class Diagram Composite Structure Diagram Object Diagram Activity Diagram Use Case Diagram State Machine Diagram Interaction Diagram Component Diagram Deployment Diagram Package Diagram Sequence Diagram Communication Diagram Interaction Overview Diagram Timing Diagram
  • 8. Elements of UML Structural Diagrams Behavioral Diagrams Model Management Diagrams Class Diagrams Use Case Diagrams Packages Object Diagrams State Chart Diagrams Models Component Diagrams Activity Diagrams Subsystems Deployment Diagrams Interaction Diagrams • Sequence Diagrams • Collaboration Diagrams
  • 9. Structural Diagrams: Class & Object Diagrams • Class diagrams give a static and logical view of the system in terms of classes and their relationships • They can be used at various levels of abstraction – Conceptual – Specification – Implementation • Object diagrams represent individual objects created from a class
  • 10. Structural Diagrams: Class & Object Diagrams • A good class diagram: – Focuses on communicating one aspect of system’s static design view – Contains only elements essential to understanding that aspect – Provides detail consistent with its level of abstraction – Is not so minimalist as to misinform readers about important semantics
  • 11. Sample Class & Object Diagrams Fraction - top: int - bottom: int - DDVAL: int = 1 {invariant} + display () + add (f1: Fraction):Fraction myFraction: Fraction - top = 1 - bottom = 5 Class Diagram: Object Diagram:
  • 12. More Class Diagrams ChatServer Component which will take all incoming connections and keep communication with chat clients ChatServer getNewConnections() manageConnections() sendOut() ChatServer - nameChatter : String - message : String - connections : Collection - socketListener : Socket + getNewConnections() + manageConnections() + sendOut() Class Diagrams at different levels of abstraction: Conceptual Specification Implementation
  • 16. Relationships Modeled by UML Four types of relationships modeled by UML are: • Dependency • Generalization • Realization • Association 8.. *1.. * 1 64 multiplicity aggregation composition
  • 17. • Dependency – Using relationship – One-way relationship – Denoted by: ---------------> Dependency Relationship Stack push(element:T) T pop() intStack charStack
  • 18. Generalization Relationship • Generalization – ‘is a’ relationship – Denoted by: Student Undergraduate StudentGraduate Student School of Arts & Sciences School of Engg. …
  • 19. Realization Relationship • Realization – One/more classes may realize/implement an interface – Denoted as: <<interface>> f1( ) f2 ( ) class1 class2
  • 20. Association Relationship Multiplicity • Multiplicity - a specification of the number of possible occurrences of a property, or the number of allowable elements that may participate in a given relationship. (*) • Minimum: • Mandatory: 1 • Optional: 0 • Maximum: • Forbidden: 0 • Only one: 1 • Many -* • Represented as min..max pairs: 0..0, 0..1, 0..*,1..1, 1..*
  • 21. Association Relationship • For each association, multiplicity specifies the rules about the number of times one class is related to the other
  • 22. Association Relationship • For each association, multiplicity specifies the rules about the number of times one class is related to the other
  • 23. Association Relationship • For each association, multiplicity specifies the rules about the number of times one class is related to the other
  • 24. Association Relationship • For each association, multiplicity specifies the rules about the number of times one class is related to the other
  • 25. Association Relationship • For each association, multiplicity specifies the rules about the number of times one class is related to the other An operating room could be used for multiple operations The fewest of 0 operations and multiple operations for maximum An operation is performed in how many operating rooms. One operation has to be performed in one operation room An operation is going to be associated with 1 and only one operating room.
  • 26. According to the following requirements the diagram on the next slide relates to the following points: • A piece of equipment should be used in 0 operations as a minimum • And over time it is going to be used in many operations • An Operation could be performed using no equipment • An Operation could be performed using many pieces of equipment. • An Operation could be performed without receiving any cash receipt • An Operation is associated with many cash receipt • An operation is performed by 1 and only one doctor • A doctor could perform 0 operations or many operations • An operation is assisted with one or many nurses • A nurse performs 0 or many operations • Operation is performed on one and only one patient • A patient could perform 0 operations or many operations • Cash receipt is received by one and only one accounts receivable • Internal agent could have done 0 or many Cash receipts • The cash receipt came from one and only one insurance company • The insurance company could have given us 0 or many cash receipts • A cash receipt is entered in one and only one cash account • A cash account could have been created with one cash receipt but over time we except to have many cash receipts
  • 28. Association Relationship • Association – A structural relationship – Two kinds: • Aggregation – ‘part of the whole’ relationship e.g. • Composition – ‘part of the whole’ relationship and ‘whole owns part’ e.g. Major Core Courses 1.. * 8.. * Maze Position1 64
  • 29. Behavioral Diagrams: Use Case Diagrams • Related terminology: – Use case: A set of scenarios which describe all relevant interactions of a user with the system for the purpose of achieving a user’s goal – Scenario: one particular sequence of events (a single thread of a use case) – Actor: a role a user plays in interacting with a system – one user can play different roles in different cases – Actors may be human/ non-human systems use case name Actor name Association / communication name
  • 30. Student System Administrator Sample Use Case Diagram add a course 1. Finds an acceptable course 2. Fills an add form 3. Goes to registrar 4. Registrar verifies student info and availability of course 5. Student pays the course add fee by credit card (alternative scenarios possible at this stage: -credit card not approved -fee waived if on scholarship) 6. Registrar enters student in the enrollment database 7. Student receives the receipt and class confirmation Add a course Drop a course Confirmation by registrar Start/stop registration server . . . Use cases can be either written or drawn:
  • 31. Behavioral Diagrams: Interaction Diagrams • Interaction diagrams show how objects in a system interact/ work together • Two types of interaction diagrams: – Sequence diagrams – Collaboration diagrams • Sequence Diagrams – Show a time-ordered series of method invocations among a set of objects – The vertical axis represents time; time flows from top of diagram to the bottom – The horizontal axis shows the object participating in the interactions
  • 32. Sample Sequence Diagram :Controller :Object1 :Object2 Request (arg 1,…) result = op1(args1) op2(result) pass result to object2
  • 33. Behavioral Diagrams: State Chart Diagram • A state chart diagram shows dynamic behavior of a system from an outside behavior • It consists of states and transition conditions from one to another • It also includes information of the ‘start’ and ‘stop’ states of the system. state-name state-variables activities state-name A State An Initial State Representing Termination state-name event [condition]/ action; action; … action; Representing Transitions OR
  • 34. [All items checked but some not in stock] Items Received [All items available] Sample State Chart Diagram Checking do / check item Dispatching do / initiate delivery [All items checked and available] Waiting Delivered do / close start / get first item Delivered [Not all items checked ] / get next item