3.0 object-oriented modeling using uml - institute | stsd/uml...object-oriented modeling using uml...

8
3.01 © J.W. Schmidt, F. Matthes, TU Hamburg-Harburg 3.0.1 Object-Oriented Modeling Using UML 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: m Introduction to UML Summary: m History of OOAD leading to UML m UML Diagrams: Overview m UML Models in the Objectory Software Development Process Literature: m [Fowler99] Last change: Dezember 7, 1999 3.0.2 Object-Oriented Modeling Using UML 70/80ies structured programming Evolution of OO Development Methods 80/90ies structured design structured analysis object-oriented design object-oriented programming object-oriented analysis

Upload: lydiep

Post on 24-May-2018

247 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 3.0 Object-Oriented Modeling Using UML - Institute | STSD/UML...Object-Oriented Modeling Using UML 3.0.1 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: mIntroduction to

3.01

© J.W. Schmidt, F. Matthes, TU Hamburg-Harburg

3.0.1Object-Oriented Modeling Using UML

3.0 Object-Oriented Modeling Using UMLSubject/Topic/Focus:

m Introduction to UML

Summary:

m History of OOAD leading to UML

m UML Diagrams: Overview

m UML Models in the Objectory Software Development Process

Literature:

m [Fowler99]

Last change: Dezember 7, 1999

3.0.2Object-Oriented Modeling Using UML

70/80ies

structured programming

Evolution of OO Development Methods

80/90ies

structured design

structured analysis

object-oriented design

object-oriented programming

object-oriented analysis

Page 2: 3.0 Object-Oriented Modeling Using UML - Institute | STSD/UML...Object-Oriented Modeling Using UML 3.0.1 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: mIntroduction to

3.02

© J.W. Schmidt, F. Matthes, TU Hamburg-Harburg

3.0.3Object-Oriented Modeling Using UML

First object-oriented languages (Simula-67, Smalltalk).

More than 50 different OOAD languages cause the userstrouble to find complete and appropriate tools.

New iterations of methods appear.Booch ‘93, OOSE (Jacobson), OMT-2 (Rumbaugh)

Unification, UML 0.9 by Booch, Rumbaugh

Standardization, UML 1.1 by Booch, Rumbaugh, Jacobson

Object Management Group (OMG) adapts UML as OOADstandard

Evolving standard in version 1.3

History of OOAD leading to UML1970

1980

1992

1995

1997

1999

3.0.4Object-Oriented Modeling Using UML

History of UML

Other methods Booch ‘91 OMT - 1 OOSE

Booch ‘93 OMT - 2

Unified method 0.8

UML 0.9 & 0.91

UML 1.1

Industrialization

Standardization

Unification

Fragmentation

publicfeedback

UML 1.3

Page 3: 3.0 Object-Oriented Modeling Using UML - Institute | STSD/UML...Object-Oriented Modeling Using UML 3.0.1 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: mIntroduction to

3.03

© J.W. Schmidt, F. Matthes, TU Hamburg-Harburg

3.0.5Object-Oriented Modeling Using UML

The Unified Modeling Language

m Booch and Rumbaugh started working towards a Unified ModelingLanguage (UML) in 1994 under the auspices of Rational Inc.

m UML only offers a model notation, not a methodology for how to do goodmodeling.

m UML is used by the development method Objectory (Jacobson at Rational).

m UML was proposed by Rational Inc. and by Hewlett-Packard as a standardfor object-oriented analysis and design and was adopted by the OMG.

m Vendors modify their CASE tools to make them consistent with UML.

3.0.6Object-Oriented Modeling Using UML

m Use Case Diagrams Nodes: Actor, Use (case)Links: Involvement, Extension, Inclusion, Generalization

m Class Diagrams Nodes: ClassLinks: Association, Generalization

m Interaction Diagrams Nodes: ObjectLinks: Message, Lifeline

m State Diagrams Nodes: State, Sub-StateLinks: Transition

m Activity Diagrams Nodes: ActivityLinks: Guard, Synchronization

m Package Diagrams Nodes: PackageLinks: Dependency

