Itntroduction to UML, page 1 Introduction to UML.

Slides:



Advertisements
Similar presentations
ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
Advertisements

Introduction to UML: Structural &Use Case Modeling
CIT731: Database Development Object Oriented Modeling (OOM)
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Unified Modeling Language
Object-Oriented Analysis and Design
Chapter 1 Object-Oriented System Development
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:
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
UML Overview Unified Modeling Language Basic Concepts.
Object-Oriented Database SystemsCSCI 397C-16 Unified Modeling Language (UML) Prepared By: Keith Bryant 02 Nov 99 - Page 1.
Introduction to UML Visual modeling Models and its importance
Rational Worldwide Software Symposium
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
Tony Hoare ¢ Turing Award 1980 ¢ Program Verification ¢ Algol 60 ¢ Axiomatic Semantics ¢ Floyd-Hoare Logic ¢ Concurrent Programs ¢ Communicating Sequential.
History of UML. In the beginning… In 1965 the first object-oriented (OO) programming language, Simula I, was introduced. In 1965 the first object-oriented.
Itntroduction to UML, page 1 Introduction to UML.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
Ch4: Software Architecture and Design. 1 The role of analysis and design  Software construction may be partitioned into the following phases:  Req.
David Harrison Senior Consultant, Popkin Software 22 April 2004
Andrew SuttonKent State University1 Software Modeling Andrew Sutton Department of Computer Science Kent State University.
UML and Object Oriented Concepts
Unified Modeling Language(UML) BY
The definition and history of creating the UML Lection №1.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 4 - System modelling Dr Richard Clayton.
CSCI-383 Object-Oriented Programming & Design Lecture 9.
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 UML by Jan Pettersen Nytun, page 1 Introduction to UML.
Introduction to UML By: Prof. Aiman Hanna Department of Computer Science, Concordia University, Montreal, Canada.
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Lecture 3: Visual Modeling & UML 1. 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship via “ Modeling.
Introduction To System Analysis and Design
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
IS0514Slide 1 IS0514 Lecture - Week 1 (Semester 2) Business Systems Development Tools and Techniques.
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.
16 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 7 Unified Modeling Language.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Copyright © 2013 Curt Hill UML 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.
 What is Modeling What is Modeling  Why do we Model Why do we Model  Models in OMT Models in OMT  Principles of Modeling Principles of Modeling 
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
The Unified Modeling Language (UML)
Model Driven Architecture: An Introduction. Heterogeneity is Permanent Programming languages –~3 million COBOL programmers –~1.6 million VB programmers.
UML Diagrams for Caradon developers Daniel DG Moth Core Development Group, Research Student University of Brighton, MSc Object Oriented Software Technology.
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.
Unified OO becomes commonly used in the late 1980s Various analysis and design methods The “three amigos” join forces in Rational Software Also include.
Session 1 What Is the UML? Written by Thomas A. Pender Published by Wiley Publishing, Inc. October 5, 2011 Presented by Kang-Pyo Lee.
Copyright (C), No Magic, Inc Welcome to No Magic!
Introduction to UML Hazleen Aris Software Eng. Dept., College of IT, UNITEN. …Unified Modeling Language.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
CS 501: Software Engineering Fall 1999 Lecture 15 Object-Oriented Design I.
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.
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.
1 Advanced DataBases Unified Modelling Language An Introduction and Use Case Lecture 2 Susan Curtis.
Introduction to UML.
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Introduction to Unified Modeling Language (UML)
Introduction to Object Oriented Analysis, Design and Unified Modeling Language (UML) Shanika Karunasekera.
Rational Worldwide Software Symposium
Introduction to UML.
Rational Worldwide Software Symposium
Rational Worldwide Software Symposium
Presentation transcript:

Itntroduction to UML, page 1 Introduction to UML

