You are on page 1of 8

1

13
Object Versus Function-Oriented Analysis Design
13
+ Decomposition is the primary strategy to deal with the complexity of S/W project.
+ Functional decomposition is common in the structured analysis and design. System
can be functionally divided into sub-functions differentlyby different people.
+ Thats why it is more commonly called as Analysis & Design.
+ Thats why a functional hierarchy exists.
+ Object oriented decomposition has been mentioned in few (Larman) books but
Object identificationor classificationare most suitable terms used in the OOA.
+ Thats why Object Modeling is more commonly used term as objects are identified
(they are already there) and modeled in a language rather defined by the analyst.
+ Thats why decomposition hierarchy does not exist but a collaboration between
objects.
Catalog
Book Magazine
Librarian
Classification/Decomposition
by Objects/concepts
OO A&D
Lib System
Cataloging Acquisition Circulation
Decomposition by functions/processes
Structured A&D
Why Object-Oriented?
14
2
15
What kind of language can alleviate difficulties with
communication & complexity hopefully well?
Why Object-Oriented?......
E The "software crises" came about when people realized the major problems in
software development were caused by communication difficulties and the
management of complexity [Budd]
E The Whorfian Hypothesis:
Human beings are very much at the mercy of the particular language which has
become the medium of expression for their society the 'real world' is built
upon the language habits We cut nature up, organize it into concepts, and
ascribe significances as we do, largely because we are parties to an agreement to
organize it in this way and is codified in the patterns of our language.
Cp+
=E
15
16
Why Object-Oriented?
Consider Human Growth & Concept Formation
E Communication & complexity about the problem and the solution, all expressed in
terms of concepts in a language!
E But then, What is CONCEPT? [Martin & Odell]
Consider Human Growth & Concept Formation
stage concepts
infant the world is a buzzing confusion
very young
age
"blue" "sky (individual concepts)
"blue sky (more complex concept)
hypothesis: humans possess an innate capacity for perception
getting older -> increased meaning, precision, subtlety, ...
the sky is blue only on cloudless days; the sky is not really blue
it only looks blue from our planet Earth because of atmospheric effects
elaborate conceptual constructs
Concept formation: from chaos to order!
16
3
Object Oriented Analysis
Why Object-Oriented?
- concepts and objects
So, concepts are needed to bring order into apparent chaos !
But, What is CONCEPT? [Martin & Odell] [Novak, 1984, Cambridge University Press]
Does Hasham understand the concepts? Do you understand what Hasham understands?
Agree or Disagree?
Study of a first grade class
When given a list of concepts
(water, salt water, Oceans,
Penguins,...),
Hasham constructed a concept
diagram through which he understands
his world and communicates meaning
17
Search and describe (max 3
pages, font size 12) the problems
reported on slide# 7
~Assignment #1
18
4
19
Object Oriented Analysis
What kind of language can be used to create this concept
diagram, or Hashams mental image?
Why Object-Oriented?
for Conceptual Modeling Reasons
19
Water
Rivers Oceans
Fish
Penguins
Crocodiles
Fresh water
Salt water
have
have
have
live in
have
have
Can be
Can be
20
What is a model and why?
E A model is a simplification of reality.
e.g., a miniature bridge for a real bridge to be built
E A model is our simplification of our perception of reality
E A model is an abstraction of something for the purpose of
understanding, be it the problem or a solution.
To understand why a software system is needed, what it should
do, and how it should do it.
To communicate our understanding of why, what and how.
To detect commonalities and differences in your perception, my
perception, his perception, and her perception of reality.
To detect misunderstandings and miscommunications.
20
5
The Solution!
OBJECT ORIENTED MODELLING
21
22
Object-Oriented Modeling
E Attach the behavior and information that is
important to objects
E Associate relations between object to describe the
static and dynamic organisation and structure of
real situation
22
6
Object-Oriented Modeling
Tree
Next-To
House
Lives-in
Hassan
Drives
Car
23
OOAD
Fall 2009
WHAT IS OBJECT
ORIENTATION?
7
25
Object Oriented Analysis
What is an Object?
25
A structure that has identity and properties and behavior
It is an instance of a collective concept, i.e., a class.
E An "object" is anything to which a concept applies, in our awareness
E Things drawn from the problem domain or solution space.
e.g., a living person in the problem domain, a software component in the solution space.
26
Object Oriented Analysis
An Object
E Operations:
Work
Dance
Drive
Jump
E Attributes:
Height
Eye colour
Hair colour
Weight
26
8
27
Relationships
E Static:
relations existing over a long time
objects know about each other existence
E Dynamic:
relations which two objects communicate with each
other
object sending stimuli to other
stimuli - events, messages
27

You might also like