1 unified modeling language, version 2.0 chapter 2
TRANSCRIPT
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.
3
Basic Characteristics of Object Oriented Systems
Classes and Objects
Methods and Messages
Encapsulation and Information Hiding
Inheritance
Polymorphism and Dynamic Binding
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
5
Classes and Objects
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
7
Messages and Methods
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
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
10
Class Hierarchy
11
Inheritance
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
13
Polymorphism & Encapsulation
14
The Unified Modeling Language, Version 2.0
Structure Diagrams
Behavior Diagrams
Extension Mechanisms
DevelopersGrady Booch
Ivar Jacobson
James Rumbaugh
15
Structure Diagram
Structure Diagrams includeClass
Object
Package
Deployment
Component
Composite structure diagrams
16
UML 2.0 Diagram Summary
17
Structure Diagrams
Classrelationship between classes
ObjectRelationships between objects
PackageGroup UML elements together to form higher level constructs
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
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
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
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
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
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
24
Engineering Workflows
25
Supporting Workflows
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
27
Benefits of the Object Approach
28
MOOSAD Approach
29
Basic Characteristics of Object Oriented System
Identifying business valueAnalyze feasibilityDevelop workplanStaff the projectControl and direct projectRequirements determinationFunctional modelingStructural modelingBehavioral modelingMoving on to design
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
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