Separated project development method and system, storage medium and electronic device

By splitting large projects into multiple independent sub-projects and realizing communication between sub-projects, the problems of low development efficiency and code duplication in the traditional development model are solved, and development efficiency and system stability are improved.

CN119806494AActive Publication Date: 2025-04-11SHANGHAI ZHUODAO MEDICAL TECH CO LTD +1
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202510278591.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-10
Publication Date
2025-04-11
Estimated Expiration
2045-03-10

AI Technical Summary

Technical Problem

Traditional software development models lead to low development efficiency and serious code duplication in large and complex projects, increasing maintenance costs.

Method used

By splitting the project into multiple independent sub-projects and realizing communication and data interaction between sub-projects through preset communication protocols, a separate project development method is adopted.

Benefits of technology

It significantly improves the project's development efficiency, code reusability, testing efficiency and system stability, and solves the problem of low development efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119806494A_ABST
    Figure CN119806494A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a separated project development method and system, a storage medium and an electronic device, and relates to the technical field of project development technologies. The method comprises the following steps: acquiring project information; performing project splitting on the target project according to a preset separation rule to obtain a plurality of sub-projects; and communicating the sub-project with a preset first APP through a preset communication protocol, and performing data interaction with the sub-project through the first APP. Through the method and the device, the problem of low project development efficiency is solved, and the effect of improving the project development efficiency is further achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to the field of project development, and in particular, to a separate project development method and system, a storage medium, and an electronic device. Background Art

[0002] In modern software development practice, as the scale of projects continues to expand and the complexity increases, the traditional development model faces many challenges. Traditional software development usually develops and tests the project as a whole. Although this approach may be effective in small projects, its drawbacks gradually emerge in large and complex projects. For example, between different projects, although there are modules with similar functions, the lack of effective modularization and reuse mechanisms leads to the emergence of a large amount of duplicate code. This phenomenon not only reduces development efficiency, but also increases maintenance costs.

[0003] There is currently no better solution to the above problems. Summary of the invention

[0004] The embodiments of the present invention provide a separate project development method and system, a storage medium, and an electronic device to at least solve the problem of low development efficiency in related technologies.

[0005] According to an embodiment of the present invention, a separate project development method is provided, comprising: Acquire project information, wherein the project information includes project information of a target project to be processed; Splitting the target project according to a preset separation rule to obtain a plurality of sub-projects; The sub-project is connected to a preset first APP through a preset communication protocol, and data interaction is performed with the sub-project through the first APP.

[0006] In an exemplary embodiment, the data interaction with the sub-project through the first APP includes: Get interactive instructions; Parsing the interaction instruction through the first APP to obtain interaction information, wherein the interaction information includes interaction object information and interaction action information, wherein the interaction object includes the sub-project; The interactive action information is sent to the interactive object according to the interactive object information, so as to instruct the interactive object to perform an interactive action according to the interactive action information.

[0007] In an exemplary embodiment, the communication protocol at least includes a Socket communication protocol.

[0008] In an exemplary embodiment, splitting the target project according to a preset separation rule to obtain a plurality of sub-projects includes: Performing project analysis on the target project to obtain the project information, wherein the project information includes at least any one of engineering reuse, project interface quantity, general protocol quantity, and mechanism dependency value; Performing demand matching processing according to the project information to determine sub-project information, wherein the sub-project information includes at least one of a project boundary and a project function; Based on the sub-project information and the separation rule, an independent project construction process is performed on the project object in the target project to obtain the sub-project.

[0009] In an exemplary embodiment, after performing independent project construction processing on the project object in the target project based on the sub-project information and the separation rule to obtain the sub-project, the method further includes: Perform engineering tests on the sub-projects to determine the functional coverage information, interface interaction information, and stability information of the sub-projects; Constructing a first test matrix based on the function coverage information, the interface interaction information, and the stability information, and constructing a second test matrix based on the sub-project information; A correlation value between the first test matrix and the second test matrix is ​​calculated, and if the correlation value meets a preset condition, it is determined that the sub-project is normal; otherwise, it is determined that the sub-project is abnormal.

