Object-Oriented Systems: Object-Oriented Analysis and Design (OOAD) Is A
Object-Oriented Systems: Object-Oriented Analysis and Design (OOAD) Is A
Object-Oriented Systems: Object-Oriented Analysis and Design (OOAD) Is A
models a system as a group of interacting objects. Each object represents some entity of
interest in the system being modeled, and is characterised by its class, its state (data
elements), and its behavior. Various models can be created to show the static structure,
dynamic behavior, and run-time deployment of these collaborating objects. There are a
number of different notations for representing these models, such as the Unified Modeling
Language (UML).
Object-oriented systems
An object-oriented system is composed of objects. The behavior of the system results from
the collaboration of those objects. Collaboration between objects involves them sending
messages to each other. Sending a message differs from calling a function in that when a
target object receives a message, it itself decides what function to carry out to service that
message. The same message may be implemented by many different functions, the one
selected depending on the state of the target object.
The implementation of "message sending" varies depending on the architecture of the system
being modeled, and the location of the objects being communicated with.
Object-oriented analysis
Object-oriented analysis (OOA) looks at the problem domain, with the aim of producing a
conceptual model of the information that exists in the area being analyzed. Analysis models
do not consider any implementation constraints that might exist, such as concurrency,
distribution, persistence, or how the system is to be built. Implementation constraints are
dealt with during object-oriented design (OOD). Analysis is done before the Design.
The sources for the analysis can be a written requirements statement, a formal vision
document, interviews with stakeholders or other interested parties. A system may be divided
into multiple domains, representing different business, technological, or other areas of
interest, each of which are analyzed separately.
Object-oriented design
Main article: Object oriented design
The concepts in the analysis model are mapped onto implementation classes and interfaces.
The result is a model of the solution domain, a detailed description of how the system is to be
built.