m Deployment Diagrams Nodes: Processor, NodeLinks: Dependency

UML Diagrams (1)

Page 4: 3.0 Object-Oriented Modeling Using UML - Institute | STSD/UML...Object-Oriented Modeling Using UML 3.0.1 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: mIntroduction to

3.04

© J.W. Schmidt, F. Matthes, TU Hamburg-Harburg

3.0.7Object-Oriented Modeling Using UML

UML Diagrams (2)

Class Diagrams

State Diagrams

Interaction Diagrams

interaction sequencesbetween objects

Use Case Diagrams

structuresActivity Diagrams

scenariosworkflows

intra-class behavior

inter-class behavior

Package Diagrams

structuring

3.0.8Object-Oriented Modeling Using UML

“Unified Process” and UMLTransition

ConstructionElaboration

Inception

Methodology

Software development is a process in phases.This process has to follow a methodology.Each phase is supported by graphs & diagrams.There are different kinds of documents and various usage of them.UML is an essential language for diagrams, offering computer support as wellas the right patterns for the various stages of refinement and viewpoints.

Page 5: 3.0 Object-Oriented Modeling Using UML - Institute | STSD/UML...Object-Oriented Modeling Using UML 3.0.1 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: mIntroduction to

3.05

© J.W. Schmidt, F. Matthes, TU Hamburg-Harburg

3.0.9Object-Oriented Modeling Using UML

Diagrams and Process

Iteration

3.0.10Object-Oriented Modeling Using UML

Diagrams and Process

Elaboration

Inception

Use Case Diagrams

Page 6: 3.0 Object-Oriented Modeling Using UML - Institute | STSD/UML...Object-Oriented Modeling Using UML 3.0.1 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: mIntroduction to

3.06

© J.W. Schmidt, F. Matthes, TU Hamburg-Harburg

3.0.11Object-Oriented Modeling Using UML

Diagrams and Process

Elaboration

Inception

Class & Package Diagrams

Class 1 Class 2

Class 3

3.0.12Object-Oriented Modeling Using UML

Diagrams and Process

Object Object Object

Object

Elaboration

Inception

Interaction Diagrams (Scenarios)

Page 7: 3.0 Object-Oriented Modeling Using UML - Institute | STSD/UML...Object-Oriented Modeling Using UML 3.0.1 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: mIntroduction to

3.07

© J.W. Schmidt, F. Matthes, TU Hamburg-Harburg

3.0.13Object-Oriented Modeling Using UML

Diagrams and Process

Activity 1 Activity 2

Activity 3 Activity 4

Activity 5

Elaboration

Inception

Activity Diagrams (Workflow, Interclass Behavior)

3.0.14Object-Oriented Modeling Using UML

Diagrams and Process

Elaboration

Inception

State Transition Diagrams (Intraclass Behavior)

State 1

State 4

State 2 State 3

Page 8: 3.0 Object-Oriented Modeling Using UML - Institute | STSD/UML...Object-Oriented Modeling Using UML 3.0.1 3.0 Object-Oriented Modeling Using UML Subject/Topic/Focus: mIntroduction to

3.08

© J.W. Schmidt, F. Matthes, TU Hamburg-Harburg

3.0.15Object-Oriented Modeling Using UML

Texts and Process

//: Shapes.javaimport java.util.*;class Shape { void draw() {} void erase() {}}class Circle extends Shape { void draw() { System.out.println("Circle.draw()"); } void erase() { System.out.println("Circle.erase()"); }}public static void main(String args[]) { Shape s[] = new Shape[9]; // Fill up the array with shapes: for(int i = 0; i < s.length; i++) s[i] = randShape(); // Make polymorphic method calls: for(int i = 0; i < s.length; i++) s[i].draw(); }} Construction

Elaboration

Inception

Source Code

3.0.16Object-Oriented Modeling Using UML

Diagrams and Process

ObjectDatabase

UnitServer

Application

ConfigureUsers

NetworkInterface

Transition

Construction

Elaboration

Inception

Deployment Diagrams