[0010] According to another embodiment of the present invention, there is provided a separate project development system, comprising: A project information acquisition module, used to acquire project information, wherein the project information includes project information of a target project to be processed; A project splitting module is used to split the target project into several sub-projects according to a preset separation rule; The interaction module is used to connect the sub-project with a preset first APP through a preset communication protocol, and to perform data interaction with the sub-project through the first APP.

[0011] In an exemplary embodiment, the data interaction with the sub-project through the first APP includes: Get interactive instructions; Parsing the interaction instruction through the first APP to obtain interaction information, wherein the interaction information includes interaction object information and interaction action information, wherein the interaction object includes the sub-project; The interactive action information is sent to the interactive object according to the interactive object information, so as to instruct the interactive object to perform an interactive action according to the interactive action information.

[0012] In an exemplary embodiment, the communication protocol at least includes a Socket communication protocol.

[0013] According to yet another embodiment of the present invention, a computer-readable storage medium is provided, in which a computer program is stored, wherein the computer program is configured to execute the steps of any one of the above method embodiments when run.

[0014] According to yet another embodiment of the present invention, there is provided an electronic device, including a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.

[0015] Through the present invention, since the project is split into multiple independent sub-projects and communication and data interaction between the sub-projects are realized through a preset communication protocol, the development efficiency, code reusability, testing efficiency and system stability of the project can be significantly improved. Therefore, the problem of low development efficiency can be solved, and the effect of improving project development efficiency can be achieved. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] Figure 1 is a flow chart of a separate project development method according to Example 1 of an embodiment of the present invention; Figure 2 4 is a structural block diagram of a separated project development system according to Example 1 of an embodiment of the present invention. DETAILED DESCRIPTION

[0017] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments.

[0018] In the following, the terms "first", "second", etc. are used for descriptive purposes only and are not to be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first", "second", etc. may explicitly or implicitly include one or more of the features. In the description of this application, unless otherwise specified, "plurality" means two or more.

[0019] In addition, in the present application, directional terms such as "up", "down", "left" and "right" may be defined including but not limited to the orientation relative to the schematic placement of the components in the drawings. It should be understood that these directional terms may be relative concepts, which are used for relative description and clarification, and may change accordingly according to the change in the orientation of the components in the drawings.

[0020] In this application, unless otherwise specified or limited, the term "connection" should be understood in a broad sense. For example, "connection" can be a fixed connection, a detachable connection, or an integral connection; it can be a direct connection or an indirect connection through an intermediate medium. In addition, the term "coupling" can be a way of achieving electrical connection for signal transmission.

[0021] As used herein, "about," "substantially," or "approximately" includes the stated value and an average value that is within an acceptable range of variation from the particular value as determined by one of ordinary skill in the art taking into account the measurements in question and the errors associated with the measurement of the particular quantity (i.e., the limitations of the measurement system).

[0022] In software development practice, code duplication is common. Although developers usually improve code reusability by encapsulating functions or methods, there are still cases where local codes are highly similar between different projects. Faced with this challenge, how to effectively reduce cross-project code duplication and improve code reusability has become a key issue in improving development efficiency.

[0023] Code duplication between different projects not only weakens the maintainability of the code, but also significantly reduces development efficiency. Duplicated code means more workload and the risk of having to update multiple places simultaneously when modifying one place, which increases the probability of errors and maintenance costs.

[0024] Example 1 To solve the above problems, a separate project development method is provided in this embodiment. Figure 1 is a flow chart of a separate project development method according to an embodiment of the present invention. Figure 1 As shown, the process includes the following steps: Step S11, obtaining project information, wherein the project information includes project information of a target project to be processed; In this embodiment, the name, size, function and other information of the target project to be separated are first determined to facilitate subsequent engineering separation based on the project information.

