Code modification impact range determination method, device and server

By constructing a dependency tree and call chain, and combining intelligent analysis tools and product requirement documents, descriptive text is generated, solving the problem of difficulty in determining the scope of impact of code modifications and achieving efficient scope of impact analysis.

CN122240066APending Publication Date: 2026-06-19KE COM (BEIJING) TECHNOLOGY CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
KE COM (BEIJING) TECHNOLOGY CO LTD
Filing Date
2026-01-30
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

During the iteration of business code, personnel changes or long periods of neglect may lead to errors in old logic or omissions in old logic. Black-box testing cannot accurately determine the scope of impact of code modifications, which can easily cause online incidents, and reading through the code is extremely time-consuming.

Method used

By receiving code file submission requests, obtaining non-system classes from the modified files, constructing a dependency tree, calling intelligent analysis tools to analyze the dependency tree, generating call chains, identifying modifiers and modification times, and combining this with product requirement documents to generate descriptive text and demonstrate the scope of impact.

Benefits of technology

Accurately determining the scope of impact of code modifications improves accuracy, saves time, and prevents online incidents.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122240066A_ABST
    Figure CN122240066A_ABST
Patent Text Reader

Abstract

This disclosure provides a method, apparatus, and server for determining the scope of impact of code modifications, relating to the field of logic code iteration technology. The method includes: receiving a code file submission request, obtaining the modified file from the submission request, and obtaining non-system classes from the modified file to obtain a dependency tree. Then, an intelligent analysis tool is invoked, and the dependency tree is analyzed using the tool to obtain a call chain. Based on the methods in the call chain, the modifier and modification time corresponding to each method are determined, and a product requirement document is determined based on the modifier and modification time. Finally, a descriptive text is generated using the intelligent analysis tool based on the methods in the call chain, the product requirement document, and the code data in the call chain. This technical solution can accurately determine the scope of impact of modifying the current code, eliminating the need to read through the entire code, thus improving accuracy and saving time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of logic code iteration technology, and in particular to a method, apparatus, and server for determining the scope of influence of code modifications. Background Technology

[0002] Currently, due to the rapid iteration of business operations, the corresponding code logic also needs to be iterated. However, during this iteration process, personnel changes or prolonged periods of neglect can lead to errors in old logic or omissions. Testers primarily perform black-box testing, unable to ascertain the precise impact of these changes, which can easily trigger serious online incidents. Relying solely on thoroughly reading the code to avoid these problems is extremely time-consuming.

[0003] Therefore, there is an urgent need for a method to determine the scope of impact of code modifications, which can accurately determine the scope of impact of modifying the current code, thereby eliminating the need to read through the entire code, improving accuracy and saving time. Summary of the Invention

[0004] To address the aforementioned technical problems, or at least partially address them, this disclosure provides a method, apparatus, and server for determining the scope of influence of code modifications.

[0005] A first aspect of this disclosure provides a method for determining the scope of influence of a code modification, the method comprising: Receive a code file submission request, obtain the modified file from the code file submission request, and obtain the non-system class from the modified file; wherein, the non-system class is used to represent data descriptions and / or message passing functions that are different from those in the original system; In the non-system classes, find the modification classes associated with the modified parts in the modified file, obtain the reference relationships between the modification classes, and obtain a dependency tree; wherein, the dependency tree is used to represent the class relationship tree generated based on the reference relationships between the modification classes; An intelligent analysis tool is invoked, and the dependency tree is analyzed based on the intelligent analysis tool to obtain the call chain; wherein, the call chain is used to characterize the reference relationship between methods in the dependency tree; Based on the methods in the call chain, determine the modifier and modification time corresponding to the method, and determine the product requirement document based on the modifier and modification time; Based on the intelligent analysis tool, descriptive text is generated according to the methods in the call chain, the product requirements document, and the code data in the call chain; wherein, the descriptive text is used to characterize the function of the methods in the call chain and the impact of the modified parts in the modification file on the function of the methods in the call chain.

[0006] In one example, before invoking the intelligent analysis tool and analyzing the dependency tree based on the intelligent analysis tool to obtain the call chain, the method includes: Based on the dependency tree, obtain the source code files of the dependency tree from the source code management platform; The step of analyzing the dependency tree based on the intelligent analysis tool to obtain the call chain includes: The intelligent analysis tool analyzes the dependency tree and the modified and original files corresponding to the source code files of the dependency tree to obtain the call chain.

