System change influence determination method and device, electronic equipment and medium

By combining static analysis and dynamic analysis, the impact results of system changes are determined, and the problems of incomplete impact analysis and lack of graphical display in the existing technology are solved, and a comprehensive, accurate analysis and clear graphical display of the impact of system changes are achieved.

CN119645810APending Publication Date: 2025-03-18CCB FINTECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411788146.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-06
Publication Date
2025-03-18

AI Technical Summary

Technical Problem

The impact analysis tools in the prior art cannot perform behavioral data analysis during dynamic runtime, resulting in the inability to provide comprehensive and accurate impact analysis results. At the same time, there is a lack of comprehensive graphical display, making it difficult to clearly present the specific processing process from the channel end to the back-end service.

Method used

By combining static analysis and dynamic analysis, the code change information of the system change points is extracted, the dependency characteristics of the code are generated, and the static analysis is carried out to determine the first influence parameters of the system; at the same time, the behavioral data of the code change information in the dynamic operating environment is captured in real time, and dynamic analysis is carried out to determine the second influence parameters of the system, and finally the two are combined to determine the impact results of the system.

Benefits of technology

It realizes a comprehensive and accurate analysis of the impact of system changes, makes up for the limitations of static analysis that cannot capture runtime behavior, and provides a clear graphical display of services from channel end to back-end, helping the development team better manage and control system changes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119645810A_ABST
    Figure CN119645810A_ABST
Patent Text Reader

Abstract

The invention provides a system change influence determination method which can be applied to the technical field of big data and finance. The method comprises the following steps: in response to system change, extracting code change information corresponding to a change point; the code change information is analyzed, dependency relationship characteristics of the codes are generated, and the dependency relationship characteristics represent dependency relationships among functions, classes and modules in the codes corresponding to the change points; determining a first influence parameter of the change on the system according to the dependency relationship characteristics; capturing behavior data of the code change information in a dynamic operation environment in real time, and determining a second influence parameter of the change on the system according to the behavior data; and determining an influence result of the change on the system according to the first influence parameter and the second influence parameter. The invention further provides a system change influence determination device, electronic equipment, a medium and a program product.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of big data technology, and in particular to a method, device, electronic device, medium and program product for determining the impact of a system change. Background Art

[0002] As software systems continue to grow in size and complexity, it becomes increasingly difficult to manage and control software changes. Changes in software may introduce new defects, conflicts, or performance issues, affecting the stability and reliability of the entire system. The development team needs to know clearly which parts of the system are affected by a certain change in order to conduct appropriate testing, verification, and repair. Impact analysis tools can provide automated change impact analysis to help teams better manage and control changes and reduce potential risks and problems.

[0003] However, during the data processing process, the impact analysis tools in the existing technology are limited to static analysis of the code in a non-running state, and do not capture the behavioral data during dynamic runtime for dynamic analysis, resulting in the inability to provide comprehensive and accurate impact analysis results; in addition, due to the lack of comprehensive graphical display, the specific processing flow from the channel end to the back-end service is difficult to clearly present. Summary of the invention

[0004] In view of the above problems, the present disclosure provides a system change impact determination method, apparatus, electronic device, medium and program product that combine static analysis and dynamic analysis to determine the system change impact result.

[0005] According to a first aspect of the present disclosure, a method for determining the impact of a system change is provided, comprising: in response to a system change, extracting code change information corresponding to a change point; parsing the code change information, generating a dependency feature of the code, wherein the dependency feature characterizes the dependency between each function, class, and module in the code corresponding to the change point; determining a first impact parameter of the change on the system based on the dependency feature; capturing behavior data of the code change information in a dynamic operating environment in real time, and determining a second impact parameter of the change on the system based on the behavior data; and determining the impact result of the change on the system based on the first impact parameter and the second impact parameter.

[0006] According to an embodiment of the present disclosure, parsing code change information and generating dependency features of the code include: converting the code change information into an abstract syntax tree, wherein the abstract syntax tree is configured to be able to represent the grammatical structure and dependency relationships of the code in a tree form; identifying the calling relationships of functions, the inheritance relationships of classes, and the reference relationships of modules in the code change information; and generating dependency features of the code based on the calling relationships, inheritance relationships, and reference relationships.

[0007] According to an embodiment of the present disclosure, the dependency features of the code are generated according to the calling relationship, inheritance relationship and reference relationship, including: based on the abstract syntax tree, constructing a dependency graph of the code according to the calling relationship, inheritance relationship and reference relationship; generating the dependency features of the code according to the dependency graph, wherein the nodes in the dependency graph represent the functions, classes and modules of the code, and the edges in the dependency graph represent the dependencies.

[0008] According to an embodiment of the present disclosure, determining the first impact parameter of the change on the system based on dependency characteristics includes: comparing the code differences before the change based on the dependency characteristics; identifying the impact parameters of the change on code complexity and the impact parameters of the change on code security based on the code differences; determining the first impact parameter of the change on the system based on the impact parameters of complexity and the impact parameters of security.

[0009] According to an embodiment of the present disclosure, capturing the behavior data of code change information in a dynamic operating environment in real time, and determining a second impact parameter of the change on the system based on the behavior data includes: capturing the behavior data of code change information in a dynamic operating environment in real time based on an operating environment configuration monitoring tool; determining the impact parameters of the change on system performance, the impact parameters of the change on system resource usage, and the impact parameters of the change on system memory consumption based on the behavior data; determining the second impact parameter of the change on the system based on the impact parameters on system performance, the impact parameters on system resource usage, and the impact parameters on system memory consumption.