[0025] Among them, project information includes key information such as the project name, goals, requirements, resources (software and hardware resources), schedule, project functions, project size, the programming language, framework, database, middleware, etc.

[0026] For example, taking a project called ArmGuiderPro (upper limb rehabilitation training) as an example, the project includes six functional modules: UI (User Interface), GAME, EyeTracker, API (Application Programming Interface), Driver, and APP. The functional information and module information corresponding to these functional modules are part of the project information.

[0027] Or take the BalMaster (balance control training) project as an example. The project includes five functional modules: UI, GAME, API, Driver, and APP. It is easy to find that the five functional modules, UI, GAME, API, Driver, and APP, are modules with higher reuse rates. Therefore, these five modules can be separated.

[0028] Step S12, splitting the target project into several sub-projects according to a preset separation rule; In this embodiment, the separation rules can be determined based on dimensions such as functional modules, technology stack, and team division of labor; each sub-project should have independent functions or tasks and be able to be independently developed, tested, and deployed; and each sub-project needs to be assigned a unique identifier (ID), and the dependencies and interface specifications between the sub-projects need to be recorded to ensure that the sub-projects can be adjusted later based on the dependencies, interface specifications, etc.

[0029] For example, taking the ArmGuiderPro project as an example, the project can be split into six sub-projects: UI, GAME, EyeTracker, API, Driver, and APP.

[0030] Or taking the BalMaster project as an example, the project can be split into five sub-projects: UI, GAME, API, Driver, and APP.

[0031] Step S13, connecting the sub-project with a preset first APP through a preset communication protocol, and performing data interaction with the sub-project through the first APP.

[0032] In this embodiment, when connecting the sub-project with the first APP, adaptive adjustments need to be made according to the development platform and the corresponding communication protocol to ensure that data interaction can be carried out effectively.

[0033] Among them, for the choice of communication protocol, if the sub-project is an embedded device and is in the same local area network as the first APP, you can choose Wi-Fi or Ethernet; if low power consumption and short-distance communication are required, you can choose Bluetooth or ZigBee; if long-distance communication is required, you can choose MQTT or HTTP / HTTPS; if reusability is more emphasized, you can use the Socket communication protocol; similarly, for the development platform, for microcontrollers (MCU), you can choose ESP32 (supports Wi-Fi and Bluetooth), STM32, Arduino, etc., for single-board computers, you can choose Raspberry Pi, Jetson Nano (NVIDIA Jetson Nano development kit), etc. For the hardware interface circuit, it is necessary to ensure that the connection between the communication module and the main control chip (MCU) is stable. At this time, UART can be used to connect the Wi-Fi module, or SPI can be used to connect the Ethernet module. For the interaction logic, the client or server logic of the communication protocol can be implemented on the embedded device of the sub-project. For example, when using the MQTT protocol, the MQTT client can be implemented to subscribe and publish topics; when using the HTTP protocol, the HTTP client can be implemented to send GET / POST requests; in particular, for the format of data interaction, JSON, XML or custom binary format can be used; and TLS / SSL is used to encrypt communication data, or username and password authentication is enabled in MQTT to ensure data security.

[0034] Through the above steps, by splitting the project into multiple independent sub-projects and realizing communication and data interaction between sub-projects through a preset communication protocol, the project development efficiency, code reusability, testing efficiency and system stability can be significantly improved, solving the problem of low project development efficiency and improving project development efficiency.

[0035] In an optional embodiment, the data interaction with the sub-project through the first APP includes: Step S131, obtaining an interaction instruction; Step S132, parsing the interaction instruction through the first APP to obtain interaction information, wherein the interaction information includes interaction object information and interaction action information, wherein the interaction object includes the sub-project; Step S133: sending the interactive action information to the interactive object according to the interactive object information, so as to instruct the interactive object to perform an interactive action according to the interactive action information.

