SlideShare a Scribd company logo
1 of 12
UML and OO


         System design
             2010 Autumn

             Morten Bo Nielsen
             Mon@eal.dk
UML and OO
          ●   What is UML?
              ●   Who defines it?
          ●   What does “object oriented” mean?
              ●   What is an object?
              ●   What is a class?
              ●   Why use objects?




System design - Mon@eal.dk                        2
UML
 ●   UML is all about modelling
     ●   And communicating ideas
 ●   Collection of diagrams
     ●   Functional modelling: Use case diagrams
     ●   Structural modelling: Class diagrams
     ●   Behavioural modelling: State machine, sequence
         diagrams, communication diagrams.
     ●   A lot more exists
                                          example project
System design - Mon@eal.dk                                3
Objects and clases
 ●   start here




System design - Mon@eal.dk              4
OOP words
 ●   Class, Object, Instance, Method/Properties,
     (Message passing), Inheritance, Abstraction,
     Encapsulation, Decoupling, Polymorphism




System design - Mon@eal.dk                          5
Why classes?
 ●   Encapsulation
 ●   Code reuse
 ●   Use standardized patterns
 ●   Abstraction
 ●   Modularisation of the code

                                  Note that much of this is
                                  possible without OOP



System design - Mon@eal.dk                                    6
Software example
                     - IP addresses
    Class




    Objects
      IpAddress* IpAddressOfPc1

          = new IpAddress( 192.168.1.100, 255.255.255.0 );

      IpAddress* IpAddressOfPc2

          = new IpAddress( 192.168.1.101, 255.255.255.0 );




System design - Mon@eal.dk                                   7
Physical world - Books
        Class
        “Book” covers everything we would call a “book”

                                                                  Which to use
                                                                  depends on context
        Objects

          1.    Books as defined by ISBN
          2.    Books as in “every book is unique”
               My copy is different from yours


8       SD3 - mon@sde.dk                             25-10-2009


    System design - Mon@eal.dk                                                         8
Inheritance design problem
        Book type is most            Book content is most
           impor tant                     impor tant
               Book                              Book


                                       System Analysis and Design
      Paperback        Hardcover
                                          with UML version 2.0
        book             book
                                            by A. Dennis et al.


                  ISBN: 978-0-471-   Paperback          Hardcover
                      65920-4          book               book




System design - Mon@eal.dk                                          9
UML use case diagrams
 ●   User ← admin actors example.




System design - Mon@eal.dk           10
Factory design pattern




System design - Mon@eal.dk                  11
Example project
 ●   Mashing temperature control.pdf
 ●   Mashing+temperature+control_prcent_2C+part+2.p




System design - Mon@eal.dk                    12

More Related Content

Viewers also liked

Dependencies, dependencies, dependencies
Dependencies, dependencies, dependenciesDependencies, dependencies, dependencies
Dependencies, dependencies, dependenciesMarcel Offermans
 
Unified modelling language (UML)
Unified modelling language (UML)Unified modelling language (UML)
Unified modelling language (UML)Hirra Sultan
 
OOP programming
OOP programmingOOP programming
OOP programminganhdbh
 
Module 3 Object Oriented Data Models Object Oriented notations
Module 3  Object Oriented Data Models Object Oriented notationsModule 3  Object Oriented Data Models Object Oriented notations
Module 3 Object Oriented Data Models Object Oriented notationsTaher Barodawala
 
What does OOP stand for?
What does OOP stand for?What does OOP stand for?
What does OOP stand for?Colin Riley
 
Java 103 intro to java data structures
Java 103   intro to java data structuresJava 103   intro to java data structures
Java 103 intro to java data structuresagorolabs
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12koolkampus
 
Objects & OO Thinking for Java
Objects & OO Thinking for JavaObjects & OO Thinking for Java
Objects & OO Thinking for JavaJeff Sonstein
 
M02 Uml Overview
M02 Uml OverviewM02 Uml Overview
M02 Uml OverviewDang Tuan
 
8 abstract classes and interfaces
8   abstract classes and interfaces 8   abstract classes and interfaces
8 abstract classes and interfaces Tuan Ngo
 

Viewers also liked (13)

Dependencies, dependencies, dependencies
Dependencies, dependencies, dependenciesDependencies, dependencies, dependencies
Dependencies, dependencies, dependencies
 