[0007] In one example, after analyzing the dependency tree and the modified and original files corresponding to the source code files of the dependency tree based on the intelligent analysis tool to obtain the call chain, the method further includes: The code coverage tool sets the call records of the methods in the call chain to empty, and generates a data report of the call chain, which is then displayed on a preset interface; wherein, the preset interface is provided to the user.

[0008] In one example, determining the modifier and modification time corresponding to the method based on the method in the call chain includes: Obtain the line number of the method in the call chain, and retrieve the modifier and modification time corresponding to the line number from the source code management platform; The process of determining the product requirements document based on the modifier and the modification time includes: In the task management platform, based on the modifier and the modification time, the product requirement document associated with the modifier and the modification time is obtained.

[0009] In one example, after the intelligent analysis tool generates descriptive text based on the methods in the call chain, the product requirements document, and the code data in the call chain, the method includes: Generate the result image based on the methods in the call chain; The resulting image and the descriptive text are displayed on a preset interface; wherein the preset interface is provided to the user.

[0010] In one example, the code file submission request includes at least one of the following: the code file submission time, the code file submission description information, and the modified file of the code file.

[0011] A second aspect of this disclosure provides an apparatus for determining the scope of influence of a code modification, the apparatus comprising: The first acquisition module is used to receive a code file submission request, acquire the modified file in the code file submission request, and acquire the non-system class in the modified file; wherein, the non-system class is used to characterize data descriptions and / or message transmission functions that are different from those in the original system; The second acquisition module is used to search for the modification class associated with the modified part in the modified file in the non-system class, obtain the reference relationship between the modification classes, and obtain a dependency tree; wherein, the dependency tree is used to represent the class relationship tree generated based on the reference relationship between the modification classes; An analysis module is used to invoke an intelligent analysis tool and analyze the dependency tree based on the intelligent analysis tool to obtain a call chain; wherein, the call chain is used to characterize the reference relationship between methods in the dependency tree; The determination module is used to determine the modifier and modification time corresponding to the method in the call chain, and to determine the product requirement document based on the modifier and modification time. The generation module is used to generate descriptive text based on the methods in the call chain, the product requirements document, and the code data in the call chain, using the intelligent analysis tool; wherein, the descriptive text is used to characterize the function of the methods in the call chain and the impact of the modified parts in the modification file on the function of the methods in the call chain.

[0012] In one example, before invoking the intelligent analysis tool and analyzing the dependency tree based on the intelligent analysis tool to obtain the call chain, the apparatus includes: The third acquisition module is used to acquire the source code files of the dependency tree from the source code management platform according to the dependency tree; The analysis module is specifically used to: analyze the dependency tree and the modified and original files corresponding to the source code files of the dependency tree based on the intelligent analysis tool to obtain the call chain.

[0013] In one example, after the intelligent analysis tool analyzes the dependency tree and the modified and original files corresponding to the source code files of the dependency tree to obtain the call chain, the device further includes: The first display module is used to empty the call records of the methods in the call chain based on the code coverage tool, and to generate a data report of the call chain and display it on a preset interface; wherein, the preset interface is provided to the user.

[0014] In one example, the determining module is specifically used for: Obtain the line number of the method in the call chain, and retrieve the modifier and modification time corresponding to the line number from the source code management platform; In the task management platform, based on the modifier and the modification time, the product requirement document associated with the modifier and the modification time is obtained.

[0015] In one example, after the intelligent analysis tool generates descriptive text based on the methods in the call chain, the product requirements document, and the code data in the call chain, the apparatus includes: The processing module is used to generate a result image based on the methods in the call chain; The second display module is used to display the result image and the description text on a preset interface; wherein the preset interface is provided to the user.

[0016] In one example, the code file submission request includes at least one of the following: the code file submission time, the code file submission description information, and the modified file of the code file.

[0017] A third aspect of this disclosure provides a server comprising a processor and a memory, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor performs the method of the first aspect described above.

[0018] A fourth aspect of this disclosure provides a computer-readable storage medium storing a computer program that, when executed by a processor, can implement the method of the first aspect described above.

[0019] A fifth aspect of this disclosure provides a computer program product including a computer program that, when executed by a processor, implements the method of the first aspect.