[0036] In this embodiment, after receiving the user's interaction instruction, the interaction instruction is first parsed, and then the relevant information is sent to the corresponding sub-project through the APP based on the parsing result to instruct the sub-project to perform the corresponding interaction action according to the instruction; this makes it convenient to supplement or replace the sub-project, so as to make adjustments when a problem occurs in a sub-project to ensure the stability of the system.

[0037] Taking the ArmGuiderPro project as an example, the project is split into six sub-projects: UI, GAME, EyeTracker, API, Driver, and APP, and then the APP connects all the projects.

[0038] At this time, Socket communication is used between the APP and other projects. There is a general communication protocol between the APP and each project. The protocol defines that the communication content should include "instructions" and "content".

[0039] The APP will then receive messages from each project through Socket communication. After receiving the message, the APP will parse the "instructions" and "content" contained in the message according to the protocol. The "instructions" include the "work" to be done and the "work object" (for example, the "instructions" parsed are "forwarded to UI"). Then the "content" in the message will be operated according to the "instructions" (for example, forwarded to UI), thus realizing communication between different projects.

[0040] In an optional embodiment, the step of splitting the target project according to a preset separation rule to obtain a plurality of sub-projects includes: Step S121, performing project analysis on the target project to obtain the project information, wherein the project information includes at least any one of engineering reuse, project interface quantity, general protocol quantity, and mechanism dependency value; Step S122, performing demand matching processing according to the project information to determine sub-project information, wherein the sub-project information includes at least one of a project boundary and a project function; Step S123: Based on the sub-project information and the separation rule, an independent project construction process is performed on the project object in the target project to obtain the sub-project.

[0041] In this embodiment, when splitting a project, it is necessary to consider information such as the reusability and boundaries of the functional modules to ensure the accuracy of the splitting results.

[0042] Among them, project reuse refers to the proportion of reusable resources such as code, modules, functions or design patterns in the project. High reuse means reducing duplicate development, improving efficiency and reducing costs; mechanism dependency value refers to the complexity of the dependency relationship between components or modules in the project, including functional dependency, data dependency or architectural dependency. High dependency value will increase maintenance difficulty and risk; project boundaries include at least one of the functional scope, callable rules, usable interfaces, etc.

[0043] The reuse degree R can be achieved by the following formula: (Formula 1) Where n is the number of factors that need to be considered for reuse. is the weight of the ith factor, indicating the importance of this factor in reuse evaluation; is the score of the ith factor, indicating the performance of the system on this factor; is the dependency of the ith factor, indicating the module's dependency on a specific external environment; Including universality, independence, degree of interface standardization, scalability, historical reuse, user needs, etc.

[0044] In particular, in addition to the above-mentioned splitting methods, NLP can also be used to parse code comments and API documents to build module business portraits, and then analyze the code call chain based on the graph neural network (GNN) to generate a module dependency topology map. Then, split according to the preset splitting decision model (including reuse, dependency, containerization cost of converting a module into a container, etc.) and the module dependency topology map to obtain the split sub-projects.

[0045] Taking the ArmGuiderPro project as an example, first input the ArmGuiderPro project code, then extract the semantic features of modules such as UI and GAME, and then generate a 3D module topology view. Finally, AI is used to recommend the optimal splitting solution, such as separating EyeTracker as an independent container, and so on, to achieve dynamic splitting of the project.

[0046] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present invention.

[0047] In this embodiment, a separate project development system is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the term "module" can implement a combination of software and / or hardware for a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.

[0048] Figure 2 is a structural block diagram of a separate project development system according to an embodiment of the present invention, such as Figure 2 As shown, the system includes: The project information acquisition module 21 is used to obtain project information, wherein the project information includes project information of a target project to be processed; A project splitting module 22 is used to split the target project into several sub-projects according to a preset separation rule; The interaction module 23 is used to connect the sub-project with a preset first APP through a preset communication protocol, and to perform data interaction with the sub-project through the first APP.

