Unified Modeling Language (UML)

Similar documents
Chapter 2, lecture 1, Modeling with UML

Unified Modeling Language (UML)

CMSC 132: Object-Oriented Programming II

CSE 308. UML Overview Use Case Diagrams. Reference. en.wikipedia.org/wiki/class_diagram. Robert Kelly, B. Bruegge,

Chapter 2, Modeling with UML

Design Patterns. Design Patterns

Software Engineering

Course "Softwaretechnik Modeling with UML Stephan Salinger

Chapter 2, Modeling with UML

CSE 308. UML Overview Use Case Diagrams. Reference. Class diagrams. Session 6 UML Intro/Use cases. Robert Kelly, B. Bruegge,

Chapter 2, Modeling with UML, Part 2

Course "Softwaretechnik" Book Chapter 2 Modeling with UML

Chapter 2, Modeling with UML

Recap : UML artefacts. Black Box Requirements. Functional Specification. System. System. Test. Design. System. System. Development.

Modern methods in Software Engineering UML.

Course "Softwaretechnik" Book Chapter 2 Modeling with UML

Chapter 2, Modeling with UML, Part 2

Chapter 2, Modeling with UML, Part 2

Object Relationships UML Class diagrams. Software Requirements and Design CITS 4401 Lecture 4

MSc programme (induction week) Department of Informatics INTRODUCTION TO UML

Chapter 2, lecture 2 Modeling with UML

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

3.0 Object-Oriented Modeling Using UML

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

Unified Modeling Language

BUILDING BLOCKS. UML & more...

CISC 322 Software Architecture

UML part I. UML part I 1/41

Object Oriented Modeling

Software Service Engineering

Agenda. Why Model. Why Model? History of OO Modeling Methodologies Object Modeling Technique (OMT) Unified Modeling Language (UML)

Chapter 2, Modeling with UML, Part 2

Course 3 7 March

UML Modeling. Sumantra Sarkar. 29 th June CIS 8090 Managing Enterprise Architecture

Software Development. Modular Design and Algorithm Analysis

Software Engineering Lab Manual

UML: Unified Modeling Language

UML Primer. -Elango Sundaram

Introduction to Software Engineering. 5. Modeling Objects and Classes

Unified Modeling Language (UML)

How and Why to Use the Unified Modeling Language. among software components, architectural-based

Software Development Methodologies

UML Component Diagrams A.Y 2018/2019

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal

Modellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico

Unified Modeling Language for Real-Time Systems Design

Lecture #2 on Object-Oriented Modeling

Introduction to Software Engineering. 6. Modeling Behaviour

The Unified Modeling Language User Guide

Comparative Analysis of Architectural Views Based on UML

UML & OO FUNDAMENTALS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 3 08/30/2011

UML Modeling I. Instructor: Yongjie Zheng September 3, CS 490MT/5555 Software Methods and Tools

Engineering Design w/embedded Systems

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

Introduction to Software Engineering. 5. Modeling Objects and Classes

Meltem Özturan

i219 Software Design Methodology 1. Overview of software design methodology Kazuhiro Ogata (JAIST) Outline of lecture

Unified Modeling Language (UML) Object Diagram and Interaction Diagrams

Design and UML Class Diagrams

Introduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process

A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML

UNIT-I Introduction of Object Oriented Modeling

CS2353 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT- I

Index. Add Diagram > Sequence Diagram command,

Lab Manual. Object Oriented Analysis And Design. TE(Computer) VI semester

Introduction to UML. Danang Wahyu utomo

Notation Standards for TOGAF:

Today s Agenda UML. CompSci 280 S Introduction to Software Development. 1.Introduction UML Diagrams. Topics: Reading:

NIMSAD Evaluation of the Rational Unified Process

7. UML Sequence Diagrams Page 1 of 1

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

Question Sheet There are a number of criticisms to UML. List a number of these criticisms.

Models are used for several purposes. We believe that some of the most important are:

Ali Khan < Project Name > Design Document. Version 1.0. Group Id: S1. Supervisor Name: Sir.

OO Analysis and Design with UML 2 and UP

Ingegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML

Index. : (colon), 80 <<>> (guillemets), 34, 56

Interaction Modelling: Sequence Diagrams

UML & OO Fundamentals. CSCI 4448/5448: Object-Oriented Analysis & Design Lecture 3 09/04/2012