[0020] This disclosure provides a method, apparatus, and server for determining the scope of impact of code modifications. The method includes: receiving a code file submission request; obtaining the modified file from the code file submission request; obtaining non-system classes from the modified file; searching for modified classes associated with the modified portion of the modified file within the non-system classes; obtaining the reference relationships between the modified classes to obtain a dependency tree. Then, an intelligent analysis tool is invoked, and the dependency tree is analyzed based on the intelligent analysis tool to obtain a call chain. Based on the methods in the call chain, the modifier and modification time corresponding to the methods are determined, and a product requirement document is determined based on the modifier and modification time. Based on the intelligent analysis tool, descriptive text is generated according to the methods in the call chain, the product requirement document, and the code data in the call chain. Using this technical solution, the scope of impact resulting from modifying the current code can be accurately determined without needing to read through the entire code, thus improving accuracy and saving time. Attached Figure Description

[0021] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure.

[0022] To more clearly illustrate the technical solutions in the embodiments of this disclosure or the prior art, the accompanying drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0023] Figure 1 This is a flowchart illustrating a method for determining the scope of influence of code modification provided in an embodiment of this disclosure; Figure 2 This is a schematic diagram of a dependency tree provided in an embodiment of this disclosure; Figure 3 This is a schematic diagram of a call chain provided in an embodiment of this disclosure; Figure 4 This is a flowchart illustrating a method for determining the scope of influence of code modification provided in an embodiment of this disclosure; Figure 5 This is a schematic diagram of a device for determining the scope of influence of code modification provided in an embodiment of this disclosure; Figure 6 This is a schematic diagram of the structure of a server according to an embodiment of this disclosure. Detailed Implementation

[0024] To better understand the above-mentioned objectives, features, and advantages of this disclosure, the solutions disclosed herein will be further described below. It should be noted that, unless otherwise specified, the embodiments and features described herein can be combined with each other.

[0025] Numerous specific details are set forth in the following description in order to provide a full understanding of this disclosure, but this disclosure may also be implemented in other ways different from those described herein; obviously, the embodiments in the specification are only some, and not all, of the embodiments of this disclosure.

[0026] Figure 1 This is a flowchart illustrating a method for determining the scope of impact of code modification according to an embodiment of this disclosure. This method can be executed by a server. The server can be exemplarily understood as a device such as a mobile phone, tablet computer, laptop computer, desktop computer, or smart TV. Figure 1 As shown, the method provided in this embodiment includes the following steps: S101. Receive a code file submission request, obtain the modified file from the code file submission request, and obtain the non-system class from the modified file; wherein, the non-system class is used to represent data descriptions and / or message transmission functions that are different from those in the original system.

[0027] In one example, a code file submission request is generated by a user after modifying the original file on the source code management platform and then submitting it to the server. In this example, the code file submission request includes at least one of the following: code file submission time, code file submission description information, and the modified code file. After receiving the code file submission request, the server retrieves the modified file from the request. After retrieving the modified file, it retrieves the non-system classes from the modified file. These non-system classes represent data descriptions and / or message-transmitting functions that differ from those in the original system. The reason for searching for non-system classes is that only non-system classes can contain modified parts. Data descriptions and / or message-transmitting functions in the original system cannot be modified.

[0028] S102. In non-system classes, find the modified classes associated with the modified parts in the modified file, obtain the reference relationships between the modified classes, and obtain the dependency tree; wherein, the dependency tree is used to represent the class relationship tree generated based on the reference relationships between the modified classes.

[0029] In one example, the modification class is a non-system class associated with the modified portion of the file. These different modification classes may have reference relationships; for example, there could be modification classes A, B, and C, with modification class A referencing modification class B, and modification class B referencing modification class C. In this embodiment, the dependency tree is a class relationship tree generated based on the reference relationships between modification classes. For a clearer explanation, please refer to [link to relevant documentation]. Figure 2 This diagram illustrates a dependency tree. For example, class C modifies the code data of a pop-up window, changing it from not closing automatically to closing after 3 seconds. However, class B contains a coupon pop-up window, which should not be changed to close after 3 seconds. Therefore, class B needs to be located.

[0030] S103. Call the intelligent analysis tool and analyze the dependency tree based on the intelligent analysis tool to obtain the call chain; wherein, the call chain is used to represent the reference relationship between methods in the dependency tree.