Unified modelling language (UML)
Unified modelling language (UML)Unified modelling language (UML)
Unified modelling language (UML)
 
OOP programming
OOP programmingOOP programming
OOP programming
 
Module 3 Object Oriented Data Models Object Oriented notations
Module 3  Object Oriented Data Models Object Oriented notationsModule 3  Object Oriented Data Models Object Oriented notations
Module 3 Object Oriented Data Models Object Oriented notations
 
Packaes & interfaces
Packaes & interfacesPackaes & interfaces
Packaes & interfaces
 
Wrapper classes
Wrapper classesWrapper classes
Wrapper classes
 
What does OOP stand for?
What does OOP stand for?What does OOP stand for?
What does OOP stand for?
 
Uml
UmlUml
Uml
 
Java 103 intro to java data structures
Java 103   intro to java data structuresJava 103   intro to java data structures
Java 103 intro to java data structures
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12
 
Objects & OO Thinking for Java
Objects & OO Thinking for JavaObjects & OO Thinking for Java
Objects & OO Thinking for Java
 
M02 Uml Overview
M02 Uml OverviewM02 Uml Overview
M02 Uml Overview
 
8 abstract classes and interfaces
8   abstract classes and interfaces 8   abstract classes and interfaces
8 abstract classes and interfaces
 

Similar to Itt1 sd uml and oo

Stevecook uml mdday2010
Stevecook uml mdday2010Stevecook uml mdday2010
Stevecook uml mdday2010MD DAY
 
Domain Driven Design Mat Holroyd
Domain Driven Design   Mat HolroydDomain Driven Design   Mat Holroyd
Domain Driven Design Mat Holroydmelbournepatterns
 
CEN6016-Chapter1.ppt
CEN6016-Chapter1.pptCEN6016-Chapter1.ppt
CEN6016-Chapter1.pptNelsonYanes6
 
Unit-1 OOAD Introduction.pptx
Unit-1 OOAD Introduction.pptxUnit-1 OOAD Introduction.pptx
Unit-1 OOAD Introduction.pptxRavindranath67
 
The View object orientated programming in Lotuscript
The View object orientated programming in LotuscriptThe View object orientated programming in Lotuscript
The View object orientated programming in LotuscriptBill Buchan
 
Plone-driven Plone development (PD2)
Plone-driven Plone development (PD2)Plone-driven Plone development (PD2)
Plone-driven Plone development (PD2)Henning Rietz
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and DesignDr. C.V. Suresh Babu
 
Solid Principles Of Design (Design Series 01)
Solid Principles Of Design (Design Series 01)Solid Principles Of Design (Design Series 01)
Solid Principles Of Design (Design Series 01)Heartin Jacob
 
Tommy_presentation_v0.1.pptx
Tommy_presentation_v0.1.pptxTommy_presentation_v0.1.pptx
Tommy_presentation_v0.1.pptxTommyTomislavov
 
Object-Oriented Analysis and Design
Object-Oriented Analysis and DesignObject-Oriented Analysis and Design
Object-Oriented Analysis and DesignRiazAhmad786
 
Object Oriented Analysis and Design - Overview
Object Oriented Analysis and Design - OverviewObject Oriented Analysis and Design - Overview
Object Oriented Analysis and Design - Overviewrmk_rrj
 
Single Responsibility Principle
Single Responsibility PrincipleSingle Responsibility Principle
Single Responsibility PrincipleBADR
 
Object oriented analysis & Design- Overview
Object oriented analysis & Design- OverviewObject oriented analysis & Design- Overview
Object oriented analysis & Design- Overviewrmk_rrj
 

Similar to Itt1 sd uml and oo (20)

5-CEN6016-Chapter1.ppt
5-CEN6016-Chapter1.ppt5-CEN6016-Chapter1.ppt
5-CEN6016-Chapter1.ppt
 
Stevecook uml mdday2010
Stevecook uml mdday2010Stevecook uml mdday2010
Stevecook uml mdday2010
 
Domain Driven Design Mat Holroyd
Domain Driven Design   Mat HolroydDomain Driven Design   Mat Holroyd
Domain Driven Design Mat Holroyd
 
