Difference between OOA OOD and OOP – Explain the difference between Object oriented analysis, Object oriented design and Object oriented Programming.
Object-oriented analysis (OOA)
Object-oriented analysis (OOA) is the initial process of examining a problem, system, or task with the aim of developing a functional software application. During this stage, the focus is on identifying the objects involved and the interactions between them. The main objective is to determine what needs to be accomplished.
Object-oriented design (OOD)
Object-oriented design (OOD) is the subsequent process of translating the requirements obtained from analysis into an implementation specification. In this stage, the designer assigns names to the objects, defines their behaviors, and specifies the interactions among objects. The primary goal is to transform the “what” from the analysis stage into the “how.”
The outcome of the design stage is an implementation specification, typically represented by a set of classes and interfaces. This design can be implemented in any object-oriented programming language, providing a clear blueprint for the development process.
Object-oriented programming (OOP)
Object-oriented programming (OOP) is the final step, where the design is transformed into a functioning program that fulfills the original requests of the product owner. During this stage, the code is written to realize the specified behaviors and interactions among the objects.
Summery:
lObject-oriented analysis, design and programming are related but distinct.
lOOA is concerned with developing an object model of the application domain.
lOOD is concerned with developing an object-oriented system model to implement requirements.
lOOP is concerned with realising an OOD using an OO programming language such as Java or C++.