Itntroduction to UML, page 2 U M L Unified Unified: Unification of earlier object-oriented analysis and design methods. Same concepts and notation for different application domains and different development processes. Same concepts and notation through the whole development lifecycle.~ ~ Modeling: Making a semantically* complete abstraction of a system. (* The formal specification of the meaning and behavior of something) Easier to communicate between stakeholders Language: A graphical language ~

Itntroduction to UML, page 3 UML History 1970 : development method using traditional programming language such as Cobol, Fortran. This method became widespread in the 1980s. The first OO language, Simula, is developed in Since 1980 OO language: Smalltalk, C, C++, Eiffel Unification effort since Rumbaugh (OMT) and Booch (Rational software) began to develop UML which first-proposed in : Object Management Group (OMG) issued RFP for standard approach to OO-modeling September 1997: Final UML proposal submitted to OMG. Nov 1997: UML is adopted as a standard by OMG 2000: Specification of UML : Specification of UML 2.0

Itntroduction to UML, page 4 UML Origins «document» Unified Method 0.8 «document» Unified Method 0.9 «document» Unified Method 1.0 «document» Unified Method 1.1 «document» Unified Method 1.2 «document» Unified Method 1.3 «refine» January 1997 (initial submission to OMG) September 1997 (final submission to OMG) Editorial revision With no significant Technical changes

Itntroduction to UML, page 5 Where Can the UML be Used? Enterprise information system Banking and financial service Telecommunication Transportation Defense/Aerospace Medical electronic Scientific Retail Distributed Web-based Services etc (Look at UML success story at )

Itntroduction to UML, page 6 UML Is Based on Object- oriented Concepts A program will typically consist of objects that cooperate to solve a task. An object will typically have attributes (data) and methods (behavior), this defines the state of the object and the manner in which the object operate. Objects communicate by sending messages to each other. Sending a message to an object is the same as calling a method of the object.

Itntroduction to UML, page 7 Class and Object as Defined by Booch, Rumbaugh and Jacobson ClassClass : A description of a set of objects that share the same attributes, operations, relationships, and semantics. ObjectObject : A concrete manifestation of an abstraction; an entity with a well defined boundary and identity that encapsulates state and behavior; an instance of a class.

Itntroduction to UML, page 8 Some of the UML Goals Define an easy-to-learn but semantically rich visual modeling language. Unify ideas from other modeling languages and incorporate industry best practices. Support higher-level development concepts such as collaborations (design patterns), frameworks and components. Provide flexibility for applying different processes and mapping to different programming languages. Support extensibility and specialization mechanisms so that the core concepts can be extended. Provide a formal basis so that model interchange between different OO tools will be possible.

Itntroduction to UML, page 9 The Value of UML Open standard. Supported by many tools. Supports the entire development lifecycle. Support diverse application areas. Based on experience and needs of the user community.

Itntroduction to UML, page 10 UML Is Not a Visual Programming Language UML is not a visual programming language. It does not have all necessary visual and semantic support to replace programming languages. But UML has a tight mapping to a family of OO languages like C++, Visual Basic and Java. Mapping to Database System like Oracle, DDL etc UML Model Program Code Mapping Java, C++, VB etc

Itntroduction to UML, page 11 Software Engineering Methods modeling language and a processMost methods consist of both a modeling language and a process (who is doing what and when). visual languageThe modeling language, the notation, typically include some visual language (different types of diagrams). toolA tool to support the method is also crucial.

Itntroduction to UML, page 12 Three of the most popular methods OMTObject Modeling Technique, OMT, introduced by Jim Rumbaugh. OMT is considered to be strong on analysis and weaker in the design area. Booch Booch, introduced by Grady Booch (Rational Software). This method is considered to be strong in design and weak when it comes to analysis. OOSE OOSE, (use cases ) introduced by Ivar Jacobson. OOSE is considered to be strong when it comes to behavior analysis and weaker in the other areas.

