SlideShare a Scribd company logo
Aug 18, 2016
Simple UML
2
What is UML?
 UML stands for Unified Modeling Language
 UML is a diagramming language designed for Object-
Oriented programming
 UML can be used to describe:
 the organization of a program
 how a program executes
 how a program is used
 how a program is deployed over a network
 …and more
3
Design Patterns
 Design Patterns describe the higher-level organization
of solutions to common problems
 Design Patterns are a current hot topic in O-O design
 UML is always used for Design Patterns
 Design Patterns are used to describe refactorings
 We will discuss some Design Patterns later on in this
course
4
UML is complex
 UML is a big, complicated diagramming language
 UML comprises at least seven or eight different kinds
of diagrams
 This talk will cover just a tiny bit of one kind of
diagram, the class diagram
 A class diagram is often all that is needed to describe
a particular Design Pattern
5
Class diagrams
 A class diagram shows classes, interfaces, and their
relationships
 We’ll cover most of classes and interfaces, and a few
of the most important relationships
6
Classes
 A class is drawn as a rectangle with two or three
compartments:
Name of the class
Variables [optional]
Methods
7
Variables I
 A variable is written as:
visibility name : type
where:
 + means public visibility
 # means protected visibility
 - means private visibility
 <blank> means default (package) visibility
 Example: +length:int
8
Variables II
 Static variables are underlined
 An initial value can be shown with =value
 Example:
-numberOfEmployees:int=10
means numberOfEmployees is:
 private
 static
 integer
 and has 10 as its initial value
9
Methods
 Methods are written as:
visibility name (parameters) : returnType
where
 visibility uses the same syntax variables (+, -, #, blank)
 parameters are given as name:type
 if the returnType is void, it is omitted
 constructors are preceded by «constructor»
 interfaces are preceded by «interface»
 an ellipsis (…) indicates omitted methods
10
Example of a class
Card
cardId:int
-copy:boolean=false
«constructor» Card(int id)
+isKind(desiredKind:int)
+isSharable():boolean
+toString():String
11
Types of relationships
A
B
Class B
extends
class A
C
D
1..4
Class C
contains
1 to 4 objects
of class D
Factory
Product
creates
Other
kinds of
relations
12
Example: Secret Code program
13
UML tools
 Rational Rose is the “real world” standard; full round-
trip code generation
 Recently acquired by IBM (right under Microsoft’s nose!)
 Together (from Borland) is a lot like Rational Rose
 I haven’t used it in about three years (since before Borland
bought it from TogetherSoft)
 ArgoUML looks interesting (and is open source)
 BlueJ, of course, displays simple UML diagrams
 Drawing programs with UML support
 Visio is a Microsoft tool
 Dia is a freeware clone of Visio
14
Tool links
 Rational Rose
 http://www-3.ibm.com/software/awdtools/developer/rosexde/
 Together
 http://www.borland.com/together/
 ArgoUML
 http://argouml.tigris.org
 Visio
 Hard to find info on Microsoft’s site!
 http://msdn.microsoft.com/office/understanding/visio/
 Dia
 http://www.lysator.liu.se/~alla/dia
15
The End
Ad

More Related Content

What's hot (20)

Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modeling
ramyaaswin
 
ER-Model-ER Diagram
ER-Model-ER DiagramER-Model-ER Diagram
ER-Model-ER Diagram
Saranya Natarajan
 
Ado.Net Tutorial
Ado.Net TutorialAdo.Net Tutorial
Ado.Net Tutorial
prabhu rajendran
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
Shakila Mahjabin
 
Class diagrams
Class diagramsClass diagrams
Class diagrams
Nadia_Nazeer
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
Darshit Metaliya
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
mewaseem
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UML
Ajit Nayak
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
Haitham El-Ghareeb
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
Debajyoti Biswas
 
1. Introduction to DBMS
1. Introduction to DBMS1. Introduction to DBMS
1. Introduction to DBMS
koolkampus
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagram
Rahul Pola
 
Domain model
Domain modelDomain model
Domain model
Eagle Eyes
 
Android intents
Android intentsAndroid intents
Android intents
Siva Ramakrishna kv
 
Ooad unit – 1 introduction
Ooad unit – 1 introductionOoad unit – 1 introduction
Ooad unit – 1 introduction
Babeetha Muruganantham
 
INTRODUCTION TO UML DIAGRAMS
INTRODUCTION TO UML DIAGRAMSINTRODUCTION TO UML DIAGRAMS
INTRODUCTION TO UML DIAGRAMS
Ashita Agrawal
 
Use case diagram
Use case diagramUse case diagram
Use case diagram
City University
 
Entity Relationship Diagrams
Entity Relationship DiagramsEntity Relationship Diagrams
Entity Relationship Diagrams
sadique_ghitm
 
UML
UMLUML
UML
iQra Rafaqat
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologies
Amith Tiwari
 
Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modeling
ramyaaswin
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
Shakila Mahjabin
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
Darshit Metaliya
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
mewaseem
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UML
Ajit Nayak
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
Haitham El-Ghareeb
 
1. Introduction to DBMS
1. Introduction to DBMS1. Introduction to DBMS
1. Introduction to DBMS
koolkampus
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagram
Rahul Pola
 
INTRODUCTION TO UML DIAGRAMS
INTRODUCTION TO UML DIAGRAMSINTRODUCTION TO UML DIAGRAMS
INTRODUCTION TO UML DIAGRAMS
Ashita Agrawal
 
Entity Relationship Diagrams
Entity Relationship DiagramsEntity Relationship Diagrams
Entity Relationship Diagrams
sadique_ghitm
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologies
Amith Tiwari
 

Viewers also liked (7)

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
 
Uml
UmlUml
Uml
Sulman Ahmed
 
Pace IT - Printer Installation
Pace IT - Printer InstallationPace IT - Printer Installation
Pace IT - Printer Installation
Pace IT at Edmonds Community College
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
Ashesh R
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagram
Puneet Arora
 
Data Flow Diagram Example
Data Flow Diagram ExampleData Flow Diagram Example
Data Flow Diagram Example
Kaviarasu D
 
Dfd examples
Dfd examplesDfd examples
Dfd examples
Mohit
 
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
Ashesh R
 
Data Flow Diagram Example
Data Flow Diagram ExampleData Flow Diagram Example
Data Flow Diagram Example
Kaviarasu D
 
Dfd examples
Dfd examplesDfd examples
Dfd examples
Mohit
 
Ad

Similar to Uml in software engineering (20)

Simple uml
Simple umlSimple uml
Simple uml
nilameganathan
 
31 uml
31 uml31 uml
31 uml
sshashib
 
SDA ClassDiagram.ppt
SDA ClassDiagram.pptSDA ClassDiagram.ppt
SDA ClassDiagram.ppt
AteeqaKokab1
 
Week 10-classdiagrams.pptdddddddddddddddddddddddddddd
Week 10-classdiagrams.pptddddddddddddddddddddddddddddWeek 10-classdiagrams.pptdddddddddddddddddddddddddddd
Week 10-classdiagrams.pptdddddddddddddddddddddddddddd
v67904413
 
Introduction to UML, class diagrams, sequence diagrams
Introduction to UML, class diagrams, sequence diagramsIntroduction to UML, class diagrams, sequence diagrams
Introduction to UML, class diagrams, sequence diagrams
Dr. Jasmine Beulah Gnanadurai
 
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 (Hemant rajak)
UML (Hemant rajak)UML (Hemant rajak)
UML (Hemant rajak)
hrajak5
 
EXACT IMPLEMENTATION OF DESIGN PATTERNS IN C# LANGUAGE
EXACT IMPLEMENTATION OF DESIGN PATTERNS IN C# LANGUAGEEXACT IMPLEMENTATION OF DESIGN PATTERNS IN C# LANGUAGE
EXACT IMPLEMENTATION OF DESIGN PATTERNS IN C# LANGUAGE
ijait
 
Exact implementation of design patterns in
Exact implementation of design patterns inExact implementation of design patterns in
Exact implementation of design patterns in
ijait
 
l1_introuml.pdf
l1_introuml.pdfl1_introuml.pdf
l1_introuml.pdf
KalsoomTahir2
 
Fundamentals of Software Engineering
Fundamentals of Software Engineering Fundamentals of Software Engineering
Fundamentals of Software Engineering
Madhar Khan Pathan
 
IntroductionToUML.ppt
IntroductionToUML.pptIntroductionToUML.ppt
IntroductionToUML.ppt
ssuser1028f8
 
UML Overview and Introduction functions.pdf
UML Overview and Introduction functions.pdfUML Overview and Introduction functions.pdf
UML Overview and Introduction functions.pdf
prathipaceec
 
Uml lecture
Uml lectureUml lecture
Uml lecture
Inocentshuja Ahmad
 
UML Basics
UML BasicsUML Basics
UML Basics
Serdar Temiz
 
Uml introduciton
Uml introducitonUml introduciton
Uml introduciton
Dr. C.V. Suresh Babu
 
ooAD
ooADooAD
ooAD
manjulakithsiri
 
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejnejeUML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
ssusera6a60c1
 
Lecture 21 22
Lecture 21 22Lecture 21 22
Lecture 21 22
Najmul Hassan
 
Tutorial csharp
Tutorial csharpTutorial csharp
Tutorial csharp
Satish Verma
 
SDA ClassDiagram.ppt
SDA ClassDiagram.pptSDA ClassDiagram.ppt
SDA ClassDiagram.ppt
AteeqaKokab1
 
Week 10-classdiagrams.pptdddddddddddddddddddddddddddd
Week 10-classdiagrams.pptddddddddddddddddddddddddddddWeek 10-classdiagrams.pptdddddddddddddddddddddddddddd
Week 10-classdiagrams.pptdddddddddddddddddddddddddddd
v67904413
 
Introduction to UML, class diagrams, sequence diagrams
Introduction to UML, class diagrams, sequence diagramsIntroduction to UML, class diagrams, sequence diagrams
Introduction to UML, class diagrams, sequence diagrams
Dr. Jasmine Beulah Gnanadurai
 
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 (Hemant rajak)
UML (Hemant rajak)UML (Hemant rajak)
UML (Hemant rajak)
hrajak5
 
EXACT IMPLEMENTATION OF DESIGN PATTERNS IN C# LANGUAGE
EXACT IMPLEMENTATION OF DESIGN PATTERNS IN C# LANGUAGEEXACT IMPLEMENTATION OF DESIGN PATTERNS IN C# LANGUAGE
EXACT IMPLEMENTATION OF DESIGN PATTERNS IN C# LANGUAGE
ijait
 
Exact implementation of design patterns in
Exact implementation of design patterns inExact implementation of design patterns in
Exact implementation of design patterns in
ijait
 
Fundamentals of Software Engineering
Fundamentals of Software Engineering Fundamentals of Software Engineering
Fundamentals of Software Engineering
Madhar Khan Pathan
 
IntroductionToUML.ppt
IntroductionToUML.pptIntroductionToUML.ppt
IntroductionToUML.ppt
ssuser1028f8
 
UML Overview and Introduction functions.pdf
UML Overview and Introduction functions.pdfUML Overview and Introduction functions.pdf
UML Overview and Introduction functions.pdf
prathipaceec
 
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejnejeUML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
ssusera6a60c1
 
Ad

Recently uploaded (20)

Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDesigning AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Dinusha Kumarasiri
 
Sales Deck SentinelOne Singularity Platform.pptx
Sales Deck SentinelOne Singularity Platform.pptxSales Deck SentinelOne Singularity Platform.pptx
Sales Deck SentinelOne Singularity Platform.pptx
EliandoLawnote
 
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage DashboardsAdobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
BradBedford3
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
Adobe Illustrator Crack | Free Download & Install Illustrator
Adobe Illustrator Crack | Free Download & Install IllustratorAdobe Illustrator Crack | Free Download & Install Illustrator
Adobe Illustrator Crack | Free Download & Install Illustrator
usmanhidray
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
How to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud PerformanceHow to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud Performance
ThousandEyes
 
Minitab 22 Full Crack Plus Product Key Free Download [Latest] 2025
Minitab 22 Full Crack Plus Product Key Free Download [Latest] 2025Minitab 22 Full Crack Plus Product Key Free Download [Latest] 2025
Minitab 22 Full Crack Plus Product Key Free Download [Latest] 2025
wareshashahzadiii
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]
saniaaftab72555
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDesigning AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Dinusha Kumarasiri
 