Chapter 5, Analysis: Dynamic Modeling

Object-Oriented Systems Development: Using the Unified Modeling Language

UML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc.

OBJECT ORIENTED ANALYSIS AND DESIGN

Software Engineering

SOFTWARE ENGINEERING UML FUNDAMENTALS. Saulius Ragaišis.

Model Driven Development Unified Modeling Language (UML)

Unified Modelling Language

What is UML / why. UML is graphical and notational representation for software system requirements analysis and design. (Software Engineering )

Object-Oriented Analysis and Design Using UML

UNIT-4 Behavioral Diagrams

2. Modeling with UML

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 4 Entity Relationship (ER) Modeling

Information Systems Development Methodologies

Lecture 17: (Architecture V)

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A

Chapter 3 System Models

Systems Analysis & Design

INTERACTION ARCHITECTURAL MODELING. Lecture 9 Interaction Architectureal Modeling

Unified Modeling Language (UML) and Modeling

Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks

Transcription:

Unified Modeling Language (UML) Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park Overview Unified Modeling Language (UML) Models & views Class diagrams Sequence diagrams 1

UML UML (Unified Modeling Language) Graphic modeling language for describing object-oriented software Started in 1994 Combined notations from 3 leading OO methods OMT (James Rumbaugh) OOSE (Ivar Jacobson) Booch (Grady Booch) UML Motivation Software growing larger & complex Difficult to analyze Need to describe software design Clearly Concisely Correctly UML equivalent to software blueprint Provides simple yet clear abstraction for software Computer-aided software engineering (CASE) Tools for generating & analyzing UML 2

Model Definitions Abstraction describing (all or part of) system View Depicts selected aspects of a model using set of diagrams Diagram Actual depiction of aspect of model Notation Set of graphical / textual rules for representing view Models & Views System Model 1 View 2 View 1 View 3 Model 2 3

Industry standard Many features UML Large collection of notations Multiple views Multiple diagrams We focus mainly on Logical view of relationship between classes UML Views Use-Case Show external user (actor) view of system Logical Show how functionality is implemented Component Show organization of code components Deployment Show assignment of code to physical computers 4

(Some) UML Diagrams Class Describe static structure of the classes in system Sequence Describe dynamic behavior between users and objects Use case Describe functional behavior seen by (external) user State Describe dynamic behavior of objects as finite state machine Activity Model dynamic behavior of a system as a flowchart UML Conventions Rectangles classes or instances Ovals functions or use cases Types preceded by colon, not underlined :SimpleWatch Instances underlined names mywatch:simplewatch Diagrams graphs Nodes entities Arcs relationships between entities 5

Class Diagrams Class Multiplicity 2 PushButton state push() release() SimpleWatch 1 1 1 1 1 2 LCDDisplay blinkidx Battery load() blinkseconds() blinkminutes() blinkhours() stopblinking() referesh() Operations Association Attributes 1 Time now() Class diagrams represent structure of system Sequence Diagram Object :WatchUser :SimpleWatch :LCDDisplay :Time pressbutton1() pressbutton1() blinkhours() blinkminutes() pressbutton2() pressbuttons1and2() stopblinking() incrementminutes() refresh() commitnewtime() Activation Message Sequence diagrams represent behavior as interactions 6

Use Case Diagrams Package SimpleWatch Actor ReadTime WatchUser Use case SetTime ChangeBattery WatchRepairPerson Use case diagrams represent functionality of system from external user s point of view Event button1&2pressed State Diagrams Blink Hours Initial state button2pressed Increment Hours State Transition button1pressed button1&2pressed Blink Minutes button2pressed Increment Minutes button1pressed Stop Blinking Blink Seconds button2pressed Increment Seconds button1&2pressed Final state 7

UML Class Diagrams Represent the (static) structure of the system During analysis Used to model problem domain concepts During detailed design Used to model classes Class contains Name State Behavior Class Diagrams 8

Class Diagrams Types may be included Only class name is required UML Sequence Diagrams Represent behavior in terms of interactions During requirements analysis Used to refine use case descriptions During system design Used to refine subsystem interfaces 9

Sequence Diagram Notation Columns Classes Arrows Messages Narrow rectangles Activations Dashed lines Lifelines Sequence Diagram Example Sequence of events for printer queue 10

Sequence Diagram Observations Represents behavior in terms of interactions Complement the class diagrams which represent structure Useful for finding participating objects 11