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

Slides:



Advertisements
Similar presentations
7M701 1 Information Systems Modelling and Design with.
Advertisements

A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
UML: An Introduction.
UML Unified Modeling Language Basic Concepts. UML What is the UML*? UML stands for Unified Modeling Language The UML combines the best of the best from:
UML Overview Unified Modeling Language Basic Concepts.
Principles of Object-Oriented Software Development Unified Modeling Language.
UML Distilled Martin Fowler. State Diagrams  State Transition Diagrams define a number of states and the transitions between the states.
© Copyright Eliyahu Brutman Programming Techniques Course.
Itntroduction to UML, page 1 Introduction to UML.
David Harrison Senior Consultant, Popkin Software 22 April 2004
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
An Introduction to Models & The UML The Unified Modeling Language Copyright © 2007 Patrick McDermott College of Alameda Not really.
Introduction to UML 1 Quick Tour Why do we model? What is the UML? Foundation elements Unifying concepts Language architecture Relation to other OMG technologies.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Introduction to the Unified Modeling Language “The act of drawing a diagram does not constitute analysis or design. … Still, having a well-defined and.
Introduction to UML By: Prof. Aiman Hanna Department of Computer Science, Concordia University, Montreal, Canada.
Slide 1 UML Review Chapter 2: Introduction to Object-Oriented Systems Analysis and Design with the Unified Modeling Language, Version 2.0 Alan Dennis,
Unified Modeling Language, Version 2.0
Lecture 3: Visual Modeling & UML 1. 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship via “ Modeling.
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
UML What Is the UML? The Unified Modeling Language (UML) is the successor to the wave of object- oriented analysis and design (OOA&D) methods.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
1 UML Distilled 3e by Martin Fowler Chapter 1 Introduction to UML.
ARCH-2: UML From Design to Implementation using UML Frank Beusenberg Senior Technical Consultant.
Copyright © 2013 Curt Hill UML Unified Modeling Language.
An Introduction to the Unified Modeling Language
1 Introduction to UML. 2 What is UML? UML is an acronym for Unified Modeling Language. Unified –Combines the best from existing object- oriented software.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Michael Schloh von Bennewitz 1. Oktober 2002 The Unified Modeling Language Overview of theory and practice of the OMG Unified Modeling.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
The Unified Modeling Language (UML)
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
UML Diagrams for Caradon developers Daniel DG Moth Core Development Group, Research Student University of Brighton, MSc Object Oriented Software Technology.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 1: Introduction.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
MADALINA CROITORU Software Engineering week 4 Practical Madalina Croitoru IUT Montpellier.
A Well Designed Web Application The Benefits of Object Oriented Analysis and Design Simone Becker
1 Unified Modeling Language, Version 2.0 Chapter 2.
CSCI 3428: Software Engineering Tami Meredith UML Unified Modeling Language.
Object Oriented Analysis and Design Introduction to Rational Rose.
Slide 1 Objectives Understand the basic characteristics of object-oriented systems. Be familiar with the Unified Modeling Language (UML),V.2.0.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
Basic Characteristics of Object-Oriented Systems
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
SWE 214 (071) Introduction to UML Slide 1 Introduction to UML.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
1 An Overview of UML. 2 The Unified Modeling Language UML is a graphical language used by software engineers to model software systems during development.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Use Cases UML. Use Cases What are Use Cases?  A statement of the functionality users expect and need, organized by functional units  Different from.
Introduction to UML.
Evolution of UML.
Object-Oriented Analysis and Design
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Systems Analysis and Design With UML 2
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
Systems Analysis and Design With UML 2
University of Central Florida COP 3330 Object Oriented Programming
UML: Unified modeling language
Introduction to Object Oriented Analysis, Design and Unified Modeling Language (UML) Shanika Karunasekera.
Introduction to UML.
Introduction to UML.
ARCH-5: From Design to Implementation in OpenEdge® using UML and MDA
Uml diagrams In ooad.
Presentation transcript:

Copyright (C), No Magic, Inc Welcome to No Magic!

Copyright (C), No Magic, Inc Introduction to the OMG UML ™ Language

Copyright (C), No Magic, Inc 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

Copyright (C), No Magic, Inc 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.

Copyright (C), No Magic, Inc Why Do We Need Maps?

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

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

Copyright (C), No Magic, Inc UML Diagram Example

Copyright (C), No Magic, Inc Modeling  What is it?  Why do we need modeling?

Copyright (C), No Magic, Inc 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

Copyright (C), No Magic, Inc 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)

Copyright (C), No Magic, Inc 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

Copyright (C), No Magic, Inc 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

Copyright (C), No Magic, Inc 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

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

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

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

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

Copyright (C), No Magic, Inc 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)

Copyright (C), No Magic, Inc Behavioral View: Sequence Diagram

Copyright (C), No Magic, Inc 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

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

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

Copyright (C), No Magic, Inc 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

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

Copyright (C), No Magic, Inc Which UML Diagrams are Used Most Frequently?

Copyright (C), No Magic, Inc 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

Copyright (C), No Magic, Inc 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

Copyright (C), No Magic, Inc 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?

Copyright (C), No Magic, Inc Where to Find More Information About UML?  Internet sites   Hundreds of UML-related links   UML designers zone   A magazine containing many articles about UML   Official OMG site. There one can find UML and MDA specifications and many other related resources

Copyright (C), No Magic, Inc 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.