Sales Deck SentinelOne Singularity Platform.pptx
Sales Deck SentinelOne Singularity Platform.pptxSales Deck SentinelOne Singularity Platform.pptx
Sales Deck SentinelOne Singularity Platform.pptx
EliandoLawnote
 
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage DashboardsAdobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
BradBedford3
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
Adobe Illustrator Crack | Free Download & Install Illustrator
Adobe Illustrator Crack | Free Download & Install IllustratorAdobe Illustrator Crack | Free Download & Install Illustrator
Adobe Illustrator Crack | Free Download & Install Illustrator
usmanhidray
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
How to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud PerformanceHow to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud Performance
ThousandEyes
 
Minitab 22 Full Crack Plus Product Key Free Download [Latest] 2025
Minitab 22 Full Crack Plus Product Key Free Download [Latest] 2025Minitab 22 Full Crack Plus Product Key Free Download [Latest] 2025
Minitab 22 Full Crack Plus Product Key Free Download [Latest] 2025
wareshashahzadiii
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]
saniaaftab72555
 

Uml in software engineering

  • 2. 2 What is UML?  UML stands for Unified Modeling Language  UML is a diagramming language designed for Object- Oriented programming  UML can be used to describe:  the organization of a program  how a program executes  how a program is used  how a program is deployed over a network  …and more
  • 3. 3 Design Patterns  Design Patterns describe the higher-level organization of solutions to common problems  Design Patterns are a current hot topic in O-O design  UML is always used for Design Patterns  Design Patterns are used to describe refactorings  We will discuss some Design Patterns later on in this course
  • 4. 4 UML is complex  UML is a big, complicated diagramming language  UML comprises at least seven or eight different kinds of diagrams  This talk will cover just a tiny bit of one kind of diagram, the class diagram  A class diagram is often all that is needed to describe a particular Design Pattern
  • 5. 5 Class diagrams  A class diagram shows classes, interfaces, and their relationships  We’ll cover most of classes and interfaces, and a few of the most important relationships
  • 6. 6 Classes  A class is drawn as a rectangle with two or three compartments: Name of the class Variables [optional] Methods
  • 7. 7 Variables I  A variable is written as: visibility name : type where:  + means public visibility  # means protected visibility  - means private visibility  <blank> means default (package) visibility  Example: +length:int
  • 8. 8 Variables II  Static variables are underlined  An initial value can be shown with =value  Example: -numberOfEmployees:int=10 means numberOfEmployees is:  private  static  integer  and has 10 as its initial value
  • 9. 9 Methods  Methods are written as: visibility name (parameters) : returnType where  visibility uses the same syntax variables (+, -, #, blank)  parameters are given as name:type  if the returnType is void, it is omitted  constructors are preceded by «constructor»  interfaces are preceded by «interface»  an ellipsis (…) indicates omitted methods
  • 10. 10 Example of a class Card cardId:int -copy:boolean=false «constructor» Card(int id) +isKind(desiredKind:int) +isSharable():boolean +toString():String
  • 11. 11 Types of relationships A B Class B extends class A C D 1..4 Class C contains 1 to 4 objects of class D Factory Product creates Other kinds of relations
  • 13. 13 UML tools  Rational Rose is the “real world” standard; full round- trip code generation  Recently acquired by IBM (right under Microsoft’s nose!)  Together (from Borland) is a lot like Rational Rose  I haven’t used it in about three years (since before Borland bought it from TogetherSoft)  ArgoUML looks interesting (and is open source)  BlueJ, of course, displays simple UML diagrams  Drawing programs with UML support  Visio is a Microsoft tool  Dia is a freeware clone of Visio
  • 14. 14 Tool links  Rational Rose  http://www-3.ibm.com/software/awdtools/developer/rosexde/  Together  http://www.borland.com/together/  ArgoUML  http://argouml.tigris.org  Visio  Hard to find info on Microsoft’s site!  http://msdn.microsoft.com/office/understanding/visio/  Dia  http://www.lysator.liu.se/~alla/dia