• An Introduction To Object Modeling
• System Concept for Object Modeling
• The Overall View Components of UML Diagram
Chapter 2
 After studying this chapter you should be
able to:
 Define an object.
 Understand the terms class, attribute, and
operations.
 Explain generalization, polymorphism, and
inheritance.
 Define association.
 Describe modeling and the Unified Modeling
Language.
2-2
Chapter 2
 A standard notation for representing
object-oriented systems
 Boxes represent classes, components,
packages, objects
 Containing attributes and operations
 Provide interfaces to external entities
 Lines represent generalization and other
relationships
2-3
Chapter 2
Sample
UML
Diagram
Introduction To Object-Orientation 2-4
Chapter 2
2-5
Introduction To Object-Orientation
 During the 90s there were several disparate modelling
methods for object oriented programming.
 The used the same concepts with different notations.
 This produced lots of confusion among designers and
programmers.
 “The war of the methods”
 In 1994, Booch, Rumbaugh (OMT) y Jacobson (Objectory)
decided to unify their methods and created:
Unified Modeling Language (UML)
 This was a standardisation method promoted by OMG
Chapter 2
2-6
Booch Coad/Yourdon
OMT Champeaux
Jacobson Martin/Odell
Shlaer-Mellor OOram
Wirfs-Broks BON
Fusion Open
Catalysis
And many many more!
Chapter 2
2-7
Jacobson’s View of System Development
New and changed
requirements
System
development
Changed system
Chapter 2
Introduction To Object-Orientation 2-8
Rumbaugh’s View of System Analysis
Problem statement
User interviews
Domain knowledge
Real-world experience
Object model
Dynamic model
Functional model
Generate requests
Build models
Chapter 2
Introduction To Object-Orientation 2-9
Booch’s View of System Design
:OrderTable
:Order
:OrderFlow
aCustomer
aClient
1: setCustomer()
2: customerID()
3:<SQL statement>
Id
succeeded
Update OrderTable
Set customer=customer
where (ordertable.orderid=orderid)
Chapter 2
Introduction To Object-Orientation 2-10
message numbering
UML
Rumbaugh
Jacobson
Meyer
Harel
Wirfs-Brock
Fusion
Embly
Gamma et. al.
Shlaer-Mellor
Odell
Booch
Pre- and Post-conditions
State Charts
Responsabilities
Operation descriptions,
Singleton classes
Frameworks, patterns,
notes
Object life cycles
Chapter 2
Introduction To Object-Orientation 2-11
 Has all the strong points of each method
 Promotes new ways of improving
designs/analysis
 Promotes stability in the software industry
 Simplifies users life!
Chapter 2
Introduction To Object-Orientation 2-12
Require
ments
Object
Oriented
Software
Product
UML
Chapter 2
Introduction To Object-Orientation 2-13
 UML is a notation, not a design process
 Various design processes are being design with UML in mind.
 E.g. Rational created RUP, which is a“unified process”.
 UML could be used for systems which are not necessarily
software based.
UML is a language to visualize, specify, build
and document the artefacts (models) of a
system which involves a large number (or
size) of object oriented software
components.
Chapter 2
Introduction To Object-Orientation 2-14
 Allows to:
 Specify all the analysis, design and implementation decisions.
 Build models which are precise, unambiguous and complete
 Documents all the development steps (e.g. requirements,
architecture, tests, versioning, etc..)
Chapter 2
Introduction To Object-Orientation 2-15
 Provide users a expressive, visual language to enable sharing of
meaningful models.
 Enables developers to compare models before implementation
phase.
 Independent of programming language and development process.
 Encourage growth of Object Oriented Tools market.
Chapter 2
Introduction To Object-Orientation 2-16
Design
Process
Implementation
Deployment
Use Case
UML 5 Views of a Software System
The problem
domain and
elements of
solutions
Scenarios executed
by humans: what
the system will do Source code,
executables,
databases, etc
Distribution
of the
various
artifacts
generated
Timing, control
flow, performance,
etc
Chapter 2
Introduction To Object-Orientation 2-17
 UML is independent of the implementation language.
 UML could be implemented in various languages
 We will focus on UML tied to java
Chapter 2
Introduction To Object-Orientation 2-18
 UML defines several types of diagrams:
 Use Case
 Classes
 Packages
 Objects
 Interaction
 Sequence
 Collaboration
 States
 Activities
 Components
 Deployment
