Presentation is loading. Please wait.

Presentation is loading. Please wait.

Copyright (C), No Magic, Inc. 2002 - 20031 Welcome to No Magic! www.nomagic.com.

Similar presentations


Presentation on theme: "Copyright (C), No Magic, Inc. 2002 - 20031 Welcome to No Magic! www.nomagic.com."— Presentation transcript:

1 Copyright (C), No Magic, Inc. 2002 - 20031 Welcome to No Magic! www.nomagic.com

2 Copyright (C), No Magic, Inc. 2002 - 20032 Introduction to the OMG UML ™ Language

3 Copyright (C), No Magic, Inc. 2002 - 20033 Objectives  After completion of this module you will:  Learn:  The purpose and historical development of UML  The Concept of Model Driven Architecture (MDA)  Know how to:  Summarize five views and nine diagrams of UML  Explain how UML can represent the structures of OO programming languages such as Java

4 Copyright (C), No Magic, Inc. 2002 - 20034 Why Do We Need UML?  Couldn’t a system project be described in simple words?  We have the following classes: class Component implements the interface ImageObserver, and has a few attributes of the following types: Font, Color, and the third one, which implements ComponentPeer interface. There are two subclasses are derived from the Component class: TextComponent and Container. Component class has an attribute parent, which is of type Container. Container class can have a set of zero or more Component type objects. Container also has its own arrangement manager, which can be any class implementing LayoutManager interface.

5 Copyright (C), No Magic, Inc. 2002 - 20035 Why Do We Need Maps?

6 Copyright (C), No Magic, Inc. 2002 - 20036 Why Do We Need Graphics?  “Picture is worth a thousand of words. UML model is worth more than that.”

7 Copyright (C), No Magic, Inc. 2002 - 20037 What Is UML?  Nine diagrams of various types  Graphical modeling language  Notation standard  Unified terminology  A way to:  Visualise  Specify  Document

8 Copyright (C), No Magic, Inc. 2002 - 20038 UML Diagram Example

9 Copyright (C), No Magic, Inc. 2002 - 20039 Modeling  What is it?  Why do we need modeling?

10 Copyright (C), No Magic, Inc. 2002 - 200310 When We DON’T Need Modeling?  Single-person projects  That don’t need to be maintained  That never will be transferred to anyone’s elses responsibility

11 Copyright (C), No Magic, Inc. 2002 - 200311 UML History  UML was developed by Rational Software company (now IBM) in the middle of 1990s, by the common efforts of Grady Booch, Ivar Jacobson and Jim Raumbaugh (also known as “Three Amigos”)  In the November of 1997 UML was standardized by OMG (Object Management Group)

12 Copyright (C), No Magic, Inc. 2002 - 200312 Long Story of UML Grady Booch Jim Rumbaugh (OMT) Other Methodologies Unified Method 0.8 UML 0.9 & 0.91 Ivar Jacobson UML 1.0 Partner’s Expertise UML 1.1 UML 1.3 ‘95 ‘96 Jan ‘97 Sep ‘97 ‘99 Fragmentation Unification Standardization Industrialization UML 1.4 ‘01 UML 2.0 UML 1.5 ‘03‘03 Soon

13 Copyright (C), No Magic, Inc. 2002 - 200313 UML Penetration  According to a BZ Research survey carried out on June 2002 in USA, 34% of programmers use “UML-based modeling” for simulation of some (94%) or all (6%) systems

14 Copyright (C), No Magic, Inc. 2002 - 200314 UML Architectural Views and Diagrams Use Case View Use Case Diagram Structural View Behavioral View Environment View Implementation View Class Diagram Object Diagram Sequence Diagram Collaboration Diagram State Diagram Activity Diagram Component Diagram Deployment Diagram

15 Copyright (C), No Magic, Inc. 2002 - 200315 Use Case View: Use Case Diagram  Describes the functionality provided by system  Contains actors, use cases, and relationships

16 Copyright (C), No Magic, Inc. 2002 - 200316 Structural View: Class Diagrams  Describes static structure of the system  Contains classes and relationships

