Home >Common Problem >What are the expressions of detailed software design?
The expressions of detailed software design include: 1. Program flow chart, also known as program block diagram, which is a graphical representation that uses unified standard symbols to describe the specific steps of program operation; 2. PAD diagram (Problem Analysis Diagram) , is an algorithm description tool and a commonly used graphical tool in detailed design (software design); 3. Process design language, which is a language used to describe module algorithm design and processing details; 4. Box diagram, a mandatory use The graphic tool of structured structure can easily determine the scope of local and global data, and easily express nested relationships and hierarchical relationships of templates.
The operating environment of this tutorial: Windows 7 system, Dell G3 computer.
The software design phase is usually divided into two steps:
The first is the overall design or outline design of the system, which uses structured design methods to determine the system structure of the software. The main task is to convert the system extended use case diagram obtained in the requirements analysis stage into software structure and data structure;
The second is the detailed design of the system, that is, the specific design within each module. The task is to determine the implemented algorithm and local data structure for each module in the software structure diagram, and describe it with some tool
Detailed design is the second stage of software design. This The first stage of work is to give a sufficiently detailed process description of each module in the system, so it is also called process design)
Purpose: To determine how to specifically implement the required system through this process The design work at this stage should result in a precise description of the target system. The specific thing is to determine the algorithm and internal data structure used for each module in the software structure diagram. Use a selected detailed design tool to describe more clearly, so that these descriptions can be directly translated into a programming language and written source program during the coding stage.
Task: Design the "blueprint" of the program. Later, the program will write actual code based on this blueprint.
Expression of detailed software design
1. Program flow chart
Program flow chart Also known as a program block diagram, it is a graphical representation that uses uniformly specified standard symbols to describe the specific steps of a program's operation.
Advantages: easy to learn, intuitive expression algorithm
Disadvantages: not standardized enough, especially the use of arrows, which greatly affects the quality, so it must be restricted to make it a standardized detailed design tool.
Disadvantages of program flow diagram:
is not essentially a good tool for step-by-step refinement. It induces programmers to consider the control process prematurely instead of considering the program. the overall structure.
The arrows in the figure represent control flow, so programmers are not subject to any constraints and can completely ignore the spirit of structural programming and transfer control at will, which can easily lead to unstructured program structures.
Program flow diagrams cannot easily represent data structures and hierarchical structures.
2. PAD diagram (Problem Analysis Diagram)
is an algorithm description tool and a commonly used graphic in detailed design (software design) tool.
The advantages of PAD are as follows:
The program designed with PAD diagram must be a structured program
PAD diagram depicts The program structure is very clear. The vertical line on the far left of the picture is the main line of the program, that is, the first level structure. As the level of the program increases, the PAD diagram gradually extends to the right. Each time a level is added, the diagram expands a vertical line to the right. PAD The number of vertical lines in the figure is the number of levels of the program.
The payment of PAD diagram supports top-down, step-by-step refinement method. The content in the left level can be abstracted, and then use def to gradually refine it from the right to the right
The program logic represented by PAD is easy to read, understand, remember and easy to use.
can represent the program logic and can also be used to describe the data structure.
Can automatically generate programs and use software tools to complete it automatically, eliminating coding work and helping to improve software reliability and software productivity.
3. Process Design Language
Process Design Language (PDL), also known as Program Description Language ), is a language used to describe the details of module algorithm design and processing.
PDL features:
Keywords have a fixed syntax to provide structured control structures, data descriptions and modular features, and are usually used in all possible nestings The control structure has keywords at the beginning and end.
The declarative language describing the processing does not have strict grammatical restrictions
It has a data description mechanism, including simple data structures (such as simple variables and arrays) including complex data structures (such as linked lists or hierarchical data structures)
has scale definition and calling mechanism. Development should be based on the language used for system programming. Explain the relevant program structure represented by the process design language.
4. Box plot (N-S plot)
The box diagram is a diagramming tool that enforces the use of structured construction, also called a box diagram. It has the following characteristics: the functional domain is clear, it is impossible to transfer control arbitrarily, it is easy to determine the scope of local and global data, and it is easy to express nested relationships and hierarchical relationships of templates.
The advantages of the N-S diagram are:
The functional domain is clearly expressed, and the functional domain can be clearly seen from the box diagram
It is easy to determine the scope of local and global data
It is impossible to transfer control at will.
It is easy to express the module hierarchy and list nested relationships.
Enable software personnel to comply with the regulations of structured programming and naturally develop a good programming style.
For more related knowledge, please visit the FAQ column!
The above is the detailed content of What are the expressions of detailed software design?. For more information, please follow other related articles on the PHP Chinese website!