[0049] In an optional embodiment, the data interaction with the sub-project through the first APP includes: Get interactive instructions; Parsing the interaction instruction through the first APP to obtain interaction information, wherein the interaction information includes interaction object information and interaction action information, wherein the interaction object includes the sub-project; The interactive action information is sent to the interactive object according to the interactive object information, so as to instruct the interactive object to perform an interactive action according to the interactive action information.

[0050] In an optional embodiment, the communication protocol at least includes the Socket communication protocol.

[0051] It should be noted that the above modules can be implemented by software or hardware. For the latter, it can be implemented in the following ways, but not limited to: the above modules are all located in the same processor; or the above modules are located in different processors in any combination.

[0052] Example 2 The difference from Embodiment 1 is that, after performing independent engineering construction processing on the engineering object in the target project based on the sub-project information and the separation rule to obtain the sub-project, the method further includes: Step S1231, performing engineering testing on the sub-project to determine function coverage information, interface interaction information, and stability information of the sub-project; Step S1232, constructing a first test matrix based on the function coverage information, the interface interaction information, and the stability information, and constructing a second test matrix according to the sub-project information; Step S1233, calculating the correlation value between the first test matrix and the second test matrix, and if the correlation value meets a preset condition, determining that the sub-project is normal, otherwise determining that the sub-project is abnormal.

[0053] In this embodiment, engineering testing is to determine whether each sub-project is running normally, where functional coverage information refers to a detailed record of test coverage of software modules or system functional points during software development and testing, which is used to evaluate the integrity of the test and ensure that all functional points have been fully verified; similarly, interface interaction information refers to a detailed record of communication and interaction between modules or systems through interfaces, which is used to evaluate the correctness, integrity and performance of the interfaces, and ensure that data exchange and collaborative work between modules meet design specifications; stability information refers to a set of data and indicators used to evaluate the stability and reliability of a system or module under various operating conditions, and stability information usually covers the performance of the system in normal operation, high load, abnormal conditions, and long-term operation.

[0054] Specifically, functional coverage information usually includes the following aspects: 1. Function point description Function name: The specific name or identifier of each function point.

[0055] Functional description: A detailed description of the function point, including the input, processing logic and output of the function.

[0056] Function path: The calling path or process of a function in the system, for example, what operations the user can perform to trigger the function.

[0057] 2. Test case coverage Test Case ID: A unique identifier for each test case.

[0058] Test case description: The specific content of the test case, including input conditions, expected outputs, and test steps.

[0059] Coverage Type: Statement coverage: whether all execution statements in the code are covered.

[0060] Branch coverage: whether all branch paths in the code (such as if-else, switch-case, etc.) are covered.

[0061] Condition coverage: whether all possible values ​​of the conditional expression are covered.

[0062] Path coverage: whether all possible paths in the code are covered.

[0063] Interface interaction information usually includes the following aspects: 1. Basic information of the interface Interface name: A unique identifier for the interface, such as getUserData, sendEmail, etc.

[0064] Interface type: The type of interface, such as RESTful API, SOAP, TCP / IP, WebSocket, etc.

[0065] Interface path: the access path or address of the interface, for example, / api / user.

[0066] Interface version: The version number of the interface, used to distinguish different versions of interfaces.

[0067] Belonging module: The module or subsystem to which the interface belongs, such as user management module and data processing module.

[0068] 2. Interface input information Input parameters: Parameters that need to be provided when calling the interface, including parameter name, type, whether it is required, etc.

[0069] Request body format: For POST or PUT requests, record the format (such as JSON, XML) and specific structure of the request body.

[0070] Request header information: Information contained in the request header, such as Content-Type, Authorization, etc.

[0071] 3. Interface output information Return value: data returned by the interface, including the type, structure, and possible value range of the return value.