UML also
provides
mechanisms to
extend itself!
Chapter 2
Introduction To Object-Orientation 2-19
Use Case diagrams describe what a system does.
HEASSISTANT simply had 1 actor, but generally, we have
multiple actors.
Chapter 2
Introduction To Object-Orientation 2-20
Note advanced additional features such as abstract classes,
generalization (inheritance), aggregation (orderdetails make
up order)
Chapter 2
Introduction To Object-Orientation 2-21
Chapter 2
Introduction To Object-Orientation 2-22
• Note the use of sequence numbers
• Top level is assigned 1.1 –
additional dots per level away from
the user interface.
Chapter 2
Introduction To Object-Orientation 2-23
• Show the state of a particular object throughout the system lifetime.
• Not necessary for all objects – just the critical ones.
• Super states – can be used to nest states to make diagram easier to read.
Lifetime of a login
class.
Chapter 2
Introduction To Object-Orientation 2-24
A
C
T
I
V
I
T
Y
D
I
A
G
R
A
M
S
Chapter 2
Introduction To Object-Orientation 2-25
 UML 1.0 was created through a collaboration of various
organizations: Microsoft, IBM, HP, etc.
 Today, UML is on Version 2.0.
 It is managed by the Object Management Group – not for profit
consortium. UML specification is available for download at
http://www.uml.org/
 Tools that conform the latest 2.0 specification – Rational Software
Architect, Sparx System Architect, StarUML, etc.
Chapter 2
 An entity that encapsulates data and
behavior
 - Objects are categorized into classes
 - Each individual object is an instance of a
 class
2-26
Chapter 2
2-27
An object is:
“an abstraction of something in a problem
domain, reflecting the capabilities of the system
to
 keep information about it,
 interact with it,
 or both.”
Coad and Yourdon (1990)
Chapter 2
2-28
“Objects have state, behaviour and identity.”
Booch (1994)
 State: the condition of an object at any
moment, affecting how it can behave
 Behaviour: what an object can do, how it can
respond to events and stimuli
 Identity: each object is unique
Chapter 2
2-29
Object
A person. ‘Hussain Pervez.’ Speak, walk, read.
Studying, resting,
qualified.
A shirt.
My favourite button
white denim shirt.
Shrink, stain, rip. Pressed, dirty,
worn.
A sale. Sale no #0015, 18/05/05. Earn loyalty points. Invoiced, cancelled.
Identity Behaviour State
A bottle of
ketchup.
This bottle of ketchup. Spill in transit. Unsold, opened,
empty.
Chapter 2
 The characteristic of object-orientation in
which data and behavior are bundled into a
class and hidden from the outside world
 Access to the data and behavior is provided
and controlled through an object’s interface
2-30
Chapter 2
2-31
 Several objects may collaborate to fulfil each
system action
 “Record CD sale” could involve:
 A CD stock item object
 A sales transaction object
 A sales assistant object
 These objects communicate by sending each
other messages
Chapter 2
2-32
Message from another object
requests a service.
Operation called only via valid
operation signature.
Data accessed only by object’s
own operations.
An object’s data is
hidden
(encapsulated).
‘Layers of an onion’
model of an object:
An outer layer of
operation signatures…
…gives access to middle
layer of operations…
…which can access
inner core of data
Chapter 2
• A category of objects that share the same
attributes, operations, relationships, and
semantics
• All objects are instances of classes
2-33
Chapter 2
2-34
 All objects are instances of some class
 Class:
a description of a set of objects with similar
 features (attributes, operations, links);
 semantics;
 constraints (e.g. when and whether an object can be
instantiated).
OMG (2004)
Chapter 2
2-35
 An object is an instance of some class
 So, instance = object
 but also carries connotations of the class to which
the object belongs
 Instances of a class are similar in their:
 Structure: what it knows, what information it holds,
what links it has to other objects
 Behaviour: what an object can do
Chapter 2
Name
Attributes
Operations
Introduction To Object-Orientation 2-36
Chapter 2
Introduction To Object-Orientation 2-37
Objects Class
Professor Smith
Professor Jones
Professor Mellon
Professor
 A class is an abstract definition of an object
 It defines the structure and behavior of each object in the
class
 It serves as a template for creating objects
 Objects are grouped into classes
Chapter 2
• Attribute- a named property of a class that
describes a range of values that instances of
the attribute might hold
• Attributes are the way classes encapsulate
data
• An attribute is a data value or state that
describes an object and helps you to tell one
object from another of the same class.
2-38
Chapter 2
Attributes
are
properties
containing
values
Minus
sign
indicates
these are
private
(hidden)
Introduction To Object-Orientation 2-39
Chapter 2
 A behavior of an object
 Implemented in classes are methods
 Methods are identified and invoked by their