[0010] According to an embodiment of the present disclosure, configuring a monitoring tool based on the operating environment to capture the behavior data of code change information in a dynamic operating environment in real time includes: configuring a first monitoring tool based on a test environment to capture simulated behavior data generated by simulating actual workloads; configuring a second monitoring tool based on a production environment to capture real behavior data generated during actual runtime.

[0011] According to an embodiment of the present disclosure, determining the impact of a change on a system based on a first impact parameter and a second impact parameter includes: fusing the first impact parameter and the second impact parameter to generate a comprehensive report on the impact of the change on the system; based on the comprehensive report, determining the impact of the change on the complexity and security of the code, as well as the performance, resource usage and memory consumption of the system.

[0012] According to an embodiment of the present disclosure, the method also includes: obtaining the propagation path and processing flow of each request between services; generating a service call chain diagram based on the propagation path and processing flow, wherein the service call chain diagram is used to display the calling process, response time and status of each operation step of each service from the channel end to the back end; configuring a graphical display interface based on the service call chain diagram, wherein the graphical display interface is configured so that the user can freely define the process links from request to response by dragging and dropping components, and display the corresponding processing nodes, data flow and conditional branches.

[0013] According to an embodiment of the present disclosure, parsing code change information and generating code dependency features also includes: extracting configuration files, database access logs, and API call logs corresponding to the change points; and generating code dependency features based on the code change information, configuration files, database access logs, and API call logs.

[0014] A second aspect of the present disclosure provides a system change impact determination device, including: an extraction module, used to extract code change information corresponding to a change point in response to a system change; a parsing module, used to parse the code change information and generate a dependency feature of the code, wherein the dependency feature characterizes the dependency between each function, class and module in the code corresponding to the change point; a first determination module, used to determine a first impact parameter of the change on the system based on the dependency feature; a second determination module, used to capture the behavior data of the code change information in a dynamic operating environment in real time, and determine a second impact parameter of the change on the system based on the behavior data; and a third determination module, used to determine the impact result of the change on the system based on the first impact parameter and the second impact parameter.

[0015] A third aspect of the present disclosure provides an electronic device, comprising: one or more processors; and a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the above method.

[0016] The fourth aspect of the present disclosure further provides a computer-readable storage medium having a computer program or instructions stored thereon, which implements the steps of the above method when the above computer program or instructions are executed by a processor.

[0017] The fifth aspect of the present disclosure further provides a computer program product, including a computer program or instructions, which implement the steps of the above method when the above computer program or instructions are executed by a processor.

[0018] The system change impact determination method, device, electronic device, medium and program product provided by the present disclosure extract the code change information corresponding to the change point when the system changes, and then generate the code dependency characteristics according to the code change information. On the one hand, a more fine-grained static analysis is performed on the code dependency characteristics to obtain the first impact parameter of the change on the system. On the other hand, the behavioral data of the code change information in the operating environment is captured for dynamic analysis to obtain the second impact parameter of the change on the system. Finally, the results of static analysis and dynamic analysis are combined to obtain the final impact result of the change on the system. Static analysis can effectively capture the code structure and dependency, but cannot understand the behavior at runtime. After the introduction of dynamic analysis, the behavior data of the system in the operating environment is fully captured, which makes up for the limitations of static analysis. This makes the change impact analysis not only consider the code level, but also the actual performance at runtime. By combining static analysis and dynamic analysis, a more comprehensive and accurate change impact analysis can be provided. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The above contents and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:

[0020] Figure 1 A diagram schematically illustrates an application scenario of a method, device, electronic device, medium, and program product for determining the impact of a system change according to an embodiment of the present disclosure;

[0021] Figure 2 A flowchart of a method for determining the impact of a system change according to an embodiment of the present disclosure is schematically shown;

[0022] Figure 3 A flowchart for generating code dependency features according to code change information according to an embodiment of the present disclosure is schematically shown;

[0023] Figure 4 Schematically shows a flow chart of generating code dependency features according to a dependency graph according to an embodiment of the present disclosure;

[0024] Figure 5 A flowchart of determining a first influencing parameter according to a dependency relationship feature according to an embodiment of the present disclosure is schematically shown;

[0025] Figure 6 A flowchart of determining a second influencing parameter according to behavior data according to an embodiment of the present disclosure is schematically shown;

[0026] Figure 7 Schematically shows a flow chart of capturing behavior data according to an embodiment of the present disclosure;

[0027] Figure 8Schematically shows a flow chart of determining a final impact result according to a first impact parameter and a second impact parameter according to an embodiment of the present disclosure;

[0028] Fig. 9 A flowchart of configuring a graphical display interface according to an embodiment of the present disclosure is schematically shown;

[0029] Fig.10 A flowchart of generating code dependency features based on unstructured data according to an embodiment of the present disclosure is schematically shown;

[0030] Fig.11 A structural block diagram of a system change impact determination device according to an embodiment of the present disclosure is schematically shown; and

[0031] Fig.12 A block diagram of an electronic device suitable for implementing a method for determining a system change impact according to an embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION

[0032] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.

[0033] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of the features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.

[0034] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.

[0035] When using expressions such as "at least one of A, B, and C, etc.", they should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).

[0036] It should be noted that the method and device for determining the impact of system changes disclosed herein can be used for applications in the financial field to determine the impact of system changes, and can also be used for applications in any field other than the financial field to determine the impact of system changes. The application field of the method and device for determining the impact of system changes disclosed herein is not limited.

[0037] It should be noted that in the embodiments of the present disclosure, certain software, components, models and other existing solutions in the industry may be mentioned, which should be regarded as exemplary. Their purpose is only to illustrate the feasibility of implementing the technical solution of the present disclosure, but it does not mean that the applicant has or will necessarily use the solution.

[0038] In the technical solution of the present disclosure, the user information (including but not limited to user personal information, user image information, user device information, such as location information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved are all information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data comply with relevant laws, regulations and standards, take necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation entrances for users to choose to authorize or refuse.

[0039] An embodiment of the present disclosure provides a method for determining the impact of system changes, the method comprising: in response to a change in the system, extracting code change information corresponding to a change point; parsing the code change information, generating a dependency feature of the code, wherein the dependency feature characterizes the dependency between each function, class, and module in the code corresponding to the change point; determining a first impact parameter of the change on the system based on the dependency feature; capturing behavior data of the code change information in a dynamic operating environment in real time, and determining a second impact parameter of the change on the system based on the behavior data; and determining the impact result of the change on the system based on the first impact parameter and the second impact parameter.

[0040] The system change impact determination method provided by the present disclosure extracts the code change information corresponding to the change point when the system changes, and then generates the code dependency characteristics based on the code change information. On the one hand, a more fine-grained static analysis is performed on the code dependency characteristics to obtain the first impact parameter of the change on the system. On the other hand, the behavioral data of the code change information in the operating environment is captured for dynamic analysis to obtain the second impact parameter of the change on the system. Finally, the results of static analysis and dynamic analysis are combined to obtain the final impact result of the change on the system. Static analysis can effectively capture the code structure and dependency, but cannot understand the runtime behavior. After the introduction of dynamic analysis, the behavioral data of the system in the operating environment is fully captured, which makes up for the limitations of static analysis. This makes the change impact analysis not only consider the code level, but also the actual runtime performance. By combining static analysis and dynamic analysis, a more comprehensive and accurate change impact analysis can be provided.

[0041] Figure 1 The application scenario diagram of the change impact determination method, device, electronic device, medium and program product according to the embodiments of the present disclosure is schematically shown.

[0042] like Figure 1 As shown, the application scenario 100 according to this embodiment may include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104, and a server 105. The network 104 is used to provide a medium for a communication link between the first terminal device 101, the second terminal device 102, the third terminal device 103, and the server 105. The network 104 may include various connection types, such as wired, wireless communication links, or optical fiber cables, etc.

[0043] The user can use the first terminal device 101, the second terminal device 102, and the third terminal device 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various communication client applications can be installed on the first terminal device 101, the second terminal device 102, and the third terminal device 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only for example).

[0044] The first terminal device 101, the second terminal device 102, and the third terminal device 103 may be various electronic devices having display screens and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, and the like.

[0045] The server 105 may be a server that provides various services, such as a background management server (only as an example) that provides support for websites browsed by users using the first terminal device 101, the second terminal device 102, and the third terminal device 103. The background management server may analyze and process the received data such as user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal device.

[0046] It should be noted that the system change impact determination method provided in the embodiment of the present disclosure can generally be performed by the server 105. Accordingly, the system change impact determination device provided in the embodiment of the present disclosure can generally be set in the server 105. The system change impact determination method provided in the embodiment of the present disclosure can also be performed by a server or server cluster that is different from the server 105 and can communicate with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105. Accordingly, the system change impact determination device provided in the embodiment of the present disclosure can also be set in a server or server cluster that is different from the server 105 and can communicate with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105.

[0047] It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration. Any number of terminal devices, networks and servers may be provided according to the implementation requirements.

[0048] The following will be based on Figure 1 The scene described by Figure 2~Figure 10 The method for determining the impact of system changes in the disclosed embodiment is described in detail.

[0049] Figure 2 The flowchart of the method for determining the impact of system changes according to an embodiment of the present disclosure is schematically shown.

[0050] like Figure 2 As shown, the system change impact determination method of this embodiment includes operations S210 to S250, and the system change impact determination method can be executed by a server.

[0051] In operation S210 , in response to a system change, code change information corresponding to a change point is extracted.

[0052] In operation S220, the code change information is parsed to generate a dependency feature of the code, wherein the dependency feature represents the dependency between each function, class, and module in the code corresponding to the change point.

[0053] In operation S230 , a first impact parameter of the change on the system is determined according to the dependency characteristics.

[0054] In operation S240, behavior data of the code change information in a dynamic operating environment is captured in real time, and a second impact parameter of the change on the system is determined based on the behavior data.

[0055] In operation S250, the impact result of the change on the system is determined according to the first impact parameter and the second impact parameter.

[0056] When the system software changes, corresponding change information will be generated, such as code modification or function adjustment.

[0057] In the disclosed embodiment, when a system change is detected, the code change information corresponding to the change point is first obtained. The code change information may include a variety of situations, covering all modifications that may occur during the development, maintenance and optimization of the code, such as:

[0058] Code structure changes include: creating or deleting source code files, and renaming files; adding or deleting code structures such as functions, classes, modules, or changing their names; moving code from one file, class, or module to another.

[0059] Logical changes include: changing conditional statements, loop logic or structure; modifying the internal logic of a function, such as changing the algorithm, adding or deleting operation steps; adding new exception capture or processing logic, or modifying existing exception handling methods.

[0060] Interface changes include: changing the parameter list, return value type or function name of a function; adding, deleting or renaming public methods of a class or interface; changing the access level of a class, method or property.

[0061] Dependency changes include: adding, deleting, or updating dependencies on third-party libraries, internal libraries, or modules; changing references to other classes, functions, or variables in the code, such as changing from one module reference to another.

[0062] In the disclosed embodiment, since the code dependency has the most critical impact on the system software, after extracting the code change information, the code change information is parsed to generate the code dependency features, wherein the dependency features characterize the dependency between each function, class and module in the code corresponding to the change point.

