SlideShare ist ein Scribd-Unternehmen logo
1 von 58
Object Oriented Software Modeling and Design  CE 350 Abdel-Karim Al-Tamimi, Ph.D. [email_address] http://faculty.yu.edu.jo/altamimi Al-Tamimi 2011 ©
Overview ,[object Object],Al-Tamimi 2011 ©
UML Definition and Usage ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
UML Basics ,[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Using Models/Diagrams ,[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Types of Diagrams ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Types of Diagrams Al-Tamimi 2011 ©
UML: Fundamental Level ,[object Object],[object Object],Al-Tamimi 2011 ©
Use Case Diagram: Introduction ,[object Object],[object Object],Al-Tamimi 2011 © Borrow Book Student
Activity Diagram ,[object Object],[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Activity Diagram: Example Al-Tamimi 2011 © Leave House Take Class Wander Around Return to House Take another Class Done for today ? Arrive to university End of day
Class Diagram ,[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Class Diagrams: Example Al-Tamimi 2011 © Student Book Reference Magazine
Interaction Diagrams ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Interaction Diagrams – Sequence Diagram Al-Tamimi 2011 © Student Book Library Walk to school Access Library Browse Book Borrow book Read book
Interaction Diagrams – Collaboration Diagram Al-Tamimi 2011 © Book Student Library 1-Walk to school 5-Read book 3-Browse book 4-Borrow book 2-Access library
State Diagram ,[object Object],Al-Tamimi 2011 © Walking Leave  the  house Studying Arrive  to  School / take class Done Resting Have a break Yes
UML Notations Al-Tamimi 2011 ©
UML Notation of Objects and Classes Al-Tamimi 2011 © Class Object -   indicates  private  attributes/methods +  indicates  public   attributes/methods #   indicates  protected  attributes/methods ~  indicates  package  visible attributes/methods Notice the  naming convention BankAccount BankAccount - name - balance + debit (int amount): void + credit (int amount): void Object1 : BankAccount name = John Smith balance = 1,000 Object2 : BankAccount name = Robert Jones balance = -200
Visibility / Access Modifiers Review ,[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
UML Class Example Al-Tamimi 2011 © Student ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Relationships between Classes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Generalization / Specialization Relationship Al-Tamimi 2011 © BankAccount attributes and methods are not specified again New attribute “interest” is shown in the subclass Generalization Specialization
Generalization / Specialization Relationship ,[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Association Relationship ,[object Object],[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Association Relationship Al-Tamimi 2011 © Name of Link Multiplicity Role Name of Association
Multiplicity Al-Tamimi 2011 © UML Multiplicity Meaning 1 Exactly 1 (default) 2 Exactly 2 1..3 From 1 to 3 inclusive 3, 5 Either 3 or 5 1..* At least [1], and at most [unlimited] * Unlimited (including 0) 0..1 Either 0 or 1
Multiplicity: Example Al-Tamimi 2011 © Student Book borrows 0..1 0..5 Professor borrows * 0..1
Qualification Relationship ,[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Qualification Relationship Al-Tamimi 2011 © Account Number    a single person Account number acted as a filter
Qualification Relationship: Example Al-Tamimi 2011 © Driver vehicle drives But if he can only drive 4 wheels vehicles: Driver vehicle drives 4 wheels What if he can only drive his own car: Driver vehicle drives License plate
Reflexive Associations  ,[object Object],[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Reflexive Association: Example Al-Tamimi 2011 ©
Reflexive Association: Example Al-Tamimi 2011 © Directional  Bi-directional
Association Classes Al-Tamimi 2011 © Sometimes, it is necessary to describe an association by including some attributes which do not naturally belong to the objects involved in the association Enrollment is an  association class
Association Classes: Example Al-Tamimi 2011 © Can a person have multiple positions at the same company ?
N-ary Association  Al-Tamimi 2011 ©
N-ary Association  Al-Tamimi 2011 © 3 or a Ternary association
N-ary Association  Al-Tamimi 2011 © decomposed
Aggregation Relationship ,[object Object],[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Aggregation : Example Al-Tamimi 2011 ©
Aggregation: Example Al-Tamimi 2011 © Company warehouse Salesman Store 0..* 1..* 0..* 0..* 1..* 0..*
Composition Relationship ,[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Composition: Example Al-Tamimi 2011 ©
Composition: Example Al-Tamimi 2011 © Report Title Column Figure 1 1 1 1..* 1..* 0..*
General Notes ,[object Object],[object Object],[object Object],Al-Tamimi 2011 © Car Engine Person Address Book Reference
Difference Between Aggregation and Composition Relationships ,[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Dependency Relationship ,[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Dependency Relationship: Example Al-Tamimi 2011 © Server DatabaseConnectionManager <<use>>
Dependency Relationships in UML (1 of 2) Al-Tamimi 2011 © Type of Dependency  Keyword Description Abstraction «abstraction», «derive», «refine», or «trace» Relates two model elements, or sets of model elements, that represent the same concept at different levels of abstraction, or from different viewpoints Binding «bind» Connects template arguments to template parameters to create model elements from templates
Dependency Relationships in UML (2 of 2) Al-Tamimi 2011 © Type of Dependency  Keyword Description Realization «realize» Indicates that the client model element is an implementation of the supplier model element, and the supplier model element is the specification Substitution «bind» Indicates that the client model element takes the place of the supplier; the client model element must conform to the contract or interface that the supplier model element establishes Usage «use», «call», «create», «instantiate», or «send» Indicates that one model element requires another model element for its full implementation or operation
Realization Relationship ,[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Realization Relationship: Example Al-Tamimi 2011 © Payable << interface >> Employee Invoice SalaryEmployee
Constraints and Notes ,[object Object],[object Object],Al-Tamimi 2011 ©
Constraints and Notes: Example Al-Tamimi 2011 ©
Constraints and Notes: Example Al-Tamimi 2011 ©
Resources ,[object Object],[object Object],[object Object],[object Object],Al-Tamimi 2011 ©
Resources ,[object Object],[object Object],[object Object],Al-Tamimi 2011 ©

Weitere ähnliche Inhalte

Was ist angesagt?

Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML DiagramsManish Kumar
 
Software architecture design ppt
Software architecture design pptSoftware architecture design ppt
Software architecture design pptfarazimlak
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case DiagramKumar
 
Object-Oriented Analysis & Design (OOAD) Domain Modeling Introduction
  Object-Oriented Analysis & Design (OOAD)  Domain Modeling Introduction  Object-Oriented Analysis & Design (OOAD)  Domain Modeling Introduction
Object-Oriented Analysis & Design (OOAD) Domain Modeling IntroductionDang Tuan
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLAjit Nayak
 
Structural modeling and analysis
Structural modeling and analysisStructural modeling and analysis
Structural modeling and analysisJIGAR MAKHIJA
 
Sequence diagram- UML diagram
Sequence diagram- UML diagramSequence diagram- UML diagram
Sequence diagram- UML diagramRamakant Soni
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling Benazir Fathima
 
object oriented Programming ppt
object oriented Programming pptobject oriented Programming ppt
object oriented Programming pptNitesh Dubey
 
Unit 4 designing classes
Unit 4  designing classesUnit 4  designing classes
Unit 4 designing classesgopal10scs185
 
Data and functional modeling
Data and functional modelingData and functional modeling
Data and functional modelingSlideshare
 
2.software requirement specification
2.software requirement specification2.software requirement specification
2.software requirement specificationDeepak Sharma
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specificationAman Adhikari
 

Was ist angesagt? (20)

Uml class Diagram
Uml class DiagramUml class Diagram
Uml class Diagram
 
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
 
Software architecture design ppt
Software architecture design pptSoftware architecture design ppt
Software architecture design ppt
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
 
Object-Oriented Analysis & Design (OOAD) Domain Modeling Introduction
  Object-Oriented Analysis & Design (OOAD)  Domain Modeling Introduction  Object-Oriented Analysis & Design (OOAD)  Domain Modeling Introduction
Object-Oriented Analysis & Design (OOAD) Domain Modeling Introduction
 
UML
UMLUML
UML
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UML
 
Structural modeling and analysis
Structural modeling and analysisStructural modeling and analysis
Structural modeling and analysis
 
Sequence diagram- UML diagram
Sequence diagram- UML diagramSequence diagram- UML diagram
Sequence diagram- UML diagram
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
 
Use case Diagram
Use case DiagramUse case Diagram
Use case Diagram
 
object oriented Programming ppt
object oriented Programming pptobject oriented Programming ppt
object oriented Programming ppt
 
Functional modeling
Functional modelingFunctional modeling
Functional modeling
 
Unit 4 designing classes
Unit 4  designing classesUnit 4  designing classes
Unit 4 designing classes
 
Data and functional modeling
Data and functional modelingData and functional modeling
Data and functional modeling
 
CS8592-OOAD Lecture Notes Unit-3
CS8592-OOAD Lecture Notes Unit-3CS8592-OOAD Lecture Notes Unit-3
CS8592-OOAD Lecture Notes Unit-3
 
2.software requirement specification
2.software requirement specification2.software requirement specification
2.software requirement specification
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 

Andere mochten auch

Software engineering Questions and Answers
Software engineering Questions and AnswersSoftware engineering Questions and Answers
Software engineering Questions and AnswersBala Ganesh
 
software engineering notes for cse/it fifth semester
software engineering notes for cse/it fifth semestersoftware engineering notes for cse/it fifth semester
software engineering notes for cse/it fifth semesterrajesh199155
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notesSiva Ayyakutti
 

Andere mochten auch (8)

Lecture07
Lecture07Lecture07
Lecture07
 
Lecture08
Lecture08Lecture08
Lecture08
 
Software engineering Questions and Answers
Software engineering Questions and AnswersSoftware engineering Questions and Answers
Software engineering Questions and Answers
 
Lecture05
Lecture05Lecture05
Lecture05
 
Lecture11
Lecture11Lecture11
Lecture11
 
Lecture09
Lecture09Lecture09
Lecture09
 
software engineering notes for cse/it fifth semester
software engineering notes for cse/it fifth semestersoftware engineering notes for cse/it fifth semester
software engineering notes for cse/it fifth semester
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
 

Ähnlich wie Lecture-03 Introduction to UML

Fundamentals of Software Engineering
Fundamentals of Software Engineering Fundamentals of Software Engineering
Fundamentals of Software Engineering Madhar Khan Pathan
 
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 HelpJacob William
 
lecture8UML Diagrams.pptx
lecture8UML Diagrams.pptxlecture8UML Diagrams.pptx
lecture8UML Diagrams.pptxGracePeter10
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Languagesurana college
 
Lecture04- Use Case Diagrams
Lecture04- Use Case DiagramsLecture04- Use Case Diagrams
Lecture04- Use Case Diagramsartgreen
 
Lecture04- Use Case Diagrams
Lecture04- Use Case DiagramsLecture04- Use Case Diagrams
Lecture04- Use Case Diagramsartgreen
 
Fundamentals of Software Engineering
Fundamentals of Software Engineering Fundamentals of Software Engineering
Fundamentals of Software Engineering Madhar Khan Pathan
 
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejnejeUML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejnejessusera6a60c1
 

Ähnlich wie Lecture-03 Introduction to UML (20)

Intro Uml
Intro UmlIntro Uml
Intro Uml
 
Fundamentals of Software Engineering
Fundamentals of Software Engineering Fundamentals of Software Engineering
Fundamentals of Software Engineering
 
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
 
lecture8UML Diagrams.pptx
lecture8UML Diagrams.pptxlecture8UML Diagrams.pptx
lecture8UML Diagrams.pptx
 
Ooad static diagram
Ooad static diagramOoad static diagram
Ooad static diagram
 
2 class use case
2 class use case2 class use case
2 class use case
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
Chapter 2.pptx
Chapter 2.pptxChapter 2.pptx
Chapter 2.pptx
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Ooad ch 4
Ooad ch 4Ooad ch 4
Ooad ch 4
 
Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
 
Lecture04- Use Case Diagrams
Lecture04- Use Case DiagramsLecture04- Use Case Diagrams
Lecture04- Use Case Diagrams
 
Lecture04- Use Case Diagrams
Lecture04- Use Case DiagramsLecture04- Use Case Diagrams
Lecture04- Use Case Diagrams
 
Css uml
Css umlCss uml
Css uml
 
Fundamentals of Software Engineering
Fundamentals of Software Engineering Fundamentals of Software Engineering
Fundamentals of Software Engineering
 
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejnejeUML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
 
uml2-1214558329929112-8.ppt
uml2-1214558329929112-8.pptuml2-1214558329929112-8.ppt
uml2-1214558329929112-8.ppt
 
Uml
UmlUml
Uml
 
Uml
UmlUml
Uml
 

Mehr von artgreen

Ce350 class project_spring2011_v1.5
Ce350 class project_spring2011_v1.5Ce350 class project_spring2011_v1.5
Ce350 class project_spring2011_v1.5artgreen
 
Lecture10.5
Lecture10.5Lecture10.5
Lecture10.5artgreen
 
Lecture08 examples
Lecture08 examplesLecture08 examples
Lecture08 examplesartgreen
 
Lecture07 examples
Lecture07 examplesLecture07 examples
Lecture07 examplesartgreen
 
Lecture04- Use Case Diagrams
Lecture04- Use Case DiagramsLecture04- Use Case Diagrams
Lecture04- Use Case Diagramsartgreen
 

Mehr von artgreen (14)

Lecture12
Lecture12Lecture12
Lecture12
 
Ce350 class project_spring2011_v1.5
Ce350 class project_spring2011_v1.5Ce350 class project_spring2011_v1.5
Ce350 class project_spring2011_v1.5
 
Lecture10.5
Lecture10.5Lecture10.5
Lecture10.5
 
Lecture10
Lecture10Lecture10
Lecture10
 
Lecture09
Lecture09Lecture09
Lecture09
 
Lecture08 examples
Lecture08 examplesLecture08 examples
Lecture08 examples
 
Lecture07 examples
Lecture07 examplesLecture07 examples
Lecture07 examples
 
Lecture06
Lecture06Lecture06
Lecture06
 
Lecture05
Lecture05Lecture05
Lecture05
 
Lecture05
Lecture05Lecture05
Lecture05
 
Lecture05
Lecture05Lecture05
Lecture05
 
Lecture04- Use Case Diagrams
Lecture04- Use Case DiagramsLecture04- Use Case Diagrams
Lecture04- Use Case Diagrams
 
Lecture02
Lecture02Lecture02
Lecture02
 
Lecture01
Lecture01Lecture01
Lecture01
 

Kürzlich hochgeladen

Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structuredhanjurrannsibayan2
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024Elizabeth Walsh
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxcallscotland1987
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxJisc
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 

Kürzlich hochgeladen (20)

Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 

Lecture-03 Introduction to UML

  • 1. Object Oriented Software Modeling and Design CE 350 Abdel-Karim Al-Tamimi, Ph.D. [email_address] http://faculty.yu.edu.jo/altamimi Al-Tamimi 2011 ©
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7. Types of Diagrams Al-Tamimi 2011 ©
  • 8.
  • 9.
  • 10.
  • 11. Activity Diagram: Example Al-Tamimi 2011 © Leave House Take Class Wander Around Return to House Take another Class Done for today ? Arrive to university End of day
  • 12.
  • 13. Class Diagrams: Example Al-Tamimi 2011 © Student Book Reference Magazine
  • 14.
  • 15. Interaction Diagrams – Sequence Diagram Al-Tamimi 2011 © Student Book Library Walk to school Access Library Browse Book Borrow book Read book
  • 16. Interaction Diagrams – Collaboration Diagram Al-Tamimi 2011 © Book Student Library 1-Walk to school 5-Read book 3-Browse book 4-Borrow book 2-Access library
  • 17.
  • 19. UML Notation of Objects and Classes Al-Tamimi 2011 © Class Object - indicates private attributes/methods + indicates public attributes/methods # indicates protected attributes/methods ~ indicates package visible attributes/methods Notice the naming convention BankAccount BankAccount - name - balance + debit (int amount): void + credit (int amount): void Object1 : BankAccount name = John Smith balance = 1,000 Object2 : BankAccount name = Robert Jones balance = -200
  • 20.
  • 21.
  • 22.
  • 23. Generalization / Specialization Relationship Al-Tamimi 2011 © BankAccount attributes and methods are not specified again New attribute “interest” is shown in the subclass Generalization Specialization
  • 24.
  • 25.
  • 26. Association Relationship Al-Tamimi 2011 © Name of Link Multiplicity Role Name of Association
  • 27. Multiplicity Al-Tamimi 2011 © UML Multiplicity Meaning 1 Exactly 1 (default) 2 Exactly 2 1..3 From 1 to 3 inclusive 3, 5 Either 3 or 5 1..* At least [1], and at most [unlimited] * Unlimited (including 0) 0..1 Either 0 or 1
  • 28. Multiplicity: Example Al-Tamimi 2011 © Student Book borrows 0..1 0..5 Professor borrows * 0..1
  • 29.
  • 30. Qualification Relationship Al-Tamimi 2011 © Account Number  a single person Account number acted as a filter
  • 31. Qualification Relationship: Example Al-Tamimi 2011 © Driver vehicle drives But if he can only drive 4 wheels vehicles: Driver vehicle drives 4 wheels What if he can only drive his own car: Driver vehicle drives License plate
  • 32.
  • 33. Reflexive Association: Example Al-Tamimi 2011 ©
  • 34. Reflexive Association: Example Al-Tamimi 2011 © Directional Bi-directional
  • 35. Association Classes Al-Tamimi 2011 © Sometimes, it is necessary to describe an association by including some attributes which do not naturally belong to the objects involved in the association Enrollment is an association class
  • 36. Association Classes: Example Al-Tamimi 2011 © Can a person have multiple positions at the same company ?
  • 37. N-ary Association Al-Tamimi 2011 ©
  • 38. N-ary Association Al-Tamimi 2011 © 3 or a Ternary association
  • 39. N-ary Association Al-Tamimi 2011 © decomposed
  • 40.
  • 41. Aggregation : Example Al-Tamimi 2011 ©
  • 42. Aggregation: Example Al-Tamimi 2011 © Company warehouse Salesman Store 0..* 1..* 0..* 0..* 1..* 0..*
  • 43.
  • 45. Composition: Example Al-Tamimi 2011 © Report Title Column Figure 1 1 1 1..* 1..* 0..*
  • 46.
  • 47.
  • 48.
  • 49. Dependency Relationship: Example Al-Tamimi 2011 © Server DatabaseConnectionManager <<use>>
  • 50. Dependency Relationships in UML (1 of 2) Al-Tamimi 2011 © Type of Dependency Keyword Description Abstraction «abstraction», «derive», «refine», or «trace» Relates two model elements, or sets of model elements, that represent the same concept at different levels of abstraction, or from different viewpoints Binding «bind» Connects template arguments to template parameters to create model elements from templates
  • 51. Dependency Relationships in UML (2 of 2) Al-Tamimi 2011 © Type of Dependency Keyword Description Realization «realize» Indicates that the client model element is an implementation of the supplier model element, and the supplier model element is the specification Substitution «bind» Indicates that the client model element takes the place of the supplier; the client model element must conform to the contract or interface that the supplier model element establishes Usage «use», «call», «create», «instantiate», or «send» Indicates that one model element requires another model element for its full implementation or operation
  • 52.
  • 53. Realization Relationship: Example Al-Tamimi 2011 © Payable << interface >> Employee Invoice SalaryEmployee
  • 54.
  • 55. Constraints and Notes: Example Al-Tamimi 2011 ©
  • 56. Constraints and Notes: Example Al-Tamimi 2011 ©
  • 57.
  • 58.