INTRODUCTION TO OBJECT ORIENTED ANALYSIS AND DESIGN
• Analysis: “build the right thing”
– Analysis focuses on user requirements (functional or non-functional)
– In other words, we want to decide exactly what system the customer wants to
have
• Design: “build the thing right”
– Design focuses on how to provide the required functionality
– In other words, we want to decide how to structure the software that provides the
(functional and non-functional) requirements determined during analysis
Object-Oriented Analysis and Design (OOAD)
It’s a structured method for analyzing, designing a system by applying the object-orientated
concepts, and developing a set of graphical system models during the development life cycle of
the software.
Object-Oriented Analysis
Object–Oriented Analysis (OOA) is the procedure of identifying software engineering
requirements and developing software specifications in terms of a software system’s object
model, which comprises of interacting objects.
The main difference between object-oriented analysis and other forms of analysis is that in object-
oriented approach, requirements are organized around objects, which integrate both data and
functions. They are modeled after real-world objects that the system interacts with. In traditional
analysis methodologies, the two aspects - functions and data - are considered separately.
“Object-oriented analysis is a method of analysis that examines requirements from the
perspective of the classes and objects found in the vocabulary of the problem domain”.
The primary tasks in object-oriented analysis (OOA) are −
• Identifying objects
• Organizing the objects by creating object model diagram
, • Defining the internals of the objects, or object attributes
• Defining the behavior of the objects, i.e., object actions
• Describing how the objects interact
The common models used in OOA are use cases and object models.
Advantages/Disadvantages of Object Oriented Analysis
Advantages Disadvantages
Focuses on data rather than the procedures as in Functionality is restricted within objects. This
Structured Analysis. may pose a problem for systems which are
intrinsically procedural or computational in
nature.
The principles of encapsulation and data hiding It cannot identify which objects would generate
help the developer to develop systems that an optimal system design.
cannot be tampered by other parts of the
system.
The principles of encapsulation and data hiding The object-oriented models do not easily show
help the developer to develop systems that the communications between the objects in the
cannot be tampered by other parts of the system.
system.
It allows effective management of software All the interfaces between the objects cannot be
complexity by the virtue of modularity. represented in a single diagram.
It can be upgraded from small to large systems
at a greater ease than in systems following
structured analysis.
• Analysis: “build the right thing”
– Analysis focuses on user requirements (functional or non-functional)
– In other words, we want to decide exactly what system the customer wants to
have
• Design: “build the thing right”
– Design focuses on how to provide the required functionality
– In other words, we want to decide how to structure the software that provides the
(functional and non-functional) requirements determined during analysis
Object-Oriented Analysis and Design (OOAD)
It’s a structured method for analyzing, designing a system by applying the object-orientated
concepts, and developing a set of graphical system models during the development life cycle of
the software.
Object-Oriented Analysis
Object–Oriented Analysis (OOA) is the procedure of identifying software engineering
requirements and developing software specifications in terms of a software system’s object
model, which comprises of interacting objects.
The main difference between object-oriented analysis and other forms of analysis is that in object-
oriented approach, requirements are organized around objects, which integrate both data and
functions. They are modeled after real-world objects that the system interacts with. In traditional
analysis methodologies, the two aspects - functions and data - are considered separately.
“Object-oriented analysis is a method of analysis that examines requirements from the
perspective of the classes and objects found in the vocabulary of the problem domain”.
The primary tasks in object-oriented analysis (OOA) are −
• Identifying objects
• Organizing the objects by creating object model diagram
, • Defining the internals of the objects, or object attributes
• Defining the behavior of the objects, i.e., object actions
• Describing how the objects interact
The common models used in OOA are use cases and object models.
Advantages/Disadvantages of Object Oriented Analysis
Advantages Disadvantages
Focuses on data rather than the procedures as in Functionality is restricted within objects. This
Structured Analysis. may pose a problem for systems which are
intrinsically procedural or computational in
nature.
The principles of encapsulation and data hiding It cannot identify which objects would generate
help the developer to develop systems that an optimal system design.
cannot be tampered by other parts of the
system.
The principles of encapsulation and data hiding The object-oriented models do not easily show
help the developer to develop systems that the communications between the objects in the
cannot be tampered by other parts of the system.
system.
It allows effective management of software All the interfaces between the objects cannot be
complexity by the virtue of modularity. represented in a single diagram.
It can be upgraded from small to large systems
at a greater ease than in systems following
structured analysis.