Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to UML David Davenport Computer Eng. Dept., Bilkent University Ankara - Turkey. …Unified Modeling Language.

Similar presentations


Presentation on theme: "Introduction to UML David Davenport Computer Eng. Dept., Bilkent University Ankara - Turkey. …Unified Modeling Language."— Presentation transcript:

1 Introduction to UML David Davenport Computer Eng. Dept., Bilkent University Ankara - Turkey. email: david@bilkent.edu.tr …Unified Modeling Language

2 IMPORTANT… Students… This presentation is designed to be used in class as part of a guided discovery sequence. It is not self- explanatory! Please use it only for revision purposes after having taken the class. Simply flicking through the slides will teach you nothing. You must be actively thinking, doing and questioning to learn! Instructors… You are free to use this presentation in your classes and to make any modifications to it that you wish. All I ask is an email saying where and when it is/was used. I would also appreciate any suggestions you may have for improving it. thank you, David. David

3 What & Why UML? UML - Unified Modeling Language Standard notation to help designers Visualize, Specify, Guide and Document complex software projects UML is programming language independent is a combination of several diagramming methods was designed by The Three Amigos: James Rumbaugh, Ivar Jacobson, Grady Booch. version 1.0 completed late nineties, now v1.5/2.0

4 Simple Class Diagram Classname Properties access name : type Methods, inc. constructors access name( params) : type Person # name : String # age : int # salary : double # comments : String + Person( name:String, age:int) + getName() : String + getAge() : int + getNetSalary() : double + getComments() : String + setComments( String) Access + public # protected - private List constructors first Static items are underlined

5 Relations btw Classes StudentPerson CompanyPerson Multiplicities: 0..n, 1, * Rolename: company employs person student takes course Navigatability: arrow on line PersonPersonTest aggregation generalisation association 121..*

6 Object Diagram cs101_instructor : Person name = “David” age = 22 salary = 1000 comments = “Nice” derya : Person name = “Derya” age 18 salary = 500 comments = “Sweet” Object Diagrams Depict object’s run-time state Object name & class Methods: common, so not shown

7 More advanced UML …for CS102, including Abstract classes Abstract methods Interfaces State Diagrams

8 Abstract Classes & Interfaces ICatMedia Use italics to indicate: Class names Interface names Abstract methods ICategoryIMediaMedia MusicCDVideo « abstract » classname + method1 + method2 # method3 Dotted line indicates “implementation” «Stereotype» often written above class name to indicate interfaces (& abstract classes)

9 State Diagrams depict object states, transitions btw those states & conditions for transitions to occur

10 Further reading… UML has many other diagrams Use cases, Sequence diagrams, Packaging diagrams, etc. Practical UML: A Hands-On Introduction for Developers http://dn.codegear.com/article/31863 http://dn.codegear.com/article/31863 A Quick Guide to The Unified Modeling Language http://www.csci.csusb.edu/dick/samples/uml0.html http://www.csci.csusb.edu/dick/samples/uml0.html


Download ppt "Introduction to UML David Davenport Computer Eng. Dept., Bilkent University Ankara - Turkey. …Unified Modeling Language."

Similar presentations


Ads by Google