[0031] In one example, the intelligent analysis tool is a compliance analysis tool built into the server. Specifically, the intelligent analysis tool is a data analysis model trained on historical data, which can be a semantic analysis model. Furthermore, this intelligent analysis tool can be used to analyze dependency trees.

[0032] By invoking intelligent analysis tools and analyzing the dependency tree, a call chain is obtained, which represents the reference relationships between methods in the dependency tree. For a clearer explanation, please refer to [link to relevant documentation]. Figure 3 The diagram shows a call chain.

[0033] S104. Based on the methods in the call chain, determine the modifier and modification time of the method, and determine the product requirements document based on the modifier and modification time.

[0034] In one example, the product requirements document characterizes the functionality to be implemented by the methods in the call chain. The modifier can be the user ID that modified the method in the call chain. The modification time can also be the user ID that modified the method in the call chain.

[0035] S105. Based on the intelligent analysis tool, generate descriptive text according to the methods in the call chain, the product requirement document, and the code data in the call chain; wherein, the descriptive text is used to characterize the function of the methods in the call chain and the impact of the modified parts in the modification file on the function of the methods in the call chain.

[0036] In this embodiment, intelligent analysis tools are used to obtain the methods, product requirement documents, and code data in the call chain. Then, descriptive text is generated based on the methods, product requirement documents, and code data in the call chain. The descriptive text can be a short text.

[0037] This disclosure provides a method for determining the scope of impact of code modifications. The method includes: receiving a code file submission request; obtaining the modified file from the submission request; obtaining non-system classes from the modified file; searching for modified classes associated with the modified portion of the modified file within the non-system classes; obtaining the reference relationships between the modified classes to obtain a dependency tree; invoking an intelligent analysis tool; and analyzing the dependency tree using the intelligent analysis tool to obtain a call chain. Based on the methods in the call chain, the modifier and modification time corresponding to each method are determined, and the product requirement document is determined based on the modifier and modification time. The intelligent analysis tool then generates descriptive text based on the methods in the call chain, the product requirement document, and the code data in the call chain. This technical solution can accurately determine the scope of impact of modifying the current code, eliminating the need to read through the entire code, thus improving accuracy and saving time.

[0038] Figure 4 This illustration shows a flowchart of a method for determining the scope of influence of code modification according to an embodiment of this disclosure. This disclosure optimizes the above embodiments and can be combined with various optional solutions from one or more of the above embodiments.

[0039] like Figure 4 As shown, the method for determining the scope of impact of this code modification may include the following steps: S401. Receive a code file submission request, obtain the modified file from the code file submission request, and obtain the non-system class from the modified file; wherein, the non-system class is used to represent data descriptions and / or message passing functions that are different from those in the original system.

[0040] In one example, this step can be found in step S101, and will not be repeated here.

[0041] S402. In non-system classes, find the modification classes associated with the modified parts in the file, obtain the reference relationships between the modification classes, and obtain the dependency tree; wherein, the dependency tree is used to represent the class relationship tree generated based on the reference relationships between the modification classes.

[0042] In one example, this step can be found in step S102, and will not be repeated here.

[0043] S403. Based on the dependency tree, obtain the source code files of the dependency tree from the source code management platform.

[0044] In one example, the source code management platform could be the Gerrit platform. The source code files involved in the dependency tree are retrieved from the Gerrit platform; these source code files are the original code files.

[0045] S404. Based on intelligent analysis tools, the dependency tree and the modified and original files corresponding to the source code files of the dependency tree are analyzed to obtain the call chain; wherein, the call chain is used to characterize the reference relationship between methods in the dependency tree.

[0046] In one example, by comparing the dependency tree with the modified and original source files corresponding to the source code files of the dependency tree, the reference relationships between methods in the dependency tree can be obtained.

[0047] In one example, after analyzing the dependency tree and the corresponding modified and original source code files based on the dependency tree using intelligent analysis tools to obtain the call chain, the method also includes: The code coverage tool sets the method call records in the call chain to empty and generates a data report of the call chain, which is then displayed on a preset interface; the preset interface is provided to the user.

[0048] In one example, the code coverage tool is used to mark whether code files have been inspected. Since all code files have already been inspected before the modifications in the code file submission request, but because the method call records in the call chain need to be re-inspected after the modified files are generated, the code coverage tool needs to clear the method call records in the call chain and generate a data report of the call chain, which is then displayed on a preset interface. This preset interface is the interface used by users to view the code.