[0063] Then, the code is statically analyzed, that is, the first impact parameter of the change on the system is determined based on the dependency characteristics.

[0064] For example, a developer plans to modify a core algorithm function. After receiving a change request, the developer extracts the specific content of the change, including the modified files and code lines. The developer analyzes the specific content of the change, generates the dependency characteristics of the code, and records the calling relationship and dependency relationship between each function, class, and module. For example, if the core algorithm function is called by multiple modules, such as the billing module and the invoice module, the developer performs static analysis, checks the calling level, data flow, and control flow of the code, and marks and records the affected functions, classes, and modules to evaluate the first impact level of this change on the system.

[0065] Since the impact analysis tools in the prior art are limited to static analysis of the code in a non-running state during data processing, and do not capture the behavior data during dynamic runtime for dynamic analysis, the present disclosure further captures the behavior data of the code change information in the running environment, and then performs dynamic analysis based on the behavior data to determine the second impact parameter of the change on the system. For example, a monitoring tool is injected into the test environment to capture function calls, variable states, and exception information, analyze the actual call relationship and data flow during the test execution, evaluate the second impact level of this change on the system, and supplement the static analysis data.

[0066] Finally, the results of static analysis and dynamic analysis are combined, that is, the first impact parameter and the second impact parameter are combined to determine the impact of the change on the system and give an overall risk level of the change (for example, low, medium, or high). Based on the final results, developers provide specific test cases and strategies for modules and functions that need to be tested in focus, guide further optimization and repair, and ensure that the change does not introduce new problems.

[0067] The method for determining the impact of system changes provided by the disclosed embodiment extracts the code change information corresponding to the change point when the system changes, and then generates the dependency characteristics of the code based on the code change information. On the one hand, a more fine-grained static analysis is performed on the dependency characteristics of the code to obtain the first impact parameter of the change on the system. On the other hand, the behavioral data of the code change information in the operating environment is captured for dynamic analysis to obtain the second impact parameter of the change on the system. Finally, the results of static analysis and dynamic analysis are combined to obtain the final impact result of the change on the system. Static analysis can effectively capture the code structure and dependencies, but cannot understand the behavior at runtime. After the introduction of dynamic analysis, the behavior data of the system in the operating environment is fully captured, which makes up for the limitations of static analysis. This allows the change impact analysis to consider not only the code level, but also the actual performance at runtime. By combining static analysis and dynamic analysis, a more comprehensive and accurate change impact analysis can be provided.

[0068] Figure 3The flowchart of generating code dependency features according to code change information according to an embodiment of the present disclosure is schematically shown.

[0069] like Figure 3 As shown, the method for generating code dependency features according to code change information in this embodiment includes operations S310 to S330.

[0070] In operation S310 , the code change information is converted into an abstract syntax tree, wherein the abstract syntax tree is configured to be able to represent the syntax structure and dependency relationship of the code in a tree form.

[0071] In operation S320, the calling relationship of functions, the inheritance relationship of classes, and the reference relationship of modules in the code change information are identified.

[0072] In operation S330 , a dependency feature of the code is generated according to the calling relationship, the inheritance relationship, and the reference relationship.

[0073] The Abstract Syntax Tree (AST) is a tree representation of the abstract syntax structure of the source code. Each node in the tree represents a structure in the source code.

[0074] In the disclosed embodiment, the code change information is converted into an abstract syntax tree (AST) to represent the grammatical structure and dependency relationship of the code. Specifically, it is necessary to first identify the calling relationship of the function, the inheritance relationship of the class, and the reference relationship of the module in the code change information.

[0075] Regarding the calling relationship of functions, during the parsing process, we mainly identify which functions call other functions. For example, if function A calls function B, a directed edge from node A to node B is established in the dependency feature, indicating that function A depends on function B.

[0076] Regarding the inheritance relationship of classes, parse the inheritance relationship between classes in the code, interface implementation relationship, etc. For example, if class A inherits class B, then establish an edge from A to B in the dependency feature.

[0077] Regarding the reference relationship of modules, the dependency relationship between modules or packages is analyzed. For example, after importing module A and calling its method, a dependency edge is formed from the calling module to module A.

[0078] Finally, the calling relationship of functions, the inheritance relationship of classes and the reference relationship of modules are integrated to generate the dependency characteristics of the code.

[0079] In the embodiments of the present disclosure, for different programming languages, information such as grammar rules and standard library functions are collected, a parser is developed and a syntax tree is established to identify key elements in the code (such as function calls, variable references, etc.) and handle dialect differences between different languages.

[0080] According to an embodiment of the present disclosure, an abstract syntax tree (AST) is a tree structure that can accurately represent the syntax structure and dependency relationship of the code. Therefore, converting code change information into an abstract syntax tree (AST) to represent the dependency characteristics of the code can improve the accuracy of static analysis.

[0081] Figure 4 The flowchart of generating code dependency features according to a dependency graph according to an embodiment of the present disclosure is schematically shown.

[0082] like Figure 4 As shown, the method for generating code dependency features according to a dependency graph in this embodiment includes operations S410 to S420.

[0083] In operation S410, a dependency graph of the code is constructed based on the abstract syntax tree according to the calling relationship, the inheritance relationship and the reference relationship.

[0084] In operation S420 , a dependency feature of the code is generated according to a dependency graph, wherein nodes in the dependency graph represent functions, classes, and modules of the code, and edges in the dependency graph represent dependency relationships.

[0085] Once the dependencies in the code are parsed, a dependency graph can be constructed. The dependency graph can be a directed graph, where nodes represent different elements of the code and edges represent dependencies. Specifically:

[0086] Node: represents elements such as functions, classes, modules, etc.

[0087] Edge: represents dependencies, such as function call relationships, class inheritance relationships, and module reference relationships.

[0088] In this embodiment, a code dependency graph is generated based on the parsed function calling relationships, class inheritance relationships, and module reference relationships. If a function is modified, the dependency graph can help find out which other functions or modules call this function, or which other modules this function depends on.

[0089] The generated dependency graph can also be displayed graphically through visualization tools, or stored in a data structure (such as an adjacency matrix or adjacency list) for subsequent analysis. Based on the dependency graph, the dependency characteristics of the code can be intuitively obtained.

[0090] According to an embodiment of the present disclosure, a code dependency graph is generated based on an abstract syntax tree. By traversing the nodes and edges in the graph, the impact scope of the change point can be quickly determined. Especially when the change point is in a core module, its dependency relationship is very complex. The dependency graph can clearly identify which modules are affected.

[0091] Figure 5 The flowchart of determining the first influencing parameter according to the dependency characteristics according to an embodiment of the present disclosure is schematically shown.

[0092] like Figure 5 As shown, the method for determining the first influencing parameter according to the dependency characteristics of this embodiment includes operations S510 to S530.

[0093] In operation S510 , code differences before the change are compared according to dependency characteristics.

[0094] In operation S520 , based on the code difference, an impact parameter of the change on the code complexity and an impact parameter of the change on the code security are identified.

[0095] In operation S530, a first impact parameter of the change on the system is determined according to the impact parameter of complexity and the impact parameter of security.

[0096] In the disclosed embodiment, after the dependency characteristics of the code after the change are obtained, the dependency characteristics of the code before the change are extracted, and the two are compared and analyzed to analyze the differences before and after, so as to facilitate impact analysis and regression checking.

[0097] By performing static analysis after the change, we can determine the impact of the new change on the code structure and dependencies, generate a detailed analysis report for developers to refer to, and verify whether the code modification introduces new dependency issues or violates the previous design specifications. Through the above analysis, we can finally obtain the impact parameters of the change on code complexity and the impact parameters of the change on code security.

[0098] The impact of changes on code complexity parameter is mainly used to evaluate the impact of code changes on code complexity, such as calculating code complexity (such as cyclomatic complexity, logical complexity, etc.), and checking whether code changes lead to a significant increase in complexity. If code changes significantly increase complexity, this indicates an increase in future maintenance costs and even potential problems that are difficult to test and debug.

[0099] The parameter of the impact of changes on code security is mainly used to evaluate whether the code changes have introduced new security vulnerabilities, such as SQL (Structured Query Language) injection, XSS (Cross Site Scripting) vulnerabilities, buffer overflows, etc. Identifying potential security issues that may exist in the code and providing corresponding repair suggestions can ensure that the changes will not affect the security of the system.

[0100] According to the embodiments of the present disclosure, by comparing the code differences before and after the change based on dependency characteristics, it is possible to evaluate the impact of the code change on code complexity and whether new security vulnerabilities are introduced, and to clarify the maintenance cost of the code and possible potential security risks.

[0101] Figure 6 The flowchart of determining the second influencing parameter according to the behavior data according to the embodiment of the present disclosure is schematically shown.

[0102] like Figure 6 As shown, the method for determining the second influencing parameter according to the behavior data of this embodiment includes operations S610 to S630.

[0103] In operation S610, a monitoring tool is configured based on the operating environment to capture behavior data of code change information in a dynamic operating environment in real time.

[0104] In operation S620, based on the behavior data, a parameter affecting the system performance, a parameter affecting the system resource usage, and a parameter affecting the system memory consumption are determined.

[0105] In operation S630, a second impact parameter of the change on the system is determined according to the impact parameter of the system performance, the impact parameter of the system resource usage, and the impact parameter of the system memory consumption.

[0106] Dynamic analysis is the observation and analysis of the behavior of a program while it is running, focusing on the program's actual running path, resource usage, performance, errors, etc. Therefore, it is necessary to first obtain the behavioral data in the running environment.

[0107] In the embodiments of the present disclosure, monitoring tools are configured based on real operating scenarios to capture behavior data in the operating environment in real time, for example, by using performance analyzers, memory analyzers, log systems, etc. to capture runtime information.

[0108] Through dynamic analysis, we can obtain the parameters that affect the system performance, the parameters that affect the system resource usage, and the parameters that affect the system memory consumption.

[0109] The parameters that affect system performance may include, for example, response time, throughput, execution time, CPU usage, I / O wait, etc., which can help identify performance bottlenecks, resource leakage and other issues.

[0110] The parameters affecting the use of system resources by the change may include, for example, confirmation concurrency, unreleased resources, and resource contention.

[0111] Parameters that influence the change on system memory consumption may include, for example, memory loss, memory leaks, pointer errors, and garbage collection issues.

[0112] In addition, dynamic analysis can also identify potentially affected functions and potential regression risks, security vulnerabilities and protection suggestions, and provide targeted regression testing and performance testing suggestions to help the team verify the correctness of the changes.

[0113] According to the embodiments of the present disclosure, by monitoring the behavior data of the system in the operating environment (including transaction data and actual execution flow data), the impact of code changes in the actual operating environment is captured for dynamic analysis, which can capture complex runtime problems that cannot be identified by static analysis, such as runtime performance problems, resource contention problems, and memory consumption problems.

[0114] Figure 7 The flowchart of capturing behavior data according to an embodiment of the present disclosure is schematically shown.

[0115] like Figure 7 As shown, the method for capturing behavior data of this embodiment includes operations S710 to S720.