signatures, including name, parameters, and
return type
2-40
Chapter 2
Signature identifies
and invokes the
behavior
Method implements the behavior
Introduction To Object-Orientation 2-41
Chapter 2
Method
signatures
Plus sign
indicates
these are
public
(accessible)
Introduction To Object-Orientation 2-42
Chapter 2
 A relationship between a more general (or
parent) class and a more specific (or child)
class
 The more specific class has additional
attributes and operations
2-43
Chapter 2
2-44
 Classification is hierarchic in nature
 For example, a person may be an employee, a
customer, a supplier of a service
 An employee may be paid monthly, weekly or
hourly
 An hourly paid employee may be a driver, a
cleaner, a sales assistant
Chapter 2
2-45
Person
Employee Customer Supplier
monthly
paid
weekly paid hourly paid
Driver Cleaner Sales
assistant
More general
(superclasses)
More specialized
(subclasses)
Chapter 2 2-46
 More general bits of description are abstracted
out from specialized classes:
Person
name
date of birth
gender
title
HourlyPaidDriver
startDate
standardRate
overtimeRate
licenceType
General (superclass) Specialized (subclass)
Chapter 2
 The mechanism by which the more specific
class in a generalization relationship includes
the attributes and operations of the more
general class
2-47
Chapter 2
Generalization
represented by
arrows from
subclass to
superclass
Subclasses
inherit all
attributes and
operations of
superclasses
Introduction To Object-Orientation 2-48
Chapter 2
 The ability for different classes of objects to
respond to identical messages in different
ways
 Polymorphism = “having many forms”
 Different behaviors for the same message
2-49
Chapter 2
2-50
 Polymorphism allows one message to be sent to
objects of different classes
 Sending object need not know what kind of
object will receive the message
 Each receiving object knows how to respond
appropriately
Chapter 2
Here, each
type of
vehicle has
its own
version of
calcPrice()
Introduction To Object-Orientation 2-51
Chapter 2
Introduction To Object-Orientation 2-52
52
• Polymorphism (“many forms”)
4The ability to hide different implementations
behind a common interface.
4The ability for two or more objects to respond to
the same request, each in its own way.
 H O = water, ice, steam (liquid, solid, vapor)
 Eating
2
versus
Door
#1
Door
#2
Door
#3
Door
#1
#2
#3
Chapter 2
Introduction To Object-Orientation 2-53
• Polymorphism 4Two examples
PRINT
0
5000
10000
15000
20000
25000
30000
North South East West
B L UE S K Y
A IRL INES
Sales Report
January
B L UE S K Y
A IRL INES
Sales Report
February
PRINT
PRINT
TEXT object
GRAPH object
IMAGE object
Object #1 PO object
Account object
Department object
Object #2
Object #3
Add
Add
Add
= add a line item to the PO
= increase $ Amount Balance
= hire a new employee
Chapter 2
A replaceable part of a system
providing a clearly defined
function through a set of
interfaces
Group of classes working
together toward a common end;
a subsystem
2-54
Chapter 2
 A component is a collection of related classes
that together provide a larger set of services.
 Components in your system might include
applications, libraries, ActiveX controls,
JavaBeans, daemons, and services.
2-55
Chapter 2
 The mechanism by which users of a
component invoke its behaviors and
manipulate its properties
 The interface is implemented by method
signatures
 An interface is a definition of a set of
services provided by a component or by a
class.
2-56
Chapter 2
Interfaces are
represented as
small rectangles
Introduction To Object-Orientation 2-57
Chapter 2
A general-purpose mechanism
for organizing elements into
groups
Group of classes sharing similar
characteristics or purposes
2-58
Chapter 2
Introduction To Object-Orientation 2-59
Chapter 2
 A relationship or link between instances
of one, two, or more classes
 Three types:
 Simple associations: no ownership
 Aggregations: part-whole relationships where
the part can exist independently of the whole
 Compositions: part-whole relationships where
the part and the whole are fully dependent on
each other
2-60
Chapter 2
This is a binary association,
showing roles and multiplicities
Introduction To Object-Orientation 2-61
Chapter 2
 After studying this chapter we learned to:
 Define an object.
 Understand the terms class, attribute, and
operations.
 Explain generalization, polymorphism, and