[0049] S405. Obtain the line number of the method in the call chain, and retrieve the modifier and modification time corresponding to the line number from the source code management platform.

[0050] In one example, the line number of the method in the call chain is first determined, for example, line number 20. Then, the modifier and modification time corresponding to the line number are obtained from the source code management platform. The modifier is AFG and the modification time is 4:38 AM on April 20, 2023.

[0051] S406. In the task management platform, retrieve the product requirement document associated with the modifier and modification time based on the modifier and modification time.

[0052] In one example, the task management platform could be the ones management platform. This platform stores the modifier, modification time, and product requirement documents. Therefore, the modifier and modification time are located in the task management platform, and then the product requirement document associated with the modifier and modification time is found. For example, product requirement document A is found in the ones management platform, associated with modifier AFG and modification time April 20, 2023, at 4:38 AM.

[0053] S407. Based on the intelligent analysis tool, generate descriptive text according to the methods in the call chain, the product requirement document, and the code data in the call chain; wherein, the descriptive text is used to characterize the function of the methods in the call chain and the impact of the modified parts in the modification file on the function of the methods in the call chain.

[0054] In one example, after generating descriptive text based on methods in the call chain, product requirements documents, and code data in the call chain using an intelligent analysis tool, the method includes: Generate the result image based on the methods in the call chain; Display the resulting image and descriptive text on a preset interface; the preset interface is provided to the user.

[0055] In one example, the methods in the call chain are processed to generate a result image, which can be in the form of a table or chart. The result image and descriptive text are then displayed on a preset interface.

[0056] This disclosure provides a method for determining the scope of impact of code modifications. The method includes: obtaining the source code files of the dependency tree from a source code management platform; analyzing the dependency tree and the corresponding modified and original files based on the source code files using an intelligent analysis tool to obtain a call chain; obtaining the line numbers of methods in the call chain; obtaining the modifiers and modification times corresponding to the line numbers from the source code management platform; obtaining the product requirement document associated with the modifiers and modification times from a task management platform based on the modifiers and modification times; and generating descriptive text based on the methods in the call chain, the product requirement document, and the code data in the call chain using an intelligent analysis tool. This technical solution leverages the semantic understanding capabilities of intelligent analysis tools to more accurately deduce the impact and role of code on business operations, extracting key information to assist decision-making.

[0057] Figure 5 This is a schematic diagram of a device for determining the scope of influence of code modification according to an embodiment of this disclosure. This device can be understood as the aforementioned server or a functional module within the aforementioned server. Figure 5 As shown, the device 50 for determining the scope of influence of the code modification includes: The first acquisition module 501 is used to receive a code file submission request, acquire the modified file in the code file submission request, and acquire the non-system class in the modified file; wherein, the non-system class is used to represent data descriptions and / or message transmission functions that are different from those in the original system; The second acquisition module 502 is used to find the modification class associated with the modified part of the modified file in non-system classes, obtain the reference relationship between the modification classes, and obtain the dependency relationship tree; wherein, the dependency relationship tree is used to represent the class relationship tree generated based on the reference relationship between the modification classes; Analysis module 503 is used to call intelligent analysis tools and analyze the dependency tree based on the intelligent analysis tools to obtain the call chain; wherein, the call chain is used to represent the reference relationship between methods in the dependency tree; The determination module 504 is used to determine the modifier and modification time of the method based on the method in the call chain, and to determine the product requirements document based on the modifier and modification time. The generation module 505 is used to generate descriptive text based on the methods in the call chain, the product requirement document, and the code data in the call chain using an intelligent analysis tool. The descriptive text is used to characterize the function of the methods in the call chain and the impact of the modified parts in the modification file on the function of the methods in the call chain.

[0058] In one example, before invoking the intelligent analysis tool and analyzing the dependency tree based on the intelligent analysis tool to obtain the call chain, device 50 includes: The third acquisition module 506 is used to acquire the source code files of the dependency tree from the source code management platform based on the dependency tree; Analysis module 503 is specifically used to: analyze the dependency tree and the modified and original files corresponding to the source code files of the dependency tree based on intelligent analysis tools to obtain the call chain.

[0059] In one example, after analyzing the dependency tree and the modified and original source files corresponding to the dependency tree's source code files using intelligent analysis tools to obtain the call chain, device 50 further includes: The first display module 507 is used to clear the call records of methods in the call chain based on the code coverage tool, and to generate a data report of the call chain and display it on the preset interface; wherein, the preset interface is provided to the user.