[0116] In operation S710 , a first monitoring tool is configured based on a test environment to capture simulated behavior data generated by simulating an actual workload.

[0117] In operation S720, a second monitoring tool is configured based on the production environment to capture real behavior data generated during actual operation.

[0118] The test environment is used by testers to perform different types of tests, such as functional testing, integration testing, regression testing, user acceptance testing (UAT), etc. It is mainly used to confirm whether the code functions as expected; to ensure that all functions are correctly implemented and there are no obvious defects before the system is released to the production environment.

[0119] The production environment is the environment where the system or application formally provides services to the outside world. It is used by end users, provides services to real users, and carries actual business processes.

[0120] In the disclosed embodiment, monitoring tools are configured based on the test environment and the production environment respectively to capture simulated behavior data generated by simulating actual workloads and real behavior data generated during actual runtime.

[0121] According to an embodiment of the present disclosure, by collecting behavioral data in different environments, such as a test environment and a production environment, a more comprehensive change impact analysis can be provided. This cross-environment analysis helps to assess the risk of changes in the scenarios of continuous integration and continuous deployment.

[0122] Figure 8 A flowchart of determining a final impact result according to a first impact parameter and a second impact parameter according to an embodiment of the present disclosure is schematically shown.

[0123] like Figure 8 As shown, the method for determining the final impact result according to the first impact parameter and the second impact parameter of this embodiment includes operations S810 to S820.

[0124] In operation S810, the first impact parameter and the second impact parameter are integrated to generate a comprehensive report on the impact of the change on the system.

[0125] In operation S820, according to the comprehensive report, the impact of the change on the complexity and security of the code, as well as the impact of the change on the performance, resource usage, and memory consumption of the system are determined.

[0126] In the disclosed embodiment, after obtaining the results of static analysis and dynamic analysis, that is, the first influencing parameter and the second influencing parameter, the first influencing parameter and the second influencing parameter are summarized and integrated to generate a comprehensive report on the impact of the change on the system.

[0127] The comprehensive report reflects the impact of the changes on code complexity and security, as well as the impact of the changes on system performance, resource usage, and memory consumption.

[0128] In addition, the comprehensive report can also reflect the affected functions of the system and potential regression risks, and provide targeted regression testing and performance testing suggestions to help the team verify the correctness of the changes.

[0129] According to an embodiment of the present disclosure, a comprehensive integrated report is generated by summarizing the results of static analysis and dynamic analysis. Since the comprehensive report covers multiple dimensions such as system performance, security, concurrency and resource management, it is helpful to help the development team fully understand the potential impact of changes on various aspects such as system performance, security and stability, so as to make better decisions and reduce risks.

[0130] Fig. 9A flowchart for configuring a graphical presentation interface according to an embodiment of the present disclosure is schematically shown.

[0131] like Fig. 9 As shown, the method for configuring a graphical display interface in this embodiment includes operations S910 to S930.

[0132] In operation S910, a propagation path and a processing flow of each request between services are obtained.

[0133] In operation S920, a service call chain diagram is generated according to the propagation path and the processing flow, wherein the service call chain diagram is used to display the calling process, response time and status of each operation step of each service from the channel end to the back end.

[0134] In operation S930, a graphical display interface is configured based on the service call chain diagram, wherein the graphical display interface is configured so that the user can freely define the process links from request to response by dragging components, and display the corresponding processing nodes, data flow and conditional branches.

[0135] In the prior art, due to the lack of comprehensive graphical display, it is difficult to clearly present the specific processing flow from the channel end to the back-end service. Therefore, in the embodiment of the present disclosure, an integrated, end-to-end graphical display interface is developed to clearly present the specific processing flow from the channel end to the back-end service for users to select operations, specifically:

[0136] First, an integrated distributed tracing tool is used to collect the propagation path and processing flow of each request between services. By tracking the life cycle of each request in the system, a dynamic call chain diagram is generated to show the calling process, response time and status of each step from the channel end to the back-end service.

[0137] Then, using visualization tools, the dependencies between services, data flows, and request propagation paths are drawn into a topology diagram. The dynamically generated topology diagram can show the interaction between different components in the system (frontend, gateway, backend service, database, etc.).

[0138] Finally, use BPMN (Business Process Modeling and Notation) or UML Activity Diagram for customized process modeling, allowing developers to define a flowchart from request to response by dragging and dropping components, showing specific processing nodes, data flow and conditional branches.

[0139] According to the embodiments of the present disclosure, by configuring a graphical display interface, during the impact analysis process, users can freely define the process links from request to response, display the corresponding processing nodes, data flow and conditional branches, and clearly present the specific processing flow from the channel end to the back-end service, greatly satisfying the user's personalized needs.

[0140] Fig.10 The flowchart of generating code dependency features according to unstructured data according to an embodiment of the present disclosure is schematically shown.

[0141] like Fig.10 As shown, the method for generating code dependency features according to unstructured data in this embodiment includes operations S1010 to S1020.

[0142] In operation S1010, configuration files, database access logs, and API call logs corresponding to the change points are extracted.

[0143] In operation S1020, a dependency feature of the code is generated according to the code change information, the configuration file, the database access log, and the API call log.

[0144] In the prior art, it is necessary to rely on accurate input information, that is, data sources, such as code change records, code base snapshots, etc. If this information is incomplete or wrong, the results of the impact analysis may be biased or inaccurate. Therefore, in the embodiments of the present disclosure, in addition to generating code dependency features based on code change information, unstructured data such as configuration files, database access logs, and API call logs can also be integrated to jointly generate code dependency features.