CEN6016-Chapter1.ppt
CEN6016-Chapter1.pptCEN6016-Chapter1.ppt
CEN6016-Chapter1.ppt
 
CEN6016-Chapter1.ppt
CEN6016-Chapter1.pptCEN6016-Chapter1.ppt
CEN6016-Chapter1.ppt
 
Unit-1 OOAD Introduction.pptx
Unit-1 OOAD Introduction.pptxUnit-1 OOAD Introduction.pptx
Unit-1 OOAD Introduction.pptx
 
The View object orientated programming in Lotuscript
The View object orientated programming in LotuscriptThe View object orientated programming in Lotuscript
The View object orientated programming in Lotuscript
 
Plone-driven Plone development (PD2)
Plone-driven Plone development (PD2)Plone-driven Plone development (PD2)
Plone-driven Plone development (PD2)
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
 
Solid Principles Of Design (Design Series 01)
Solid Principles Of Design (Design Series 01)Solid Principles Of Design (Design Series 01)
Solid Principles Of Design (Design Series 01)
 
Itt1 sd requirements
Itt1 sd requirementsItt1 sd requirements
Itt1 sd requirements
 
ITSE_10(UML,OO).pptx
ITSE_10(UML,OO).pptxITSE_10(UML,OO).pptx
ITSE_10(UML,OO).pptx
 
Tommy_presentation_v0.1.pptx
Tommy_presentation_v0.1.pptxTommy_presentation_v0.1.pptx
Tommy_presentation_v0.1.pptx
 
Object-Oriented Analysis and Design
Object-Oriented Analysis and DesignObject-Oriented Analysis and Design
Object-Oriented Analysis and Design
 
SE UML.ppt
SE UML.pptSE UML.ppt
SE UML.ppt
 
Object Oriented Analysis and Design - Overview
Object Oriented Analysis and Design - OverviewObject Oriented Analysis and Design - Overview
Object Oriented Analysis and Design - Overview
 
4 (uml basic)
4 (uml basic)4 (uml basic)
4 (uml basic)
 
Ooad
OoadOoad
Ooad
 
Single Responsibility Principle
Single Responsibility PrincipleSingle Responsibility Principle
Single Responsibility Principle
 
Object oriented analysis & Design- Overview
Object oriented analysis & Design- OverviewObject oriented analysis & Design- Overview
Object oriented analysis & Design- Overview
 

More from Morten Nielsen

Itt1 intro project management
Itt1 intro project managementItt1 intro project management
Itt1 intro project managementMorten Nielsen
 
Itt1 intro knowing and doing
Itt1 intro knowing and doingItt1 intro knowing and doing
Itt1 intro knowing and doingMorten Nielsen
 
Itt2 its pki and certificates
Itt2 its pki and certificatesItt2 its pki and certificates
Itt2 its pki and certificatesMorten Nielsen
 
Itt2 its ssl and services
Itt2 its ssl and servicesItt2 its ssl and services
Itt2 its ssl and servicesMorten Nielsen
 
Itt2 its encrypted storage
Itt2 its encrypted storageItt2 its encrypted storage
Itt2 its encrypted storageMorten Nielsen
 
Itt3 its social engineering
Itt3 its social engineeringItt3 its social engineering
Itt3 its social engineeringMorten Nielsen
 
ITET1 Routing Transport layer.odp
ITET1 Routing Transport layer.odpITET1 Routing Transport layer.odp
ITET1 Routing Transport layer.odpMorten Nielsen
 
ITET1 Routing Application layer.odp
ITET1 Routing Application layer.odpITET1 Routing Application layer.odp
ITET1 Routing Application layer.odpMorten Nielsen
 
Itet2 its social engineering
Itet2 its social engineeringItet2 its social engineering
Itet2 its social engineeringMorten Nielsen
 
Itet2 its counter recon
Itet2 its counter reconItet2 its counter recon
Itet2 its counter reconMorten Nielsen
 

More from Morten Nielsen (20)

Itt1 intro project management
Itt1 intro project managementItt1 intro project management
Itt1 intro project management
 
Itt1 intro knowing and doing
Itt1 intro knowing and doingItt1 intro knowing and doing
Itt1 intro knowing and doing
 
Itt2 its pki and certificates
Itt2 its pki and certificatesItt2 its pki and certificates
Itt2 its pki and certificates
 
