; uml
Documents
Resources
Learning Center
Upload
Plans & pricing Sign in
Sign Out
Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>

uml

VIEWS: 71 PAGES: 15

html and its various components

More Info
  • pg 1
									Simple UML




             26-Jan-11
        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


                                                         2
      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




                                                             3
       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




                                                              4
      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




                                                            5
      Classes
   A class is drawn as a rectangle with two or three
    compartments:


                     Name of the class

                     Variables [optional]


                          Methods



                                                        6
        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



                                                     7
        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

                                                8
        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

                                                                     9
Example of a class


  Card

  cardId:int
  -copy:boolean=false

  «constructor» Card(int id)
  +isKind(desiredKind:int)
  +isSharable():boolean
  +toString():String

                               10
  Types of relationships

 A            C             Factory

                                 creates
                  1..4
 B            D             Product


Class B       Class C        Other
extends      contains      kinds of
class A   1 to 4 objects   relations
            of class D
                                           11
Example: Secret Code program




                               12
        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
                                                                       13
        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

                                                                    14
The End




          15

								
To top