[0072] Return status code: The status code returned by the interface, such as the HTTP status code (200, 404, 500, etc.).

[0073] Return message format: the format (such as JSON, XML) and specific structure of the returned message.

[0074] Response header information: information contained in the response header, such as Content-Type, Cache-Control, etc.

[0075] 4. Interface interaction process Call link: records the call link of the interface, including the caller and the callee.

[0076] Call frequency: The calling frequency of the interface, such as the number of calls per second.

[0077] Calling order: The order in which interfaces are called, especially for business processes that rely on multiple interfaces.

[0078] Interaction sequence diagram: Use a sequence diagram to describe the calling sequence and interaction process of the interface.

[0079] 5. Interface performance information Response Time: The response time of the interface, usually in milliseconds.

[0080] Throughput: The throughput of the interface, such as the number of requests processed per second.

[0081] Resource usage: System resource usage when the interface is running, such as CPU usage, memory usage, etc.

[0082] Concurrency capability: The maximum number of concurrent connections supported by the interface.

[0083] 6. Interface abnormal information Exception type: The exception type that the interface may throw, such as TimeoutException, IOException, etc.

[0084] Exception handling mechanism: The exception handling mechanism of the interface, such as retry mechanism, degradation strategy, etc.

[0085] Error code: The error code returned by the interface and its meaning.

[0086] Exception log: records the exception logs that occur during the operation of the interface, including exception time, exception description, etc.

[0087] 7. Interface Dependencies Dependent interfaces: other interfaces that the current interface depends on.

[0088] Dependent interfaces: other interfaces that depend on the current interface.

[0089] Dependency status: the calling status of the dependency interface, such as whether it is successful or timed out.

[0090] 8. Test coverage of interface interactions Test Case ID: A unique identifier for each test case.

[0091] Test case description: The specific content of the test case, including input conditions, expected outputs, and test steps.

[0092] Test result: The execution result of a test case, usually "pass" or "fail".

[0093] Test coverage: coverage of interface tests, such as whether the boundary conditions of all input parameters are covered.

[0094] Example 3 The difference from Example 2 is that the first matrix can be constructed according to the following table: Table 1 For the first matrix, it can be constructed according to the following table: Table 2 Then, we obtain the matrix H (corresponding to Table 1) and the matrix P (corresponding to Table 2), and then calculate the correlation value T according to the following formula: (Formula 2) It should be noted that the stability S of the system can be calculated by the following formula: (Formula 3) In the formula, R is the reuse degree, P is the number of common protocols, I is the number of interfaces, and M is the mechanism dependency value; Indicates the positive impact of system reusability and standardization on stability, It indicates the negative impact of the system's complexity and dependence on external conditions on stability.

[0095] An embodiment of the present invention further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when running.

[0096] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.

[0097] An embodiment of the present invention further provides an electronic device, including a memory and a processor, wherein a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.

[0098] In an exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.

[0099] Through the description of the above implementation methods, technical personnel in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional modules is used as an example. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.

[0100] In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of modules or units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0101] The units described as separate components may or may not be physically separated, and the components shown as units may be one physical unit or multiple physical units, that is, they may be located in one place or distributed in multiple different places. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0102] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0103] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions to enable a device (which can be a single-chip microcomputer, chip, etc.) or a processor (processor) to execute all or part of the steps of the methods of each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.

[0104] The above contents are only specific implementation methods of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application shall be included in the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims

1. A separate project development method, characterized in that: include: Acquiring project information, wherein the project information includes project information of a target project to be processed; Splitting the target project according to a preset separation rule to obtain a plurality of sub-projects; The sub-project is connected to a preset first APP through a preset communication protocol, and data is exchanged with the sub-project through the first APP; The step of splitting the target project according to a preset separation rule to obtain a plurality of sub-projects includes: Performing project analysis on the target project to obtain the project information, wherein the project information includes at least any one of engineering reuse, project interface quantity, general protocol quantity, and mechanism dependency value, wherein the engineering reuse is the proportion of reusable resources in the target project in the target project; and the mechanism dependency value is the complexity of dependency relationships between modules in the target project; Performing demand matching processing according to the project information to determine sub-project information, wherein the sub-project information includes at least any one of a project boundary and a project function, and the project boundary includes at least any one of a functional scope, a callable rule, and an available interface of the sub-project; Based on the sub-project information and the separation rule, an independent project construction process is performed on the project object in the target project to obtain the sub-project.

2. The method according to claim 1, characterized in that The data interaction with the sub-project through the first APP includes: Get interactive instructions; Parsing the interaction instruction through the first APP to obtain interaction information, wherein the interaction information includes interaction object information and interaction action information, wherein the interaction object includes the sub-project; The interactive action information is sent to the interactive object according to the interactive object information, so as to instruct the interactive object to perform an interactive action according to the interactive action information.

3. The method according to claim 1, characterized in that The communication protocol at least includes the Socket communication protocol.

4. The method according to claim 1, characterized in that: After performing independent project construction processing on the project object in the target project based on the sub-project information and the separation rule to obtain the sub-project, the method further includes: Perform engineering tests on the sub-projects to determine function coverage information, interface interaction information, and stability information of the sub-projects; Constructing a first test matrix based on the function coverage information, the interface interaction information, and the stability information, and constructing a second test matrix based on the sub-project information; A correlation value between the first test matrix and the second test matrix is ​​calculated, and if the correlation value meets a preset condition, it is determined that the sub-project is normal; otherwise, it is determined that the sub-project is abnormal.

5. A separate project development system, characterized in that: include: A project information acquisition module, used to acquire project information, wherein the project information includes project information of a target project to be processed; A project splitting module is used to split the target project into several sub-projects according to a preset separation rule; An interaction module, used to connect the sub-project with a preset first APP through a preset communication protocol, and to perform data interaction with the sub-project through the first APP; The step of splitting the target project according to a preset separation rule to obtain a plurality of sub-projects includes: Performing project analysis on the target project to obtain the project information, wherein the project information includes at least any one of engineering reuse, project interface quantity, general protocol quantity, and mechanism dependency value; the engineering reuse is the proportion of reusable resources in the target project in the target project; the mechanism dependency value is the complexity of dependency relationships between modules in the target project; Performing demand matching processing according to the project information to determine sub-project information, wherein the sub-project information includes at least any one of a project boundary and a project function; the project boundary includes at least any one of a functional scope, a callable rule, and an available interface of the sub-project; Based on the sub-project information and the separation rule, an independent project construction process is performed on the project object in the target project to obtain the sub-project.

6. The system according to claim 5, characterized in that The data interaction with the sub-project through the first APP includes: Get interactive instructions; Parsing the interaction instruction through the first APP to obtain interaction information, wherein the interaction information includes interaction object information and interaction action information, wherein the interaction object includes the sub-project; The interactive action information is sent to the interactive object according to the interactive object information, so as to instruct the interactive object to perform an interactive action according to the interactive action information.

7. The system according to claim 5, characterized in that The communication protocol at least includes the Socket communication protocol.

8. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein the computer program is configured to execute the method according to any one of claims 1 to 4 when executed.

9. An electronic device comprising a memory and a processor, characterized in that: A computer program is stored in the memory, and the processor is configured to run the computer program to perform the method according to any one of claims 1 to 4.

Citation Information

Patent Citations

  • Software project development method and device, storage medium and electronic equipment

    CN116302054A

  • Multi-protocol protocol conversion method and system based on micro service

    CN116346948A

  • Multi-protocol interactive communication method and device, equipment, storage medium and product

    CN117914957A

  • Micro-service architecture generation method and device, equipment and storage medium

    CN118245056A

  • Project development system and method based on cloud service, and computing device cluster

    WO2024139574A1