[0060] In one example, module 504 is identified as being used for: Get the line number of the method in the call chain, and get the modifier and modification time corresponding to the line number from the source code management platform; In the task management platform, retrieve the product requirement documents associated with the modifier and modification time based on the modifier and modification time.

[0061] In one example, after generating descriptive text based on methods in the call chain, product requirements documents, and code data in the call chain using an intelligent analysis tool, device 50 includes: Processing module 508 is used to generate result images based on the methods in the call chain; The second display module 509 is used to display the result image and descriptive text on a preset interface; wherein the preset interface is provided to the user.

[0062] In one example, a code file submission request includes at least one of the following: code file submission time, code file submission description information, and modified code file.

[0063] The apparatus provided in this embodiment can execute the methods of any of the above embodiments, and its execution method and beneficial effects are similar, so they will not be described again here.

[0064] This disclosure also provides a server, which includes: a memory storing a computer program; and a processor for executing the computer program, wherein when the computer program is executed by the processor, it can implement the methods of any of the above embodiments.

[0065] Example, Figure 6 This is a schematic diagram of the structure of a server according to an embodiment of this disclosure. See below for details. Figure 6 The diagram illustrates a structural schematic suitable for implementing the server 1000 in the embodiments of this disclosure. The server 1000 in the embodiments of this disclosure may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 6 The server shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments disclosed herein.

[0066] like Figure 6As shown, server 1000 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 1001, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 1002 or a program loaded from storage device 1008 into random access memory (RAM) 1003. RAM 1003 also stores various programs and data required for the operation of server 1000. Processing device 1001, ROM 1002, and RAM 1003 are interconnected via bus 1004. Input / output (I / O) interface 1005 is also connected to bus 1004.

[0067] Typically, the following devices can be connected to I / O interface 1005: input devices 1006 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 1007 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 1008 including, for example, magnetic tapes, hard disks, etc.; and communication devices 1009. Communication device 1009 allows server 1000 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 6 A server 1000 with various devices is shown, but it should be understood that it is not required to implement or have all of the devices shown. More or fewer devices may be implemented or have alternatively.

[0068] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication device 1009, or installed from storage device 1008, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of embodiments of this disclosure.

[0069] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.

[0070] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.

[0071] The aforementioned computer-readable medium may be included in the aforementioned server; or it may exist independently and not assembled into the server.

[0072] The aforementioned computer-readable medium carries one or more programs. When these programs are executed by the server, the server causes the server to: receive a code file submission request, obtain the modified file from the code file submission request, and obtain non-system classes from the modified file; wherein, the non-system classes are used to represent data descriptions and / or message passing functions that are different from those in the original system; search for modified classes associated with the modified parts in the modified file among the non-system classes, obtain the reference relationships between the modified classes, and obtain a dependency tree; wherein, the dependency tree is used to represent the class relationship tree generated based on the reference relationships between the modified classes; invoke an intelligent analysis tool, and analyze the dependency tree based on the intelligent analysis tool to obtain a call chain; wherein, the call chain is used to represent the reference relationships between methods in the dependency tree; determine the modifier and modification time corresponding to the method based on the method in the call chain, and determine the product requirement document based on the modifier and modification time; generate descriptive text based on the methods in the call chain, the product requirement document, and the code data in the call chain using the intelligent analysis tool; wherein, the descriptive text is used to represent the functionality of the methods in the call chain and the impact of the modified parts in the modified file on the functionality of the methods in the call chain.

[0073] Computer program code for performing the operations of this disclosure can be written in one or more programming languages ​​or a combination thereof, including but not limited to object-oriented programming languages ​​such as Java, Smalltalk, and C++, as well as conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0074] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0075] The units described in the embodiments of this disclosure can be implemented in software or hardware. The names of the units are not, in some cases, intended to limit the specific unit.

[0076] The functions described above in this document can be performed at least in part by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), system-on-a-chip (SoCs), complex programmable logic devices (CPLDs), and so on.

[0077] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0078] This disclosure also provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, it can implement the methods of any of the above embodiments. The execution method and beneficial effects are similar, and will not be described again here.

