Structured approach vs object-oriented approach

Source: Internet
Author: User

Both the structured method and the object-oriented method are the most widely used software development methods in the field of engineering, and the two concepts must be clarified before the difference between them can be explored.

First, compare the basic principles of both:

First, the Basic principles

1. Basic principles of structured approach

The basic idea of the structured method is to treat the problem as a system to analyze and solve the problem by means of the system science method, which follows the following basic principles.
(1) Abstract principles
Abstract principle is the basic principle that all systems scientific methods must follow. It focuses on grasping the essential content of the system and ignoring the content that is not related to the current goal of the system it is a basic cognitive process and way of thinking
(2) Decomposition principle
The principle of decomposition is the most basic principle in the structured method. It is a kind of the thought principle of the general post-local and it adopts top-down layered approach when constructing information system model
(3) Principle of modularization
Modularization is a concrete application of the most basic decomposition principle of the structured method. It mainly appears in the structured design phase, its goal is to break down the system into several modules with specific functions to complete the functions specified by the system.
2. The basic principles that the object-oriented model follows
The object-oriented model follows the following basic principles: Abstraction, encapsulation, modularity, and hierarchy principles.
(1) Abstract
Abstraction is the most basic way to deal with the complexity of the real world. In the Oo method, it emphasizes that the essential characteristics of the difference between an object and other objects. Determining a reasonable abstract set for a given domain is one of the key problems in object-oriented modeling
(2) package
Encapsulation is the process of dividing an abstract element by a structure and behavior that encapsulates the original interface used to separate the abstraction and its execution
Encapsulation is also known as information hiding information hiding it separates the external features of an object from the internal execution details and hides the latter from other objects.
(3) Modular
Modularity is a system feature that has been divided into a series of clustered and coupled modules to determine the correct set of modules for a given problem almost as difficult as determining the correct abstract set, usually each module should be simple enough to be fully understood
(4) Level
Abstract sets usually form a hierarchy, which is the collation and sorting of abstractions. There are two very important levels in the complex real world, one is the type hierarchy and the other is the structural level. Determining the level of abstraction is based on the inheritance of objects, which helps to discover the relationship between abstractions in the inheritance of objects, and to understand the nature of the problem.

Second, demand analysis and comparison

1. Structured Demand Analysis method

(1) The Jackson method for data structures.
(2) A structured analysis method for data flow.
(3) Development method of structured data system oriented to data structure.

2. Structured Analysis Method Flow

(1) Data Flow diagram: A tool to describe the process of processing, a graphical representation of the logical model of demand understanding, which directly supports the system function modeling round box:

the output produced by the processing transformation of the input data.
arrows:
A channel that passes data along the direction of the arrow, typically labeled with a stream name.
Double horizontal line:
represents a file that holds various data during processing.
Box:
represents the interface of the system and the environment, which is an entity outside the system.
(2) Data dictionary:
an organized list of all system-related data elements, along with precise, rigorous definitions, allows users and system analysts to have a common understanding of inputs, outputs, storage components, and intermediate calculations.
The data dictionary is the core of structured analysis.
(3) Decision tree:
from the text description of the problem definition, which is the criterion of the decision, which is the conclusion of the decision, according to the connection words in the description material to find the subordinate relationship between the judging conditions, side-by-side relations, select the relationship, according to them to construct the decision tree.
Structured Analysis Method

(4) Decision table:
similar to the decision tree, when the processing of the flow chart depends on the value of multiple logical conditions, that is, the completion of the processing of a set of actions is due to a set of conditions of the combination of values, the use of the decision table description is more appropriate.
features of the software Requirements specification:
correctness
No ambiguity
completeness
Verifiable
Consistency
understandable
modifiable
Traceability

3. Object-Oriented Analysis method

(1) Static analysis

(2) Dynamic analysis

4. Object-oriented method analysis process (OOA)

(1) Determine the problem area;
(2) district classification and object;
(3) Distinguish the whole object and component, determine the relationship and structure of the class;
(4) Defining attributes and services;
(5) To determine additional system constraints;

Three, the characteristics of comparison

1. Characteristics of structured system analysis methods
(1) User-oriented, users to participate in the analysis of the system from beginning to finish;

(2) Emphasizing the importance of investigative work;

(3) Decomposition of various data in the management business;

(4) The system thought of hierarchical decomposition was adopted;

(5) Using graphical tools to analyze and construct new schemes.

The chart tools for structured analysis consist primarily of data flow diagrams, data dictionaries, and processing instructions.

2. Characteristics of object-oriented system analysis methods
(1) Emphasizing the integrity and global nature of system development

(2) Focus on the process of data conversion rather than the data itself

(3) long development cycle of the system

(4) Encapsulation

The concept of objects breaks through the separation of traditional data from operations. Objects act as independent entities, enclosing free data and operations to make their state and behavior localized.

(5) Inheritance

Inheritance is object-oriented and the most powerful mechanism. Class inheritance can compensate the problem of data or operation redundancy caused by encapsulated object, and realize software resource sharing, evolution and augmented expansion through inheritance support reuse.

(6) Polymorphism

Sending the same message to different classes or objects can cause different operations, making software development and design more convenient and coding more flexible.

(7) Ease of maintenance

Object-oriented abstract encapsulation makes object information hidden locally. When the object is modified, or the object itself produces an error, the resulting effect is confined to the inside of the object without affecting the other objects or even the whole system environment, which greatly facilitates the software design, construction and operation of the process of detection of errors, modifications.

Iv. Summary

To sum up, the two development methods have their own characteristics, the structured development method is more suitable to solve the difficult, more complex functional problems, reduce the development difficulty, the development process becomes simple. And the object-oriented development method is more suitable for the development of large projects, targeting objects to facilitate the maintenance of the project, but also make users easy to understand.

Structured approach vs object-oriented approach

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.