Analysis modeling Approaches

The Analysis modeling Approaches are two types :

1. Structured Analysis
2. Object oriented Analysis

1. Structured Analysis : 

Structured analysis is a top-down approach, which focuses on refining the problem with the help of functions performed in the problem domain and data produced by these functions. This approach facilitates the software engineer to determine the information received during analysis and to organize the information in order to avoid the complexity of the problem. The purpose of structured analysis is to provide a graphical representation to develop new software or enhance the existing software. In structured analysis the graphical diagram is used to develop and portray system specifications that are easily understood by users. These diagrams describe the steps that need to occur and the data required to meet the design function of a particular software. This type of analysis mainly focuses on logical systems and functions, and aims to convert business requirements into computer programs and hardware specifications. The major steps involved in the structured analysis process are:

  • Studying the current business environment
  • Modeling the old logical system
  • Modeling a new logical system
  • Modeling a new physical environment
  • Evaluating alternatives
  • Selecting the best design
  • Creating structured specifications

There are three orthogonal views related to structured analysis:

Functional View : This involves data flow diagrams, which define the work that has been done and the flow of data between things done, thereby providing the primary structure of a solution.

Data View : This comprises the entity relationship diagram and is concerned with what exists outside the system that is being monitored.

Dynamic View : This includes state transition diagrams and defines when things happen and the conditions under which they may happen.

2. Object Oriented Analysis :

An object-oriented approach is used to describe system requirements using prototypes. This approach is performed using object-oriented modeling or object-oriented analysis, which analyzes the problem domain and then partitions the problem with the help of objects. An object is an entity that represents a concept and performs a well-defined task in the problem domain. For this, an object contains information of the state and provides services to entities, which are outside the object(s). The state of an object changes when it provides services to other entities.

The object-oriented modeling defines a system as a set of objects, which interact with each other by the services they provide. In addition, objects interact with users through their services so that they can avail the required services in the system. To understand object-oriented analysis, it is important to understand various concepts used in an object-oriented environment. Some of the commonly used concepts are as follows :

  • Object : An instance of a class used to describe the entity.
  • Class : A collection of similar objects, which encapsulates data and procedural abstractions in order to describe their states and operations to be performed by them.
  • Attribute : A collection of data values that describe the state of a class.
  • Operation : Also known as methods and services, provides a means to modify the state of a class.
  • Superclass : Also known as base class; is a generalization of a collection of classes related to it.
  • Subclass : A specialization of superclass and inherits the attributes and operations from the superclass.
  • Inheritance : A process in which an object inherits some or all the features of a superclass.
  • Polymorphism : An ability of objects to be used in more than one form in one or more classes.

Generally, it is considered that object-oriented systems are easier to develop and maintain. Also, it is considered that the transition from object-oriented analysis to object-oriented design can be done easily. This is because object-oriented analysis is resilient to changes as objects are more stable than functions that are used in structured analysis.

Next Topic :