inheritance.
 Define association.
 Describe modeling and the Unified Modeling
Language.
2-62

ch02-Introduction to Object-Orientation.pdf

  • 1.
    • An IntroductionTo Object Modeling • System Concept for Object Modeling • The Overall View Components of UML Diagram
  • 2.
    Chapter 2  Afterstudying this chapter you should be able to:  Define an object.  Understand the terms class, attribute, and operations.  Explain generalization, polymorphism, and inheritance.  Define association.  Describe modeling and the Unified Modeling Language. 2-2
  • 3.
    Chapter 2  Astandard notation for representing object-oriented systems  Boxes represent classes, components, packages, objects  Containing attributes and operations  Provide interfaces to external entities  Lines represent generalization and other relationships 2-3
  • 4.
  • 5.
    Chapter 2 2-5 Introduction ToObject-Orientation  During the 90s there were several disparate modelling methods for object oriented programming.  The used the same concepts with different notations.  This produced lots of confusion among designers and programmers.  “The war of the methods”  In 1994, Booch, Rumbaugh (OMT) y Jacobson (Objectory) decided to unify their methods and created: Unified Modeling Language (UML)  This was a standardisation method promoted by OMG
  • 6.
    Chapter 2 2-6 Booch Coad/Yourdon OMTChampeaux Jacobson Martin/Odell Shlaer-Mellor OOram Wirfs-Broks BON Fusion Open Catalysis And many many more!
  • 7.
    Chapter 2 2-7 Jacobson’s Viewof System Development New and changed requirements System development Changed system
  • 8.
    Chapter 2 Introduction ToObject-Orientation 2-8 Rumbaugh’s View of System Analysis Problem statement User interviews Domain knowledge Real-world experience Object model Dynamic model Functional model Generate requests Build models
  • 9.
    Chapter 2 Introduction ToObject-Orientation 2-9 Booch’s View of System Design :OrderTable :Order :OrderFlow aCustomer aClient 1: setCustomer() 2: customerID() 3:<SQL statement> Id succeeded Update OrderTable Set customer=customer where (ordertable.orderid=orderid)
  • 10.
    Chapter 2 Introduction ToObject-Orientation 2-10 message numbering UML Rumbaugh Jacobson Meyer Harel Wirfs-Brock Fusion Embly Gamma et. al. Shlaer-Mellor Odell Booch Pre- and Post-conditions State Charts Responsabilities Operation descriptions, Singleton classes Frameworks, patterns, notes Object life cycles
  • 11.
    Chapter 2 Introduction ToObject-Orientation 2-11  Has all the strong points of each method  Promotes new ways of improving designs/analysis  Promotes stability in the software industry  Simplifies users life!
  • 12.
    Chapter 2 Introduction ToObject-Orientation 2-12 Require ments Object Oriented Software Product UML
  • 13.
    Chapter 2 Introduction ToObject-Orientation 2-13  UML is a notation, not a design process  Various design processes are being design with UML in mind.  E.g. Rational created RUP, which is a“unified process”.  UML could be used for systems which are not necessarily software based. UML is a language to visualize, specify, build and document the artefacts (models) of a system which involves a large number (or size) of object oriented software components.
  • 14.
    Chapter 2 Introduction ToObject-Orientation 2-14  Allows to:  Specify all the analysis, design and implementation decisions.  Build models which are precise, unambiguous and complete  Documents all the development steps (e.g. requirements, architecture, tests, versioning, etc..)
  • 15.
    Chapter 2 Introduction ToObject-Orientation 2-15  Provide users a expressive, visual language to enable sharing of meaningful models.  Enables developers to compare models before implementation phase.  Independent of programming language and development process.  Encourage growth of Object Oriented Tools market.
  • 16.
    Chapter 2 Introduction ToObject-Orientation 2-16 Design Process Implementation Deployment Use Case UML 5 Views of a Software System The problem domain and elements of solutions Scenarios executed by humans: what the system will do Source code, executables, databases, etc Distribution of the various artifacts generated Timing, control flow, performance, etc
  • 17.
    Chapter 2 Introduction ToObject-Orientation 2-17  UML is independent of the implementation language.  UML could be implemented in various languages  We will focus on UML tied to java
  • 18.
    Chapter 2 Introduction ToObject-Orientation 2-18  UML defines several types of diagrams:  Use Case  Classes  Packages  Objects  Interaction  Sequence  Collaboration  States  Activities  Components  Deployment UML also provides mechanisms to extend itself!
  • 19.
    Chapter 2 Introduction ToObject-Orientation 2-19 Use Case diagrams describe what a system does. HEASSISTANT simply had 1 actor, but generally, we have multiple actors.
  • 20.
    Chapter 2 Introduction ToObject-Orientation 2-20 Note advanced additional features such as abstract classes, generalization (inheritance), aggregation (orderdetails make up order)
  • 21.
    Chapter 2 Introduction ToObject-Orientation 2-21
  • 22.
    Chapter 2 Introduction ToObject-Orientation 2-22 • Note the use of sequence numbers • Top level is assigned 1.1 – additional dots per level away from the user interface.
  • 23.
    Chapter 2 Introduction ToObject-Orientation 2-23 • Show the state of a particular object throughout the system lifetime. • Not necessary for all objects – just the critical ones. • Super states – can be used to nest states to make diagram easier to read. Lifetime of a login class.
  • 24.
    Chapter 2 Introduction ToObject-Orientation 2-24 A C T I V I T Y D I A G R A M S
  • 25.
    Chapter 2 Introduction ToObject-Orientation 2-25  UML 1.0 was created through a collaboration of various organizations: Microsoft, IBM, HP, etc.  Today, UML is on Version 2.0.  It is managed by the Object Management Group – not for profit consortium. UML specification is available for download at http://www.uml.org/  Tools that conform the latest 2.0 specification – Rational Software Architect, Sparx System Architect, StarUML, etc.
  • 26.
    Chapter 2  Anentity that encapsulates data and behavior  - Objects are categorized into classes  - Each individual object is an instance of a  class 2-26
  • 27.
    Chapter 2 2-27 An objectis: “an abstraction of something in a problem domain, reflecting the capabilities of the system to  keep information about it,  interact with it,  or both.” Coad and Yourdon (1990)
  • 28.
    Chapter 2 2-28 “Objects havestate, behaviour and identity.” Booch (1994)  State: the condition of an object at any moment, affecting how it can behave  Behaviour: what an object can do, how it can respond to events and stimuli  Identity: each object is unique
  • 29.
    Chapter 2 2-29 Object A person.‘Hussain Pervez.’ Speak, walk, read. Studying, resting, qualified. A shirt. My favourite button white denim shirt. Shrink, stain, rip. Pressed, dirty, worn. A sale. Sale no #0015, 18/05/05. Earn loyalty points. Invoiced, cancelled. Identity Behaviour State A bottle of ketchup. This bottle of ketchup. Spill in transit. Unsold, opened, empty.
  • 30.
    Chapter 2  Thecharacteristic of object-orientation in which data and behavior are bundled into a class and hidden from the outside world  Access to the data and behavior is provided and controlled through an object’s interface 2-30
  • 31.
    Chapter 2 2-31  Severalobjects may collaborate to fulfil each system action  “Record CD sale” could involve:  A CD stock item object  A sales transaction object  A sales assistant object  These objects communicate by sending each other messages
  • 32.
    Chapter 2 2-32 Message fromanother object requests a service. Operation called only via valid operation signature. Data accessed only by object’s own operations. An object’s data is hidden (encapsulated). ‘Layers of an onion’ model of an object: An outer layer of operation signatures… …gives access to middle layer of operations… …which can access inner core of data
  • 33.
    Chapter 2 • Acategory of objects that share the same attributes, operations, relationships, and semantics • All objects are instances of classes 2-33
  • 34.
    Chapter 2 2-34  Allobjects are instances of some class  Class: a description of a set of objects with similar  features (attributes, operations, links);  semantics;  constraints (e.g. when and whether an object can be instantiated). OMG (2004)
  • 35.
    Chapter 2 2-35  Anobject is an instance of some class  So, instance = object  but also carries connotations of the class to which the object belongs  Instances of a class are similar in their:  Structure: what it knows, what information it holds, what links it has to other objects  Behaviour: what an object can do
  • 36.
  • 37.
    Chapter 2 Introduction ToObject-Orientation 2-37 Objects Class Professor Smith Professor Jones Professor Mellon Professor  A class is an abstract definition of an object  It defines the structure and behavior of each object in the class  It serves as a template for creating objects  Objects are grouped into classes
  • 38.
    Chapter 2 • Attribute-a named property of a class that describes a range of values that instances of the attribute might hold • Attributes are the way classes encapsulate data • An attribute is a data value or state that describes an object and helps you to tell one object from another of the same class. 2-38
  • 39.
  • 40.
    Chapter 2  Abehavior of an object  Implemented in classes are methods  Methods are identified and invoked by their signatures, including name, parameters, and return type 2-40
  • 41.
    Chapter 2 Signature identifies andinvokes the behavior Method implements the behavior Introduction To Object-Orientation 2-41
  • 42.
    Chapter 2 Method signatures Plus sign indicates theseare public (accessible) Introduction To Object-Orientation 2-42
  • 43.
    Chapter 2  Arelationship between a more general (or parent) class and a more specific (or child) class  The more specific class has additional attributes and operations 2-43
  • 44.
    Chapter 2 2-44  Classificationis hierarchic in nature  For example, a person may be an employee, a customer, a supplier of a service  An employee may be paid monthly, weekly or hourly  An hourly paid employee may be a driver, a cleaner, a sales assistant
  • 45.
    Chapter 2 2-45 Person Employee CustomerSupplier monthly paid weekly paid hourly paid Driver Cleaner Sales assistant More general (superclasses) More specialized (subclasses)
  • 46.
    Chapter 2 2-46 More general bits of description are abstracted out from specialized classes: Person name date of birth gender title HourlyPaidDriver startDate standardRate overtimeRate licenceType General (superclass) Specialized (subclass)
  • 47.
    Chapter 2  Themechanism by which the more specific class in a generalization relationship includes the attributes and operations of the more general class 2-47
  • 48.
    Chapter 2 Generalization represented by arrowsfrom subclass to superclass Subclasses inherit all attributes and operations of superclasses Introduction To Object-Orientation 2-48
  • 49.
    Chapter 2  Theability for different classes of objects to respond to identical messages in different ways  Polymorphism = “having many forms”  Different behaviors for the same message 2-49
  • 50.
    Chapter 2 2-50  Polymorphismallows one message to be sent to objects of different classes  Sending object need not know what kind of object will receive the message  Each receiving object knows how to respond appropriately
  • 51.
    Chapter 2 Here, each typeof vehicle has its own version of calcPrice() Introduction To Object-Orientation 2-51
  • 52.
    Chapter 2 Introduction ToObject-Orientation 2-52 52 • Polymorphism (“many forms”) 4The ability to hide different implementations behind a common interface. 4The ability for two or more objects to respond to the same request, each in its own way.  H O = water, ice, steam (liquid, solid, vapor)  Eating 2 versus Door #1 Door #2 Door #3 Door #1 #2 #3
  • 53.
    Chapter 2 Introduction ToObject-Orientation 2-53 • Polymorphism 4Two examples PRINT 0 5000 10000 15000 20000 25000 30000 North South East West B L UE S K Y A IRL INES Sales Report January B L UE S K Y A IRL INES Sales Report February PRINT PRINT TEXT object GRAPH object IMAGE object Object #1 PO object Account object Department object Object #2 Object #3 Add Add Add = add a line item to the PO = increase $ Amount Balance = hire a new employee
  • 54.
    Chapter 2 A replaceablepart of a system providing a clearly defined function through a set of interfaces Group of classes working together toward a common end; a subsystem 2-54
  • 55.
    Chapter 2  Acomponent is a collection of related classes that together provide a larger set of services.  Components in your system might include applications, libraries, ActiveX controls, JavaBeans, daemons, and services. 2-55
  • 56.
    Chapter 2  Themechanism by which users of a component invoke its behaviors and manipulate its properties  The interface is implemented by method signatures  An interface is a definition of a set of services provided by a component or by a class. 2-56
  • 57.
    Chapter 2 Interfaces are representedas small rectangles Introduction To Object-Orientation 2-57
  • 58.
    Chapter 2 A general-purposemechanism for organizing elements into groups Group of classes sharing similar characteristics or purposes 2-58
  • 59.
    Chapter 2 Introduction ToObject-Orientation 2-59
  • 60.
    Chapter 2  Arelationship or link between instances of one, two, or more classes  Three types:  Simple associations: no ownership  Aggregations: part-whole relationships where the part can exist independently of the whole  Compositions: part-whole relationships where the part and the whole are fully dependent on each other 2-60
  • 61.
    Chapter 2 This isa binary association, showing roles and multiplicities Introduction To Object-Orientation 2-61
  • 62.
    Chapter 2  Afterstudying this chapter we learned to:  Define an object.  Understand the terms class, attribute, and operations.  Explain generalization, polymorphism, and inheritance.  Define association.  Describe modeling and the Unified Modeling Language. 2-62