Itntroduction to UML, page 13 UML Is Not a Development Process A development process defines: - Who is doing What, - When to do it, and - How to reach a certain goal The UML is intentionally process independent, and defining a standard process was not a goal of UML. Different domain may require different processes. But the UML authors promote a development process that is use- case-driven, architecture centric, iterative and incremental. (Example of method: RUP)

Itntroduction to UML, page 14 Abstraction Abstraction filter out nonessential details Abstraction is a fundamental human capability, it let us filter out nonessential details about a complex problem or structure. viewed at different levelsThrough abstraction, a system can be viewed at different levels.Often there is a hierarchic structure, each level of model is more precise than its parent. When developing a software system, code will be the lowest and most detailed level.

Itntroduction to UML, page 15 Modeling What is a model? A model is a simplification of reality. a modelmapping from the problem domain to a representationWhen you make a model you are making a mapping from the problem domain to a representation of the system you are modeling. a program execution can be regarded as a simulation of the behavior of the system.When you work object-oriented the model tends to be close to the system modeled, and a program execution can be regarded as a simulation of the behavior of the system. Reality System

Itntroduction to UML, page 16 Why Do We Model? Models give us a template that guides us in constructing a system. If you want to make a building you first make a blueprint of the building to make, in the same way you should make a model of the system you want to make. As the complexity of systems increases, so does the importance of good modeling techniques. Models help us visualize a system at different levels of abstraction, this makes it easier to manage complexity and to understand the system. Models document the dicisions we have made

Itntroduction to UML, page 17 More Arguments - Why Do We Model? It is not expensive to experiment with multiple solutions when you operate on a high level of abstraction. Models help for communication between different stakeholders. Manager Programmer Accountant

Itntroduction to UML, page 18 UML – a Graphic Language for The UML is a standard language for writing software blueprints. It may be used as Visualizing –Using the standardized graphic UML displays Specifying –Semantics to define static structure dynamic behavior model organization Constructing –Map UML to Programming Environment and Generate some code Automatically Documenting –Every phase of lifecycle from analysis and design through deployment and maintenance

Itntroduction to UML, page 19 UML TOOLS We use UML Tools to : 1.Create dan design model 2.Map to specific programming language (generate program-code) 3.Reverse engineering from program code into UML model. 4.Export / Import model between various UML tools using XMI standar. 5.Generate software system documentations

Itntroduction to UML, page 20 UML TOOLS iUML (intelligent UML) Kabira Rational Rose Poseidon UML Together Control Centre Argo UML Rose XDE for Java

Itntroduction to UML, page 21 Building Blocks of the UML Things (Modeling element) 1.Structural things 2.Behavioral things 3.Grouping things 4.Annotational things Relationships 1.Dependency 2.Association 3.Generalization 4.Realization Diagram 1.Class diagram 2.Object diagram 3.Use case diagram 4.Sequence diagram 5.Collaboration diagram 6.Statechart diagram 7.Activity diagram 8.Component diagram 9.Deployment diagram

Itntroduction to UML, page 22 Who are behind UML? Some of the OMG members:  AT&T  BEA  Borland  Boeing  CA  Citigroup  Compaq  Ericsson  Ford  Fujitsu  Glaxo  HP  Hitachi  Hyperion  IBM  IONA  io Software  Kabira  KC  John Deere  Microsoft  MITRE  MSC Soft  NASA  NEC  NetGenics  Nokia  NTT  OASIS  Oracle  Pfizer  Rational  SAGA  SAP  SAS  Secant  Siemens  Sprint  Sun  Unisys  Vertel

Itntroduction to UML, page 23 References Grady Booch, James Rumbaugh and Ivar Jacobson: The Unified Modeling Language User Guide. Addison-Wesley, 1999 Grady Booch, James Rumbaugh and Ivar Jacobson: The Unified Modeling Language Reference Manual. Addison-Wesley, 1999 UML Website: maintained by Object Management Group (OMG) Rational software: