OOAD
OOAD
• OOA involves understanding the problem domain and identifying the key objects
and their interactions.
• It focuses on 'what' the system must do rather than 'how' it will do it.
• This phase includes identifying classes, objects, attributes, behaviors, and the
relationships among them.
What is Object-Oriented Design
(OOD)?
• OOD involves defining the software architecture and design based on the analysis
model.
• It focuses on 'how' the system will achieve the requirements specified in the
analysis phase.
• It includes designing class hierarchies, methods, messages, and data structures.
Object-Oriented Design
In the object-oriented software development process, the analysis model, which is
initially formed through object-oriented analysis (OOA), undergoes a transformation
during object-oriented design (OOD) i.e implementation of the conceptual model
developed in OOA. This evolution is crucial because it shapes the analysis model into a
detailed design model.
Furthermore, as part of the object-oriented design process, it is essential to define
specific aspects:
•Data Organization of Attributes:
• OOD involves specifying how data attributes are organized within the objects.
• This includes determining the types of data each object will hold and how they
relate to one another.
•Procedural Description of Operations:
• OOD requires a procedural description for each operation that an object can
perform.
• This involves detailing the steps or processes involved in carrying out specific
tasks.
Design pyramid for object-oriented systems. It has the
following four layers.
1.The Subsystem Layer: It represents the subsystem that
enables software to achieve user requirements and implement
technical frameworks that meet user needs.
2.The Class and Object Layer: It represents the class
hierarchies that enable the system to develop using
generalization and specialization. This layer also represents each
object.
3.The Message Layer: This layer deals with how objects interact
with each other. It includes messages sent between objects,
method calls, and the flow of control within the system.
4.The Responsibilities Layer: It focuses on the responsibilities
of individual objects. This includes defining the behavior of each
class, specifying what each object is responsible for, and how it
responds to messages.
Object-Oriented System
Characteristics