Simple UML Jan 14 2019 What is UML UML stands for Unified Modeling Language UML is a diagramming language designed for ObjectOriented 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 may 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 1 4 B D Class B Class C extends contains class A 1 to 4 objects of class D creates Product Other kinds of relation s 11 Example Secret Code program 12 UML tools Rational Rose is the real world standard full roundtrip code generation Together from Borland is a lot like Rational Rose Recently acquired by IBM right under Microsoft s nose I haven t used it in about five 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 Together http argouml tigris org Visio Hard to find info on Microsoft s site http msdn microsoft com office understanding visio Dia http www borland com together ArgoUML http www 3 ibm com software awdtools developer rosexde hhttp www gnome org projects dia OmniGraffle 3 Mac OS X http www omnigroup com applications omnigraffle 14 The End 15
View Full Document