[0079] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0080] The above description is merely a specific embodiment of this disclosure, enabling those skilled in the art to understand or implement it. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this disclosure. Therefore, this disclosure is not to be limited to the embodiments described herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A method for determining the scope of influence of code modification, characterized in that, include: Receive a code file submission request, obtain the modified file from the code file submission request, and obtain the non-system class from the modified file; wherein, the non-system class is used to represent data descriptions and / or message passing functions that are different from those in the original system; In the non-system classes, find the modification classes associated with the modified parts in the modified file, obtain the reference relationships between the modification classes, and obtain a dependency tree; wherein, the dependency tree is used to represent the class relationship tree generated based on the reference relationships between the modification classes; An intelligent analysis tool is invoked, and the dependency tree is analyzed based on the intelligent analysis tool to obtain the call chain; wherein, the call chain is used to characterize the reference relationship between methods in the dependency tree; Based on the methods in the call chain, determine the modifier and modification time corresponding to the method, and determine the product requirement document based on the modifier and modification time; Based on the intelligent analysis tool, descriptive text is generated according to the methods in the call chain, the product requirements document, and the code data in the call chain; wherein, the descriptive text is used to characterize the function of the methods in the call chain and the impact of the modified parts in the modification file on the function of the methods in the call chain.

2. The method according to claim 1, characterized in that, Before invoking the intelligent analysis tool and analyzing the dependency tree based on the intelligent analysis tool to obtain the call chain, the method includes: Based on the dependency tree, obtain the source code files of the dependency tree from the source code management platform; The step of analyzing the dependency tree based on the intelligent analysis tool to obtain the call chain includes: The intelligent analysis tool analyzes the dependency tree and the modified and original files corresponding to the source code files of the dependency tree to obtain the call chain.

3. The method according to claim 2, characterized in that, After analyzing the dependency tree and the modified and original files corresponding to the source code files of the dependency tree based on the intelligent analysis tool to obtain the call chain, the method further includes: The code coverage tool sets the call records of the methods in the call chain to empty, and generates a data report of the call chain, which is then displayed on a preset interface; wherein, the preset interface is provided to the user.

4. The method according to claim 1, characterized in that, The step of determining the modifier and modification time corresponding to the method based on the method in the call chain includes: Obtain the line number of the method in the call chain, and retrieve the modifier and modification time corresponding to the line number from the source code management platform; The process of determining the product requirements document based on the modifier and the modification time includes: In the task management platform, based on the modifier and the modification time, the product requirement document associated with the modifier and the modification time is obtained.

5. The method according to claim 1, characterized in that, After the intelligent analysis tool generates descriptive text based on the methods in the call chain, the product requirements document, and the code data in the call chain, the method includes: Generate the result image based on the methods in the call chain; The resulting image and the descriptive text are displayed on a preset interface; wherein the preset interface is provided to the user.

6. The method according to claim 1, characterized in that, The code file submission request includes at least one of the following: the code file submission time, the code file submission description information, and the modified file of the code file.

7. A device for determining the scope of influence of code modification, characterized in that, include: The first acquisition module is used to receive a code file submission request, acquire the modified file in the code file submission request, and acquire the non-system class in the modified file; wherein, the non-system class is used to characterize data descriptions and / or message transmission functions that are different from those in the original system; The second acquisition module is used to search for the modification class associated with the modified part in the modified file in the non-system class, obtain the reference relationship between the modification classes, and obtain a dependency tree; wherein, the dependency tree is used to represent the class relationship tree generated based on the reference relationship between the modification classes; An analysis module is used to invoke an intelligent analysis tool and analyze the dependency tree based on the intelligent analysis tool to obtain a call chain; wherein, the call chain is used to characterize the reference relationship between methods in the dependency tree; The determination module is used to determine the modifier and modification time corresponding to the method in the call chain, and to determine the product requirement document based on the modifier and modification time. The generation module is used to generate descriptive text based on the methods in the call chain, the product requirements document, and the code data in the call chain, using the intelligent analysis tool; wherein, the descriptive text is used to characterize the function of the methods in the call chain and the impact of the modified parts in the modification file on the function of the methods in the call chain.

8. A server, characterized in that, include: A processor and a memory, wherein the memory stores a computer program that, when executed by the processor, performs the method of any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The storage medium stores a computer program that, when executed by a processor, implements the method as described in any one of claims 1-6.

10. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the method as described in any one of claims 1-6.