0% found this document useful (0 votes)
135 views24 pages

Chapter 1

The document discusses object-oriented system analysis and modeling. It covers the following key points in 3 sentences: The document discusses thinking in terms of objects by focusing on their services and responsibilities. It also covers object-oriented analysis, design, and implementation, explaining that analysis investigates the problem domain, design defines a conceptual solution, and implementation codes the design. The document also discusses object modeling, covering system analysis, design, object design, and final implementation as the modeling processes.

Uploaded by

Sadam Gebi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
135 views24 pages

Chapter 1

The document discusses object-oriented system analysis and modeling. It covers the following key points in 3 sentences: The document discusses thinking in terms of objects by focusing on their services and responsibilities. It also covers object-oriented analysis, design, and implementation, explaining that analysis investigates the problem domain, design defines a conceptual solution, and implementation codes the design. The document also discusses object modeling, covering system analysis, design, object design, and final implementation as the modeling processes.

Uploaded by

Sadam Gebi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 24

Object-Oriented System

Analysis and Modeling

Dr.Sudhir Kumar Mohapatra


www.sudhirmohapatra.in/ood/
[email protected]
+251-944740135
Thinking in Objects
• The Unified Modeling Language (UML) is a standard
diagramming notation; sometimes referred to as a blueprint.

• It is NOT OOA/OOD or a method

• Only a notation for capturing objects.

• Blueprints serve as a tool for thought and as a form of


communication with others.

2
Thinking in Objects
• But it is far more essential to ‘think’ in terms of objects as
providing ‘services’ and accommodating ‘responsibilities.’

• Discuss: What is meant by ‘services?’ How indicated?


– How might you think these ‘services’ impact the design of classes?
– How might a client access these services?

• Discuss: What is meant by ‘responsibilities?’


– Encapsulation of data and services?

3
Thinking in Terms of Objects
• Object-Oriented Analysis (Overview)

– An investigation of the problem (rather than how a solution is defined)

– During OO analysis, there is an emphasis on finding and describing the


objects (or concepts) in the problem domain.

– For example, concepts in a Library Information System include Book,


and Library.

4
Thinking in Terms of Objects
• Object-Oriented Design
– Emphasizes a conceptual solution that fulfills the requirements.

– Need to define software objects and how they collaborate to fulfill the
requirements.

– For example, in the Library Information System, a Book software object


may have a title attribute and a getChapter method.

• Designs are implemented in a programming language.


– In the example, we will have a Book class in Java.

5
Thinking in Terms of Objects
From Design to Implementation

Analysis
Design Construction
investigation
logical solution code
of the problem

Book public class Book {


Book public void print();
(concept) title private String title;
print() }

Domain concept Representation in Representation in an


analysis of concepts object-oriented
programming language.
6
Can you see the services / responsibilities in the Book class?
Thinking in Objects
• Then too, there are sets of proven design solutions to problems
that are considered ‘best practices.’
– Certain ‘groupings’ of classes with specific responsibilities / interfaces.
– These provide specific solutions to specific problems.
– Called Design Patterns

• We will discuss (much later) these patterns and how to apply


them to develop solutions to problems.

7
Object Oriented Modeling

OOM approach is a encouraging approach in which software


developers have to think in terms of the application domain
through most of the software engineering life cycle.

8
Object Oriented Modeling
In OOM the modeling passes through the following processes:

• System Analysis
• System Design
• Object Design, and
• Final Implementation

9
System Analysis

In this stage a statement of the problem is formulated and a model


is build by the analyst in encouraging real-world situation.

10
System Design

At this stage, the complete system architecture is designed. This is


the stage where the whole system is divided into subsystems,
based on both the system analysis model and the proposed
architecture of the system.

11
Object Design

At this stage, a design model is developed based on the analysis


model which is already developed in the earlier phase of
development.

12
Final Implementation

At this stage, the final implementation of classes and relationships


developed during object design takes place a particular
programming language, database, or hardware implementation
(if needed).

13
Object Oriented Modeling

These models are:

• Object model
• Dynamic model
• Functional model

14
Models
• Object models are used for describing the objects in the system
and their relationship among each other in the system.

• The dynamic model describes interaction among objects and


information flow in the system.

• The data transformations in the system are described by a


functional model.

15
Difference between OOD and Structured Development

Object Oriented Development Structured Development


The basic focus of object-oriented approach •In the structured approach, the main
is to identify objects from the application emphasis is on specifying and
domain, and then to associate procedures decomposing system functionality.
(methods) around these identified •Structured approach is seen as the most
objects. direct way of implementing a desired
goal.

16
Basic Philosophy of Object Orientation
Now, let us discuss about the basic characteristics around which
object oriented systems are developed.
• Abstraction
• Encapsulation
• Polymorphism
• Sharing of Structure and Behaviour
• Emphasis on Object Structure, not on Operation
Implementation

17
Characteristics of Object Oriented Modeling

Now will discuss these features, which include:

• Class and Objects


• Links and Association
• Generalization and Inheritance

18
Class & Object
A class is a collection of things, or concepts that have the same
characteristics. Each of these things, or concepts is called an
object.
The characteristics a classes

• Attributes
• Operations

19
Class & Object
The notation for a class is a box with three sections.

You can, also show a class without its attributes or its operations.

20
Class & Object
The naming convention for classes are as follow:

• Class names are simple nouns or noun phrases.

• Attribute names in a class are simple nouns or noun phrases.


The first word is not capitalized, but subsequent words may be
capital.

• Operation names are simple verbs. As with attributes, the first


word is not capitalized and subsequent words may be capital.

21
Class & Object
The notation for an object is the same in basic form as that for a
class. There are three differences between the notations, which
are:

• Within the top section of the class box, the name of the class to
which the object belongs appears after a colon. The object may
have a name, which appears before the colon, or it may be
anonymous, in which case nothing appears before the colon.
• The contents of the top compartment are underlined for an
object.
• Each attribute defined for the given class has a specific value
for each object that belongs to that class.

22
Class & Object

23
Thank You

Any Questions

24

You might also like