[0145] According to the embodiments of the present disclosure, more complex dependencies can be identified through more data sources (such as configuration files, database access logs, and unstructured data such as API call logs), such as the impact of cross-service calls and database queries on data. Through such comprehensive analysis, a more complete dependency graph can be provided to reduce omissions.

[0146] Based on the above-mentioned system change impact determination method, the present disclosure also provides a system change impact determination device. Fig.11 The device is described in detail.

[0147] Fig.11 The structural block diagram of the system change impact determination device according to an embodiment of the present disclosure is schematically shown.

[0148] like Fig.11As shown, the system change impact determination device 1100 of this embodiment includes: an extraction module 1110 , a parsing module 1120 , a first determination module 1130 , a second determination module 1140 and a third determination module 1150 .

[0149] The extraction module 1110 is used to extract the code change information corresponding to the change point in response to the system change. In one embodiment, the extraction module 1110 can be used to perform the operation S210 described above, which will not be described in detail here.

[0150] The parsing module 1120 is used to parse the code change information and generate the dependency characteristics of the code, wherein the dependency characteristics characterize the dependency between each function, class and module in the code corresponding to the change point. In one embodiment, the parsing module 1120 can be used to perform the operation S220 described above, which will not be repeated here.

[0151] The first determination module 1130 is used to determine the first impact parameter of the change on the system according to the dependency characteristics. In one embodiment, the first determination module 1130 can be used to perform the operation S230 described above, which will not be described in detail here.

[0152] The second determination module 1140 is used to capture the behavior data of the code change information in a dynamic operating environment in real time, and determine the second impact parameter of the change on the system based on the behavior data. In one embodiment, the second determination module 1140 can be used to perform the operation S240 described above, which will not be repeated here.

[0153] The third determination module 1150 is used to determine the impact of the change on the system according to the first impact parameter and the second impact parameter. In one embodiment, the third determination module 1150 can be used to perform the operation S250 described above, which will not be described in detail here.

[0154] According to the embodiments of the present disclosure, the system change impact determination device extracts the code change information corresponding to the change point when the system changes, and then generates the code dependency characteristics based on the code change information. On the one hand, a more fine-grained static analysis is performed on the code dependency characteristics to obtain the first impact parameter of the change on the system. On the other hand, the behavior data of the code change information in the operating environment is captured for dynamic analysis to obtain the second impact parameter of the change on the system. Finally, the results of the static analysis and dynamic analysis are combined to obtain the final impact result of the change on the system. Static analysis can effectively capture the code structure and dependency, but cannot understand the behavior at runtime. After the introduction of dynamic analysis, the behavior data of the system in the operating environment is fully captured, which makes up for the limitations of static analysis. This allows the change impact analysis to consider not only the code level, but also the actual performance at runtime. By combining static analysis and dynamic analysis, a more comprehensive and accurate change impact analysis can be provided.

[0155] According to an embodiment of the present disclosure, any multiple modules of the extraction module 1110, the parsing module 1120, the first determination module 1130, the second determination module 1140, and the third determination module 1150 can be combined in one module for implementation, or any one of the modules can be split into multiple modules. Alternatively, at least part of the functions of one or more of these modules can be combined with at least part of the functions of other modules and implemented in one module. According to an embodiment of the present disclosure, at least one of the extraction module 1110, the parsing module 1120, the first determination module 1130, the second determination module 1140, and the third determination module 1150 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation methods of software, hardware, and firmware, or in any appropriate combination of any of them. Alternatively, at least one of the extraction module 1110, the parsing module 1120, the first determination module 1130, the second determination module 1140 and the third determination module 1150 may be at least partially implemented as a computer program module, which may perform a corresponding function when executed.

[0156] Fig.12 A block diagram of an electronic device suitable for implementing a method for determining a system change impact according to an embodiment of the present disclosure is schematically shown.

[0157] like Fig.12As shown, the electronic device 1200 according to an embodiment of the present disclosure includes a processor 1201, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1202 or a program loaded from a storage part 1208 to a random access memory (RAM) 1203. The processor 1201 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or a related chipset and / or a dedicated microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 1201 may also include an onboard memory for caching purposes. The processor 1201 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.

[0158] In RAM 1203, various programs and data required for the operation of electronic device 1200 are stored. Processor 1201, ROM 1202 and RAM 1203 are connected to each other via bus 1204. Processor 1201 performs various operations of the method flow according to the embodiment of the present disclosure by executing the program in ROM 1202 and / or RAM 1203. It should be noted that the program can also be stored in one or more memories other than ROM 1202 and RAM 1203. Processor 1201 can also perform various operations of the method flow according to the embodiment of the present disclosure by executing the program stored in the one or more memories.

[0159] According to an embodiment of the present disclosure, the electronic device 1200 may further include an input / output (I / O) interface 1205, which is also connected to the bus 1204. The electronic device 1200 may further include one or more of the following components connected to the input / output (I / O) interface 1205: an input portion 1206 including a keyboard, a mouse, etc.; an output portion 1207 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 1208 including a hard disk, etc.; and a communication portion 1209 including a network interface card such as a LAN card, a modem, etc. The communication portion 1209 performs communication processing via a network such as the Internet. A drive 1210 is also connected to the input / output (I / O) interface 1205 as needed. A removable medium 1211, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1210 as needed, so that a computer program read therefrom is installed into the storage portion 1208 as needed.

[0160] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.

[0161] According to an embodiment of the present disclosure, a computer-readable storage medium may be a non-volatile computer-readable storage medium, for example, may include but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, an apparatus, or a device. For example, according to an embodiment of the present disclosure, a computer-readable storage medium may include the ROM 1202 and / or RAM 1203 described above and / or one or more memories other than ROM 1202 and RAM 1203.

