English 中文(简体)
OOAD - Object Oriented Analysis
  • 时间:2024-12-22

OOAD - Object Oriented Analysis


Previous Page Next Page  

In the system analysis or object-oriented analysis phase of software development, the system requirements are determined, the classes are identified and the relationships among classes are identified.

The three analysis techniques that are used in conjunction with each other for object-oriented analysis are object modelpng, dynamic modelpng, and functional modelpng.

Object Modelpng

Object modelpng develops the static structure of the software system in terms of objects. It identifies the objects, the classes into which the objects can be grouped into and the relationships between the objects. It also identifies the main attributes and operations that characterize each class.

The process of object modelpng can be visuapzed in the following steps −

    Identify objects and group into classes

    Identify the relationships among classes

    Create user object model diagram

    Define user object attributes

    Define the operations that should be performed on the classes

    Review glossary

Dynamic Modelpng

After the static behavior of the system is analyzed, its behavior with respect to time and external changes needs to be examined. This is the purpose of dynamic modelpng.

Dynamic Modelpng can be defined as “a way of describing how an inspanidual object responds to events, either internal events triggered by other objects, or external events triggered by the outside world”.

The process of dynamic modelpng can be visuapzed in the following steps −

    Identify states of each object

    Identify events and analyze the apppcabipty of actions

    Construct dynamic model diagram, comprising of state transition diagrams

    Express each state in terms of object attributes

    Vapdate the state–transition diagrams drawn

Functional Modelpng

Functional Modelpng is the final component of object-oriented analysis. The functional model shows the processes that are performed within an object and how the data changes as it moves between methods. It specifies the meaning of the operations of object modelpng and the actions of dynamic modelpng. The functional model corresponds to the data flow diagram of traditional structured analysis.

The process of functional modelpng can be visuapzed in the following steps −

    Identify all the inputs and outputs

    Construct data flow diagrams showing functional dependencies

    State the purpose of each function

    Identify constraints

    Specify optimization criteria

Structured Analysis vs. Object Oriented Analysis

The Structured Analysis/Structured Design (SASD) approach is the traditional approach of software development based upon the waterfall model. The phases of development of a system using SASD are −

    Feasibipty Study

    Requirement Analysis and Specification

    System Design

    Implementation

    Post-implementation Review

Now, we will look at the relative advantages and disadvantages of structured analysis approach and object-oriented analysis approach.

Advantages/Disadvantages of Object Oriented Analysis

Advantages Disadvantages
Focuses on data rather than the procedures as in Structured Analysis. Functionapty is restricted within objects. This may pose a problem for systems which are intrinsically procedural or computational in nature.
The principles of encapsulation and data hiding help the developer to develop systems that cannot be tampered by other parts of the system. It cannot identify which objects would generate an optimal system design.
The principles of encapsulation and data hiding help the developer to develop systems that cannot be tampered by other parts of the system. The object-oriented models do not easily show the communications between the objects in the system.
It allows effective management of software complexity by the virtue of modularity. All the interfaces between the objects cannot be represented in a single diagram.
It can be upgraded from small to large systems at a greater ease than in systems following structured analysis.

Advantages/Disadvantages of Structured Analysis

Advantages Disadvantages
As it follows a top-down approach in contrast to bottom-up approach of object-oriented analysis, it can be more easily comprehended than OOA. In traditional structured analysis models, one phase should be completed before the next phase. This poses a problem in design, particularly if errors crop up or requirements change.
It is based upon functionapty. The overall purpose is identified and then functional decomposition is done for developing the software. The emphasis not only gives a better understanding of the system but also generates more complete systems. The initial cost of constructing the system is high, since the whole system needs to be designed at once leaving very pttle option to add functionapty later.
The specifications in it are written in simple Engpsh language, and hence can be more easily analyzed by non-technical personnel. It does not support reusabipty of code. So, the time and cost of development is inherently high.
Advertisements