17 Copyright (C), No Magic, Inc. 2002 - 200317 Structural View: Object Diagrams Shows an example of specific objects and relationships that could be instantiated from the class diagram

18 Copyright (C), No Magic, Inc. 2002 - 200318 Behavioral View: Activity Diagram  Shows a procedural flow for a process  Useful for workflow modeling  Supports parallel behavior for multithreaded programming

19 Copyright (C), No Magic, Inc. 2002 - 200319 Behavioral View: Sequence Diagram  Describes how a process is performed by a group of classes or objects by a sequential set of steps  Provides an object oriented view of a procedural views  Facilitates assignment of responsibilities to classes  (Diagram on next slide)

20 Copyright (C), No Magic, Inc. 2002 - 200320 Behavioral View: Sequence Diagram

21 Copyright (C), No Magic, Inc. 2002 - 200321 Behavioral View: Collaboration Diagram  Provides an alternative view to the sequence diagram  Provides the same information displayed in a different format  Emphasizes how classes or objects interact and collaborate with each other

22 Copyright (C), No Magic, Inc. 2002 - 200322 Behavioral View: State Diagram  Describes how an object changes behavioral states through its lifecycle  Describes the responses of object or class to external stimuli

23 Copyright (C), No Magic, Inc. 2002 - 200323 Implementation View: Component Diagram  Describes the various software components and their relationships in a system

24 Copyright (C), No Magic, Inc. 2002 - 200324 Environment View: Deployment Diagram  Describes physical relationships between software and hardware components (node) in delivered system  Presents how components and objects route and move around a distributed system

25 Copyright (C), No Magic, Inc. 2002 - 200325 Combining Component & Deployment Diagrams  Place components from component diagram on the deployment diagram  Display which component runs on which nodes

26 Copyright (C), No Magic, Inc. 2002 - 200326 Which UML Diagrams are Used Most Frequently?

27 Copyright (C), No Magic, Inc. 2002 - 200327 UML User Profiles Business AnalystsUse case, activity System AnalystsUse case, activity, class (domain entities), sequence, implementation DesignersClass, sequence, collaboration, state, implementation, package ProgrammersClass, sequence, collaboration Quality AssuranceUse case, activity, package

28 Copyright (C), No Magic, Inc. 2002 - 200328 What UML is NOT  Programming language (yet)  Design methodology  Software development process  Substitute for traditional project management tools (schedule, project plan etc.)  GUI design language (although it is possible to describe GUI flow and states)  Magic silver bullet

29 Copyright (C), No Magic, Inc. 2002 - 200329 Quiz Yourself  Why do we say that UML is Unified?  What’s the difference between programming languages and UML?  What are the five Architectural Views of UML?  What UML is NOT?  Do you think UML will replace programming languages some day?

30 Copyright (C), No Magic, Inc. 2002 - 200330 Where to Find More Information About UML?  Internet sites  http://www.cetus-links.org/oo_uml.html http://www.cetus-links.org/oo_uml.html  Hundreds of UML-related links  http://www.devx.com/uml http://www.devx.com/uml  UML designers zone  http://www.sdmagazine.com/ http://www.sdmagazine.com/  A magazine containing many articles about UML  http://www.omg.org/uml, http://www.omg.org/mda http://www.omg.org/umlhttp://www.omg.org/mda  Official OMG site. There one can find UML and MDA specifications and many other related resources

31 Copyright (C), No Magic, Inc. 2002 - 200331 Books on UML  UML Weekend Crash Course  Comprehensive book for the begginers  Instant UML, Pierre-Allain Muller  Comprehensive and easy-to-read book  UML Toolkit, Hans-Erik Eriksson  Quite large book containing many examples  UML Distilled, Martin Fowler and Kendal Scott  A short description of UML and RUP for the beginners.


Download ppt "Copyright (C), No Magic, Inc. 2002 - 20031 Welcome to No Magic! www.nomagic.com."

Similar presentations


Ads by Google