1 unified modeling language, version 2.0 chapter 2

31
1 Unified Modeling Language, Version 2.0 Chapter 2

Upload: avis-pearson

Post on 19-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Unified Modeling Language, Version 2.0 Chapter 2

1

Unified Modeling Language, Version 2.0

Chapter 2

Page 2: 1 Unified Modeling Language, Version 2.0 Chapter 2

2

Objectives

Understand the basic characteristics of object-oriented systems.

Be familiar with the Unified Modeling Language (UML), Version 2.0.

Be familiar with the Unified Process.

Understand a minimalist approach to object-oriented systems analysis and design.

Page 3: 1 Unified Modeling Language, Version 2.0 Chapter 2

3

Basic Characteristics of Object Oriented Systems

Classes and Objects

Methods and Messages

Encapsulation and Information Hiding

Inheritance

Polymorphism and Dynamic Binding

Page 4: 1 Unified Modeling Language, Version 2.0 Chapter 2

4

Classes and Objects

Class – Template to define specific instances or objects

Object – Instantiation of a class

Attributes – Describes the object

Behaviors – Specify what object can do

Page 5: 1 Unified Modeling Language, Version 2.0 Chapter 2

5

Classes and Objects

Page 6: 1 Unified Modeling Language, Version 2.0 Chapter 2

6

Methods and Messages

Methods implement an object’s behaviorAnalogous to a function or procedure

Messages are sent to trigger methodsProcedure call from one object to the next

Page 7: 1 Unified Modeling Language, Version 2.0 Chapter 2

7

Messages and Methods

Page 8: 1 Unified Modeling Language, Version 2.0 Chapter 2

8

Encapsulation and Information Hiding

Encapsulation combination of data and process into an entity

Information HidingOnly the information required to use a software module is published to the user

Reusability KeyUse an object by calling methods

Page 9: 1 Unified Modeling Language, Version 2.0 Chapter 2

9

Inheritance

Superclasses or general classes are at the top of a hierarchy of classes

Subclasses or specific classes are at the bottom

Subclasses inherit attributes and methods from classes higher in the hierarchy

Page 10: 1 Unified Modeling Language, Version 2.0 Chapter 2

10

Class Hierarchy

Page 11: 1 Unified Modeling Language, Version 2.0 Chapter 2

11

Inheritance

Page 12: 1 Unified Modeling Language, Version 2.0 Chapter 2

12

Polymorphism and Dynamic Binding

PolymorphismA message can be interpreted differently by different classes of objects

Dynamic BindingSometimes called late binding

Delays typing or choosing a method for an object until run-time

Static BindingType of object determined at compile time

Page 13: 1 Unified Modeling Language, Version 2.0 Chapter 2

13

Polymorphism & Encapsulation

Page 14: 1 Unified Modeling Language, Version 2.0 Chapter 2

14

The Unified Modeling Language, Version 2.0

Structure Diagrams

Behavior Diagrams

Extension Mechanisms

DevelopersGrady Booch

Ivar Jacobson

James Rumbaugh

Page 15: 1 Unified Modeling Language, Version 2.0 Chapter 2

15

Structure Diagram

Structure Diagrams includeClass

Object

Package

Deployment

Component

Composite structure diagrams

Page 16: 1 Unified Modeling Language, Version 2.0 Chapter 2

16

UML 2.0 Diagram Summary

Page 17: 1 Unified Modeling Language, Version 2.0 Chapter 2

17

Structure Diagrams

Classrelationship between classes

ObjectRelationships between objects

PackageGroup UML elements together to form higher level constructs

Page 18: 1 Unified Modeling Language, Version 2.0 Chapter 2

18

Structure Diagrams Cont.

DeploymentShows the physical architecture and software components of system

ComponentPhysical relationships among software components

Composite StructureIllustrates internal structure of a class

Page 19: 1 Unified Modeling Language, Version 2.0 Chapter 2

19

Activity Diagrams

ActivityIllustrates business workflows

SequenceTime-based ordering Behavior of objects activities in a use case

CommunicationCommunication among a set of collaborating objects of an activity

Interaction Overview TimingOverview of flow of control of a process

Page 20: 1 Unified Modeling Language, Version 2.0 Chapter 2

20

State Machines

Behavioral State MachineExamines behavior of one class

Protocol State MachineShows dependencies of different interfaces of a class

Use-CaseCaptures business requirements

Illustrates interaction between system and environment

Page 21: 1 Unified Modeling Language, Version 2.0 Chapter 2

21

Use Case Diagrams

Captures Business requirements

Illustrates interaction between a system and its environment

Includes end user

Any external system that interacts with its information system

Documents and clarifies requirements of system being modeled

Page 22: 1 Unified Modeling Language, Version 2.0 Chapter 2

22

Extension Mechanisms

StereotypesGives ability to incrementally extend UML

Tagged ValuesAdd new properties to base elements

ConstraintsPlace restrictions on use of model elements

ProfilesGroup model elements into a package

Page 23: 1 Unified Modeling Language, Version 2.0 Chapter 2

23

Object Oriented Systems Analysis and Design

Use-case driven

Architecture CentricFunctional View – external behavior

Static View – internal structure

Dynamic View – internal behavior

Iterative and Incremental

The Unified Process

Page 24: 1 Unified Modeling Language, Version 2.0 Chapter 2

24

Engineering Workflows

Page 25: 1 Unified Modeling Language, Version 2.0 Chapter 2

25

Supporting Workflows

Page 26: 1 Unified Modeling Language, Version 2.0 Chapter 2

26

A Minimalist Approach

Benefits of Object-Oriented Systems Analysis and Design

Extensions of the Unified Process

The Minimalist Object-Oriented Systems Analysis and Design Approach

Page 27: 1 Unified Modeling Language, Version 2.0 Chapter 2

27

Benefits of the Object Approach

Page 28: 1 Unified Modeling Language, Version 2.0 Chapter 2

28

MOOSAD Approach

Page 29: 1 Unified Modeling Language, Version 2.0 Chapter 2

29

Basic Characteristics of Object Oriented System

Identifying business valueAnalyze feasibilityDevelop workplanStaff the projectControl and direct projectRequirements determinationFunctional modelingStructural modelingBehavioral modelingMoving on to design

Page 30: 1 Unified Modeling Language, Version 2.0 Chapter 2

30

UML Summary

Class and method design

Data management layer design

Human computer interaction layer design

Physical architecture layer design

Construction

Installation

Operations and support

Page 31: 1 Unified Modeling Language, Version 2.0 Chapter 2

31

Summary

Basic characteristics of an object oriented systemUnified modeling systemObject oriented Systems Analysis and DesignMinimalist approach to Object oriented systems analysis and design with UML