Itt2 its ssl and services
Itt2 its ssl and servicesItt2 its ssl and services
Itt2 its ssl and services
 
Itt2 its ids
Itt2 its idsItt2 its ids
Itt2 its ids
 
Itt2 its encrypted storage
Itt2 its encrypted storageItt2 its encrypted storage
Itt2 its encrypted storage
 
Itt2 its introduction
Itt2 its introductionItt2 its introduction
Itt2 its introduction
 
Itt2 its introduction
Itt2 its introductionItt2 its introduction
Itt2 its introduction
 
Itt3 virtual machines
Itt3 virtual machinesItt3 virtual machines
Itt3 virtual machines
 
Itt3 its acl
Itt3 its aclItt3 its acl
Itt3 its acl
 
Itt3 its social engineering
Itt3 its social engineeringItt3 its social engineering
Itt3 its social engineering
 
Itet3 its forensics
Itet3 its forensicsItet3 its forensics
Itet3 its forensics
 
Diagram cookbook
Diagram cookbookDiagram cookbook
Diagram cookbook
 
ITET3 Networking P2P
ITET3 Networking P2PITET3 Networking P2P
ITET3 Networking P2P
 
ITET1 Routing Transport layer.odp
ITET1 Routing Transport layer.odpITET1 Routing Transport layer.odp
ITET1 Routing Transport layer.odp
 
ITET1 Routing Application layer.odp
ITET1 Routing Application layer.odpITET1 Routing Application layer.odp
ITET1 Routing Application layer.odp
 
ITET3 ITS governance
ITET3 ITS governanceITET3 ITS governance
ITET3 ITS governance
 
Routing vlans
Routing vlansRouting vlans
Routing vlans
 
Itet2 its social engineering
Itet2 its social engineeringItet2 its social engineering
Itet2 its social engineering
 
Itet2 its counter recon
Itet2 its counter reconItet2 its counter recon
Itet2 its counter recon
 

Itt1 sd uml and oo

  • 1. UML and OO System design 2010 Autumn Morten Bo Nielsen Mon@eal.dk
  • 2. UML and OO ● What is UML? ● Who defines it? ● What does “object oriented” mean? ● What is an object? ● What is a class? ● Why use objects? System design - Mon@eal.dk 2
  • 3. UML ● UML is all about modelling ● And communicating ideas ● Collection of diagrams ● Functional modelling: Use case diagrams ● Structural modelling: Class diagrams ● Behavioural modelling: State machine, sequence diagrams, communication diagrams. ● A lot more exists example project System design - Mon@eal.dk 3
  • 4. Objects and clases ● start here System design - Mon@eal.dk 4
  • 5. OOP words ● Class, Object, Instance, Method/Properties, (Message passing), Inheritance, Abstraction, Encapsulation, Decoupling, Polymorphism System design - Mon@eal.dk 5
  • 6. Why classes? ● Encapsulation ● Code reuse ● Use standardized patterns ● Abstraction ● Modularisation of the code Note that much of this is possible without OOP System design - Mon@eal.dk 6
  • 7. Software example - IP addresses Class Objects IpAddress* IpAddressOfPc1 = new IpAddress( 192.168.1.100, 255.255.255.0 ); IpAddress* IpAddressOfPc2 = new IpAddress( 192.168.1.101, 255.255.255.0 ); System design - Mon@eal.dk 7
  • 8. Physical world - Books Class “Book” covers everything we would call a “book” Which to use depends on context Objects 1. Books as defined by ISBN 2. Books as in “every book is unique” My copy is different from yours 8 SD3 - mon@sde.dk 25-10-2009 System design - Mon@eal.dk 8
  • 9. Inheritance design problem Book type is most Book content is most impor tant impor tant Book Book System Analysis and Design Paperback Hardcover with UML version 2.0 book book by A. Dennis et al. ISBN: 978-0-471- Paperback Hardcover 65920-4 book book System design - Mon@eal.dk 9
  • 10. UML use case diagrams ● User ← admin actors example. System design - Mon@eal.dk 10
  • 11. Factory design pattern System design - Mon@eal.dk 11
  • 12. Example project ● Mashing temperature control.pdf ● Mashing+temperature+control_prcent_2C+part+2.p System design - Mon@eal.dk 12