1 (A) What Do You Understand by The Concept of Object Oriented Analysis and Design (OOAD) ?use Relevant Examples

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

1(a) What do you understand by the concept of Object Oriented Analysis and

Design (OOAD)?Use relevant examples


Object-oriented analysis and design (OOAD) is a software engineering approach that
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 analysis (OOA) applies object-modelling techniques to analyze the


functional requirements for a system. Object-oriented design (OOD) elaborates the
analysis models to produce implementation specifications. OOA focuses on what the
system does, OOD on how the system does it

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.

In addition, OOD must specify some data organization of attributes and a


procedural description of each operation. Shows a design pyramid for object-
oriented systems. It is having 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 : It represents the design details that enable each object
to communicate with its partners. It establishes internal and external
interfaces for the system.
4. The Responsibilities Layer : It represents the data structure and algorithmic
design for all the attributes and operations for each object.
The Object-Oriented design pyramid specifically emphasizes specific product or
system design. Note, however, that another design layer exists, which forms the
base on which the pyramid rests. It focuses on the core layer the design of the
domain object, which plays an important role in building the infrastructure for
the Object-Oriented system by providing support for human/computer interface
activities, task management.
Some of the terminologies that are often encountered while studying Object-
Oriented Concepts include:
1. Attributes: a collection of data values that describe a class.
2. Class: encapsulates the data and procedural abstractions required to describe
the content and behaviour of some real world entity. In other words, A class is a
generalized description that describes the collection of similar objects.
3. Objects : instances of a specific class. Objects inherit a class’s attributes and
operations.
4. Operations: also called methods and services, provide a representation of one
of the behaviour of class.
5. Subclass: a specialization of the super class. A subclass can inherit both
attributes and operations from a super class.
6. Superclass: also called a base class, is a generalization of a set of classes that
are related to it.

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 during object-oriented design (OOD). Analysis is
done before the Design[citation needed].

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.

The result of object-oriented analysis is a description of what the system is


functionally required to do, in the form of a conceptual model. That will typically be
presented as a set of use cases, one or more UML class diagrams, and a number of
interaction diagrams. It may also include some kind of user interface mock-up. The
purpose of object oriented analysis is to develop a model that describes computer
software as it works to satisfy a set of customer defined requirements.

You might also like