CN102681932B - Method for detecting processing correctness of software on abnormal input - Google Patents

Method for detecting processing correctness of software on abnormal input Download PDF

Info

Publication number
CN102681932B
CN102681932B CN201210017980.7A CN201210017980A CN102681932B CN 102681932 B CN102681932 B CN 102681932B CN 201210017980 A CN201210017980 A CN 201210017980A CN 102681932 B CN102681932 B CN 102681932B
Authority
CN
China
Prior art keywords
input
control
input control
abnormal
software
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210017980.7A
Other languages
Chinese (zh)
Other versions
CN102681932A (en
Inventor
于秀山
于长钺
刘然
黄忠见
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Software Evaluation Center
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201210017980.7A priority Critical patent/CN102681932B/en
Publication of CN102681932A publication Critical patent/CN102681932A/en
Application granted granted Critical
Publication of CN102681932B publication Critical patent/CN102681932B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

The invention discloses a method for detecting the processing correctness of software on abnormal input. The method comprises the following steps of: obtaining an abstract syntax tree and a symbol table of source codes of tested software through lexical analysis and syntax analysis; traversing the abstract syntax tree and the symbol table, and obtaining input controls in the source codes of the tested software, wherein the input controls are controls allowing users to input data; and identifying the input controls, and finding out the input controls which do not judge the abnormal input. The technical scheme of the method can detect whether the software processes the abnormal input.

Description

The method of the abnormal input processing correctness of a kind of inspection software
Technical field
The present invention relates to software test field, referring in particular to by analyzing source program code, check whether software has carried out the method for correct process to various abnormal input.
Background technology
Software input is software " door ", be the drive source of software, software input comprises normal input and abnormal input, and normal input processing is improper directly will affect software function, abnormal input processing is improper will affect software fault-tolerant, causes software to occur various mistake.According to statistics, because software anomaly input processing is improper, software error that is that cause accounts for more than 70% of software error, and as can be seen here, checking whether software has carried out processing to various abnormal input is the important method finding software error.
Static test based on source program code analysis is an important research field of software test, by static test, can the effective defect that exists in programming rule, memory management, pointer use, program structure, control flow check, data stream etc. of discovery procedure.Static test is one of research field of carrying out comparatively morning both at home and abroad, and obtained applicability achievement at present, representational have the TestBed instrument of LARA company of Britain, the Klocwork instrument of Klocwork company.These instruments according to different programming language standards, by source program code analysis, the defect that program of finding out exists in symbol use, initialization of variable, function return value, memory management, buffer zone use, pointer use etc.These instrumental functions are powerful, easy to use, played fine effect in software static test, but in software anomaly input context of detection shortcoming, whether can not carry out abnormality processing analyze software input.
In software anomaly input context of detection, at present mainly by the various exceptional value of artificial input, the mode of Dynamic Execution software checks software anomaly input processing situation.This method needs tester to grasp the information such as the boundary value of software input and type on the one hand just can design rational test case; Test job amount is large on the other hand, for the software that the input fields such as class database are numerous, needs tester to verify the correctness of each field abnormality processing one by one.
In sum, in software anomaly input processing context of detection, be static test or dynamic test all Shortcomings, need a kind of brand-new method of research to address this problem.
Summary of the invention
Technical matters solved by the invention is to provide the method for the abnormal input processing correctness of a kind of inspection software, can detect software anomaly input processing situation.
Technical scheme is as follows:
A method for the abnormal input processing correctness of inspection software, comprising:
By morphology and grammatical analysis, obtain abstract syntax tree and the symbol table of tested software source code;
Travel through described abstract syntax tree and symbol table, obtain the input control in described tested software source code, described input control is the control allowing user input data;
Identification is carried out to described input control, finds out the input control not judging abnormal input.
Further: to adopt class Principles & Technology of Compiler Design, morphology and grammatical analysis are carried out to described tested software source code, obtain described abstract syntax tree and symbol table by analyzing.
Further: in the described input control process of acquisition, to travel through described abstract syntax tree with depth first method, if certain leaf node is variable, obtaining this types of variables by searching symbol table; If described types of variables is input control type, then illustrate to be an input control described by this variable.
Further: described input control variable adopts the definition mode of variable declarations and variable-definition, carrying out in identification process to described input control, by searching at described abstract syntax tree, content simultaneously in combined symbol table, picks out all input controls and variable thereof in described tested software source code.
Further: identification is carried out to described input control, search each input control in input control list, then with depth first method ergodic abstract syntax tree, check wherein whether to have and the abnormal statement judged is carried out to input, if no, then described input control just belongs to and does not judge abnormal input control.
Further: described input control comprises text-entry control, list control, can input list control, grid control, Tree control, form tree control, Pop-up list control or pattern text control.
Technique effect comprises: software anomaly input is the one of the main reasons causing software errors, and whether great advantage of the present invention is how to detect and judges abnormal input.By identifying input control, judge language feature according to different input control is abnormal, find out and do not carry out the abnormal control judged, accordingly, developer can revise software easily; Tester can design the test case for this control, thus greatly improves validity and the adequacy of test.
Accompanying drawing explanation
Fig. 1 is the workflow diagram of the method for the abnormal input processing correctness of inspection software in the present invention;
Fig. 2 is the workflow diagram of morphology and grammatical analysis in the present invention;
Fig. 3 is the part abstract syntax tree schematic diagram of code snippet in the present invention;
Fig. 4 is input control identification workflow diagram in the present invention;
Fig. 5 is the workflow diagram of the input control identification not judging abnormal input in the present invention;
Fig. 6 is the software interface schematic diagram of code sample section correspondence in the present invention;
Fig. 7 is the part abstract syntax tree structural representation of code sample section after morphology and grammatical analysis in the present invention.
Embodiment
The present invention is directed to existing method Problems existing, adopt source code analysis technology, mainly solve how to find out in program and extremely input to various the input control problem processed, thus raising testing adequacy, minimizing test job amount.
Below with reference to the accompanying drawings and preferred embodiment, technical solution of the present invention is described in detail.
As shown in Figure 1, be the workflow diagram of the method for the abnormal input processing correctness of inspection software in the present invention, the implementation of this programme is as follows.
One, morphology and grammatical analysis
The fundamental purpose of this step is the abstract syntax tree and the symbol table that obtain tested software source code.
Adopting class Principles & Technology of Compiler Design, morphology and grammatical analysis are carried out to tested software source code, by analyzing, obtaining abstract syntax tree and symbol table.
Definition 1: abstract syntax tree is one tree T=<V, E>, wherein:
V is the node of tree, is made up of the various syntactic structures in source code; E is the limit of tree, is responsible for connecting various syntactic structure.
Definition 2: symbol table is a table graphic data structure, the identifier produced in lexical analysis process as the entrance of symbol table, the information that subsequent analysis obtains, as: the type, use-pattern, storage space etc. of identifier can join in table as required.
As shown in Figure 2, be the workflow diagram of morphology and grammatical analysis in the present invention.Morphology and grammatical analysis are the bases of generating code and interface control mapping relations.This programme adopts general method to carry out morphology and grammatical analysis to the source code of tested software, is described by algorithm 1.
Algorithm 1.Lexical_Syntax_Analyze (P)
Input P: source code
Export abstract syntax tree and the symbol table of (AST, SymTable): P
1.TokenStream<-Lexical_Analyze(P)
2.(AST,)SymTable)<-Syntax_Analyze(TokenStream)
3.Return(AST,SymTable)
Source code, after morphology and grammatical analysis, will obtain its abstract syntax tree and symbol table.1st step of algorithm 1 carries out lexical analysis to source code P, obtains the mark stream TokenStream of P; 2nd step carries out grammatical analysis to mark based on stream, obtains abstract syntax tree AST and the symbol table SymTable of P; AST and SymTable returns by the 3rd step.
Here is the example code segment of a Java Swing.
1、javax.swing.JMenufileMenu=new javax.swing.JMenu();
2、javax.swing.JMenuItemopenFileMenuItem=new javax.swing.JMenuItem();
3、fileMenu.add(openFileMenuItem);
Table 1 is the symbol table that code is corresponding
Identifier Type Definition place line number
fileMenu JMenu 1
openFileMenuItem JMenuItem 2
The 1st row in example code segment defines a menu fileMenu, and the 2nd row defines a menu item openFileMenuItem, and the 3rd is about to openFileMenuItem joins in fileMenu.
As shown in Figure 3, be above-mentioned Java example code segment after morphology and grammatical analysis, the abstract syntax tree schematic diagram of the 3rd line code.
After the abstract syntax tree obtaining source code and symbol table, just can analyze it, object finds out all input controls (input control identification).
Two, input control identification
Adopt depth first search technique, ergodic abstract syntax tree and symbol table, obtain input controls (as: Text Entry, drop-down menu etc.) all in source code.
Control in graphic user interface (GUI) is the imbody of software function, and software function is realized by control.Wherein, input control refers to that those allow user by the control of key in data.The object of input control identification finds out input controls all in program.This step is mainly through to abstract syntax traversal of tree and having searched symbol table.Main method is: with depth first method ergodic abstract syntax tree, if certain leaf node is variable, at this moment by searching symbol table, can obtain this type of variables; If the type is input control type, then illustrate to be an input control described by this variable.
Input control identification in program compilation and this programme all employ abstract syntax tree and symbol table, but both objects are different, and the former object generates and optimization aim code, and the object of the latter finds out input controls all in source code.
1, input control type
Programming language is different, and the input control type that it comprises is also different, and for Java SWT, its input control comprised is as shown in table 2.
The function of table 2 input control and correspondence thereof
Although these controls have respective using method, be that the mode of certain control is determined by the specification of language itself by certain variable-definition, therefore, according to these specifications, unified these controls of method identification can be adopted.
2, variable-definition mode.
2 kinds are mainly contained to the definition mode of control variable:
(1) variable declarations
Call the turn at program design language, variable declarations is responsible for existence and its relevant character of pointing out certain variable, but does not carry out initialization to it.
Such as: private javax.swing.JButtoncomputeButton; This statement defines the variable computeButton that type is javax.swing.JButton.
(2) variable-definition
Call the turn at program design language, variable-definition is not only responsible for existence and its relevant character of pointing out certain variable, also needs to carry out initialization to it.
Such as: javax.swing.JMenufileMenu=new javax.swing.JMenu ();
This statement defines variable fileMenu that type is javax.swing.JMenu and uses new statement to carry out initialization to it.
3, input control discrimination method
By searching for above-mentioned two kinds of definition modes in abstract syntax tree, the content simultaneously in combined symbol table, just can pick out input controls all in source code and variable thereof.
As shown in Figure 4, be input control identification workflow diagram in the present invention.By ergodic abstract syntax tree and search symbol table, according to input control feature, input control list can be generated.Algorithm 2:GEL_AST_SymTable (AST, SymTable) describes input control identification algorithm.
Algorithm 2:GEL_AST_SymTable (AST, SymTable)
Input AST: the abstract syntax tree of source code
Input SymTable: the symbol table of source code
Export GEL: the input control list in source code
1.GEL<-[];
2. travel through all leaf node Node of AST
3.if (LookUpType (SymTable, Node)=input control type)
4.GEL<-Node::GEL
5.Return GEL
1st step initialization rreturn value GEL of algorithm 2 is empty list; 2nd step starts ergodic abstract syntax tree AST to the 4th step; Wherein the 3rd step call function LookUpType (SymTable, Node) judges whether leaf node Node is input control type, if so, then in the 4th step, this node is added rreturn value GEL list; After abstract syntax tree AST has traveled through, input control list GEL returns by the 5th step.
Three, the input control identification of abnormal input is not judged.
The input of user has certain restriction usually, if do not judged its abnormal conditions, so when the input of user is not in allowed band, software just there will be various mistake.Therefore, need to carry out abnormal judgement to all users input, and take corresponding treatment measures accordingly.
In order to achieve the above object, need to find out those and the control judged is not inputted extremely to it in a program.Main method is: search each input control in input control list, then with depth first method ergodic abstract syntax tree, whether check wherein to have and carries out the abnormal statement judged to this input, if do not had, then this control just belongs to and does not judge abnormal input control.This is the part of most critical in the present invention, and how it detects input control and whether carried out treatment technology problem to abnormal input if efficiently solving.
As shown in Figure 5, be the workflow diagram not judging the abnormal input control identification inputted in the present invention.Judge grammar property according to abstract syntax tree and input control list and abnormal input, do not judged abnormal input control list.
Want inspection software whether to process abnormal input, first need the input obtaining software.Below for Java SWT, the user provided corresponding to different input control inputs acquisition methods, as shown in table 3.
The input data capture method that the different input control of table 3 is corresponding
Sequence number Input control title Input data capture method
1 Text-entry control Text getText()
2 List control List getItem()
3 List control Combo and CCombo can be inputted getText()
4 Grid control Table GetItem () function obtains certain element in Table
5 Tree control Tree GetItem () function obtains certain element in Table
6 Form tree control TableTree GetItems () function obtains some data wherein
7 Pop-up list control PopupList GetItems () function obtains the element that user chooses
8 Pattern text control StyledText getText()
After acquisition user input, just whether can carry out abnormal judgement to this input (normally String type) in determining program.
Programming language is different, and the abnormal input judging method of its correspondence is different.For Java language, the common method of String categorical variable x being carried out to abnormal judgement is as shown in table 4.
Table 4String categorical variable is abnormal judges classification and language feature
Sequence number Extremely classification is judged Language feature
1 Judge that whether x is identical with the character string s that certain directly provides if(x.isEqual(s))...
2 Judge that whether x is not identical with the character string s that certain directly provides if(!x.isEqual(s))...
3 Judge x whether in certain aggregate type variable S if(S.contains(x))...
4 Judge x whether in the key assignments set of certain Map categorical variable M if(M.containsKey(x))...
Judge the language feature ergodic abstract syntax tree corresponding to type according to the exception provided in table 4, if the language feature that in code, this input control is not corresponding, so this control is exactly do not judge abnormal input control, and algorithm 3 describes said process.
Algorithm 3:GNL_AST_GEL (AST, GEL)
Input AST: the abstract syntax tree of source code
Input GEL: input control list
Export NL: in source code, do not judge abnormal input control list
1.NL<-[];
2. travel through all input control GEmt1 in GEL
3. with depth first method ergodic abstract syntax tree AST
4.if (not to the associated functional calls of GEmt1 thus obtain user's input || abnormal judgement is not carried out to input)
5.then NL<-NL::GEmt1
6.Return NL;
The course of work of algorithm 3 is: return-list NL is initialized as sky by the 1st step; 2nd step is to all input control GEmt1 in the 5th step traversal GEL; 3rd step ergodic abstract syntax tree AST; 4th step judges that the user whether obtaining this input control in code inputs and carried out abnormal judgement to it; If, this input control is not added return-list NL in the 5th step; Result returns by the 6th step.
Below for Java SWT code sample section, describe the present invention in detail.
The 4th row in above-mentioned code defines main window shell, 10th row defines a Text control text1,13rd row calls getText () function and obtains user's input, 14 to 16 row judges this input, if be input as sky, print prompt information, 17th row defines a Text control text2, and the 20th row defines a Combo control cb1, and the 23 to 27 is about to whole interface display on screen.
As shown in Figure 6, be the software interface schematic diagram of code sample section correspondence in the present invention.Wherein comprise 3 input frames: " input 1 " and " input 2 " is the control of Text type, and " input 3 " is the control of Combo type.
As shown in Figure 7, be in the present invention after morphology and grammatical analysis, the part abstract syntax tree structural representation of code sample section.
1, morphology and grammatical analysis
Use the algorithm 1 in this programme to carry out morphology and grammatical analysis, obtain symbol table as shown in table 5.Wherein, have 9 symbols, line number when have recorded their type in symbol table and be defined in source code.
Table 5 code sample section symbol table
Identifier Type Definition place line number
display Display 3
shell Shell 4
layout GridLayout 5
data GridData 9
text1 Text 10
tx1 String 13
text2 Text 17
cb1 Combo 20
2, input control identification
According to abstract syntax tree and the symbol table of above-mentioned code sample section, use the algorithm 2 in this programme to carry out input control identification, obtain input control list as shown in table 6.
The list of table 6 code sample section input control
Identifier Display character Type
text1 Text 10
text2 Text 17
cb1 Combo 20
3, abnormal input control identification is not judged
According to abstract syntax tree and the symbol table of code sample section, the algorithm 3 in this programme is used not judge abnormal input control identification.Can be learnt by algorithm 3, the user that code obtains text1 control at the 13rd row inputs tx1, has then carried out abnormal judgement at the 14th row to it, and quite different to text2 and cb1 control, and detailed results is as shown in table 7.
Table 7 does not judge abnormal input control list
Identifier Display character Type
text2 Text 17
cb1 Combo 20
That is: text2 and cb1 control does not carry out abnormal judgement to user's input.According to the information that table 7 provides, for developer, following statement can be increased after the 19th line statement:
Following statement is increased at the 22nd line statement:
The mistake that amendment occurs;
For tester, following test case can be designed:
A, do not input any value at " input 2 " place, B, do not input any value at " input 3 " place ...Thus, effectively find the mistake that software exists.

Claims (4)

1. a method for the abnormal input processing correctness of inspection software, comprising:
By morphology and grammatical analysis, obtain abstract syntax tree and the symbol table of tested software source code;
Travel through described abstract syntax tree and symbol table, obtain the input control in described tested software source code, described input control is the control allowing user input data;
The input control obtained in described tested software source code is specially:
Traveling through described abstract syntax tree with depth first method, if certain leaf node is variable, obtaining this types of variables by searching symbol table; If described types of variables is input control type, then illustrate to be an input control described by this variable;
Carry out identification to described input control, find out the input control not judging abnormal input, detailed process, comprising:
Identification is carried out to described input control, searches each input control in input control list, then with depth first method ergodic abstract syntax tree, check wherein whether to have and the abnormal statement judged is carried out to input; If no, then described input control just belongs to and does not judge abnormal input control.
2. the method for the abnormal input processing correctness of inspection software as claimed in claim 1, is characterized in that: adopt class Principles & Technology of Compiler Design, carry out morphology and grammatical analysis to described tested software source code, obtains described abstract syntax tree and symbol table by analyzing.
3. the method for the abnormal input processing correctness of inspection software as claimed in claim 1, it is characterized in that: described input control variable adopts the definition mode of variable declarations and variable-definition, carrying out in identification process to described input control, by searching at described abstract syntax tree, content simultaneously in combined symbol table, picks out all input controls and variable thereof in described tested software source code.
4. the method for the abnormal input processing correctness of inspection software as described in any one of claims 1 to 3, is characterized in that: described input control comprises text-entry control, list control, can input list control, grid control, Tree control, form tree control, Pop-up list control or pattern text control.
CN201210017980.7A 2012-01-19 2012-01-19 Method for detecting processing correctness of software on abnormal input Active CN102681932B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210017980.7A CN102681932B (en) 2012-01-19 2012-01-19 Method for detecting processing correctness of software on abnormal input

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210017980.7A CN102681932B (en) 2012-01-19 2012-01-19 Method for detecting processing correctness of software on abnormal input

Publications (2)

Publication Number Publication Date
CN102681932A CN102681932A (en) 2012-09-19
CN102681932B true CN102681932B (en) 2015-04-01

Family

ID=46813897

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210017980.7A Active CN102681932B (en) 2012-01-19 2012-01-19 Method for detecting processing correctness of software on abnormal input

Country Status (1)

Country Link
CN (1) CN102681932B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103927473A (en) * 2013-01-16 2014-07-16 广东电网公司信息中心 Method, device and system for detecting source code safety of mobile intelligent terminal
CN106020913B (en) * 2016-06-06 2019-06-14 北京邮电大学 A kind of defect detection tool update method and device
CN108038255A (en) * 2017-10-31 2018-05-15 惠州市金百泽电路科技有限公司 A kind of automatic method for making pcb board set jigsaw
CN112181841B (en) * 2020-10-10 2024-03-29 有半岛(北京)信息科技有限公司 Method, device, equipment and storage medium for detecting detected abnormality
CN112363706A (en) * 2020-11-20 2021-02-12 上海悦易网络信息技术有限公司 Nested combination preprocessing method and equipment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102243586A (en) * 2011-07-22 2011-11-16 于秀山 Method for automatically acquiring software function diagram
CN102262580A (en) * 2010-05-24 2011-11-30 南京航空航天大学 Improved software static test method and tool based on symbolic execution

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101377757A (en) * 2007-08-28 2009-03-04 国际商业机器公司 Method and device for performing restriction malfunction analysis based on restriction mode

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102262580A (en) * 2010-05-24 2011-11-30 南京航空航天大学 Improved software static test method and tool based on symbolic execution
CN102243586A (en) * 2011-07-22 2011-11-16 于秀山 Method for automatically acquiring software function diagram

Also Published As

Publication number Publication date
CN102681932A (en) 2012-09-19

Similar Documents

Publication Publication Date Title
US8875110B2 (en) Code inspection executing system for performing a code inspection of ABAP source codes
CN105787367B (en) A kind of the patch safety detecting method and system of software upgrading
CN103577324B (en) Static detection method for privacy information disclosure in mobile applications
CN102681932B (en) Method for detecting processing correctness of software on abnormal input
CN102567200A (en) Parallelization security hole detecting method based on function call graph
CN102662825B (en) Method for detecting memory leakage of heap operational program
CN102073588A (en) Code static analysis based multithread deadlock detection method and system
CN103294596A (en) Early warning method for contract-type software fault based on program invariants
CN103914379B (en) Fault is automatically injected the method with fault detect and system thereof
Ren et al. Making smart contract development more secure and easier
CN107516040A (en) A kind of Vulnerability Characteristics analysis and acquisition methods based on data controlling stream graph
CN106339313B (en) A kind of abnormal inconsistent automatic testing method of description with document of Java api routines
Xu et al. Melton: a practical and precise memory leak detection tool for C programs
CN102141959B (en) Test case generation method restrained by context-free grammar
Nam et al. A bug finder refined by a large set of open-source projects
CN115080448B (en) Method and device for automatically detecting inaccessible path of software code
CN103235757B (en) Several apparatus and method that input domain tested object is tested are made based on robotization
CN105487983A (en) Sensitive point approximation method based on intelligent route guidance
CN105630678B (en) A kind of the reliability detector and its detection method of intelligent electric energy meter software
Liuying et al. Test selection from UML statecharts
Sun et al. Revisiting the Identification of the Co-evolution of Production and Test Code
Harzevili et al. Automatic Static Vulnerability Detection for Machine Learning Libraries: Are We There Yet?
CN115495745A (en) Industrial software source code static detection method and system based on risk function
Wang et al. Invariant based fault localization by analyzing error propagation
CN115438341A (en) Method and device for extracting code loop counter, storage medium and electronic equipment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB03 Change of inventor or designer information

Inventor after: Yu Xiushan

Inventor after: Yu Changyue

Inventor after: Liu Ran

Inventor after: Huang Zhongjian

Inventor before: Yu Xiushan

Inventor before: Yu Changyue

Inventor before: Du Xutao

Inventor before: Yang Bao

Inventor before: Huang Zhongjian

Inventor before: Chi Fang

Inventor before: Wu Ling

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: YU XIUSHAN YU CHANGYUE DU XUTAO YANG BAO HUANG ZHONGJIAN CHI FANG WU LING TO: YU XIUSHAN YU CHANGYUE LIU RAN HUANG ZHONGJIAN

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230419

Address after: No. 66, Zizhuyuan Road, Haidian District, Beijing 100048

Patentee after: China Software Evaluation Center

Address before: 100036 Evaluation Center, No.13 Dacheng Road, Fengtai District, Beijing

Patentee before: Yu Xiushan