[0162] The embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program contains program code for executing the method shown in the flowchart. When the computer program product is run in a computer system, the program code is used to enable the computer system to implement the method provided by the embodiment of the present disclosure.

[0163] The above functions defined in the system / device of the embodiment of the present disclosure are performed when the computer program is executed by the processor 1201. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.

[0164] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 1209, and / or installed from the removable medium 1211. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0165] In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 1209, and / or installed from the removable medium 1211. When the computer program is executed by the processor 1201, the above functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the system, device, means, module, unit, etc. described above can be implemented by a computer program module.

[0166] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).

[0167] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0168] It will be appreciated by those skilled in the art that the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways, even if such combinations or combinations are not explicitly described in the present disclosure. In particular, without departing from the spirit and teachings of the present disclosure, the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways. All of these combinations and / or combinations fall within the scope of the present disclosure.

[0169] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.

Claims

1. A method for determining the impact of a system change, characterized in that: The method comprises: In response to a system change, extract code change information corresponding to the change point; Parsing the code change information to generate a dependency feature of the code, wherein the dependency feature represents the dependency between each function, class, and module in the code corresponding to the change point; Determining a first impact parameter of the change on the system according to the dependency characteristics; capturing behavior data of the code change information in a dynamic operating environment in real time, and determining a second impact parameter of the change on the system based on the behavior data; An impact result of the change on the system is determined according to the first impact parameter and the second impact parameter.

2. The method according to claim 1, characterized in that The dependency characteristics of the code generated by parsing the code change information include: Converting the code change information into an abstract syntax tree, wherein the abstract syntax tree is configured to represent the syntax structure and dependency relationship of the code in a tree form; Identify the calling relationship of functions, the inheritance relationship of classes, and the reference relationship of modules in the code change information; The dependency characteristics of the code are generated according to the calling relationship, the inheritance relationship and the reference relationship.

3. The method according to claim 2, characterized in that The dependency characteristics of the generated code according to the calling relationship, the inheritance relationship and the reference relationship include: Based on the abstract syntax tree, construct a code dependency graph according to the calling relationship, the inheritance relationship and the reference relationship; According to the dependency graph, dependency features of the code are generated, wherein the nodes in the dependency graph represent functions, classes and modules of the code, and the edges in the dependency graph represent dependency relationships.

4. The method according to claim 1, characterized in that: Determining, according to the dependency feature, a first impact parameter of the change on the system includes: Compare the code differences before and after the change based on the dependency characteristics; According to the code differences, identifying the impact parameters of the change on code complexity and the impact parameters of the change on code security; A first impact parameter of the change on the system is determined according to the impact parameter of the complexity and the impact parameter of the security.

5. The method according to claim 1, characterized in that: The real-time capturing of the behavior data of the code change information in a dynamic operating environment, and determining the second impact parameter of the change on the system according to the behavior data includes: Based on the operating environment configuration monitoring tool, the behavior data of the code change information in the dynamic operating environment is captured in real time; Determining, based on the behavior data, a parameter of the impact of the change on system performance, a parameter of the impact of the change on system resource usage, and a parameter of the impact of the change on system memory consumption; A second impact parameter of the change on the system is determined based on the impact parameter of the system performance, the impact parameter of the system resource usage, and the impact parameter of the system memory consumption.

6. The method according to claim 5, characterized in that The monitoring tool configured based on the operating environment to capture the behavior data of the code change information in the dynamic operating environment in real time includes: configuring a first monitoring tool based on the test environment to capture simulated behavior data generated by simulating actual workloads; Configure the second monitoring tool based on the production environment to capture the real behavior data generated during actual runtime.

7. The method according to claim 1, characterized in that Determining the impact of the change on the system according to the first impact parameter and the second impact parameter includes: fusing the first impact parameter and the second impact parameter to generate a comprehensive report on the impact of the change on the system; Based on the comprehensive report, determine the impact of the change on code complexity and security, as well as the impact of the change on system performance, resource usage, and memory consumption.

8. The method according to claim 1, characterized in that The method further comprises: Get the propagation path and processing flow of each request between services; Generate a service call chain diagram according to the propagation path and the processing flow, wherein the service call chain diagram is used to display the calling process, response time and status of each operation step of each service from the channel end to the back end; A graphical display interface is configured based on the service call chain diagram, wherein the graphical display interface is configured so that the user can freely define the process links from request to response by dragging components, and display the corresponding processing nodes, data flow and conditional branches.

9. The method according to any one of claims 1 to 8, characterized in that: The step of parsing the code change information and generating code dependency features further includes: Extract the configuration files, database access logs, and API call logs corresponding to the change points; A code dependency feature is generated according to the code change information, the configuration file, the database access log, and the API call log.

10. A system change impact determination device, characterized in that: The device comprises: An extraction module, for extracting code change information corresponding to a change point in response to a change in the system; A parsing module, used to parse the code change information and generate a dependency feature of the code, wherein the dependency feature represents the dependency between each function, class and module in the code corresponding to the change point; A first determination module, used to determine a first impact parameter of the change on the system according to the dependency characteristics; A second determination module is used to capture the behavior data of the code change information in a dynamic operating environment in real time, and determine a second impact parameter of the change on the system based on the behavior data; The third determination module is used to determine the impact result of the change on the system according to the first impact parameter and the second impact parameter.

11. An electronic device, comprising: one or more processors; a memory for storing one or more computer programs, It is characterized in that the one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 1 to 9.

12. A computer-readable storage medium having a computer program or instruction stored thereon, characterized in that: When the computer program or instruction is executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.

13. A computer program product comprising a computer program or instructions, characterized in that When the computer program or instruction is executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.