Software development integrated management device for complex system
Through the software development integration management device for complex systems, Git and GitLab are used for code management, development unit management tools and automatic continuous integration tools to achieve automation of software development and integration, solving the complexity and risk issues of code management and integration deployment in the development process of complex system software, and improving R&D efficiency and software delivery capabilities.
Patent Information
- Application Number
- CN202411775311.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-05
- Publication Date
- 2025-04-08
AI Technical Summary
In the software development process, complex systems such as mission avionics systems have problems such as complex code management, complex development and debugging environment configuration, and high risk and difficulty in integrated deployment.
It adopts a software development integration management device for complex systems, including code management tools, development unit management tools and automatic continuous integration tools. The code management tool uses Git and GitLab for code version control and remote warehouse management. The development unit management tool manages the configuration item development process through a visual interface. The automatic continuous integration tool realizes the automated integration and deployment of multiple configuration items through the command line.
It reduces the learning costs of developers, shortens development time, standardizes the development process, improves the efficiency of software R&D and integrated deployment, reduces duplicate labor, reduces software development costs and integration risks, and improves software delivery capabilities.
Smart Images

Figure CN119781811A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of software development integration management, and in particular to a software development integration management device for complex systems such as mission avionics systems. Background Art
[0002] The mission avionics system is the core processing system of the aircraft. It is a complex real-time distributed system that is responsible for the tactical control of various sensors and external equipment. It has functions such as sensor information integration, situational awareness, auxiliary decision-making, mission planning, tactical coordination, and system management. It provides operators with comprehensive information display and control human-machine interface.
[0003] With the rapid development of avionics technology, mission avionics system software has grown dramatically in terms of scale and complexity. The software has many functional modules and is developed in multiple configuration items. Each configuration item must be developed and debugged in accordance with specific development specifications, and there are dependencies between the configuration items, which leads to complex configuration software development and debugging environment processes. In addition, there are many project configuration items, the software integration process is fragmented and cumbersome, and the software changes frequently, requiring continuous software integration and deployment, which poses challenges to software code management and continuous integration. Summary of the invention
[0004] In view of the problems of complex code management, complex development and debugging environment configuration, high risk and difficulty of integrated deployment, etc. in the software development process of complex systems such as mission avionics systems, the purpose of the present invention is to provide a software development integrated management device for complex systems, which solves the above problems by managing the software development process.
[0005] The object of the present invention is achieved through the following technical solutions:
[0006] A software development integrated management device for complex systems, including a code management tool, a development unit management tool, and an automatic continuous integration tool;
[0007] The code management tool uses Git as the code version control tool and GitLab as the remote code repository management system. GitLab creates a remote repository for each configuration item in the complex system and associates the local repository with the remote repository.
[0008] When the development unit management tool is used to develop a single configuration item and the automatic continuous integration tool is used to integrate multiple configuration items, the code management tool first clones a copy of the required configuration item code from the remote repository to the local repository. After the development unit management tool and the automatic continuous integration tool have modified and confirmed the configuration item code locally, the code management tool first uses the Git command line or Git GUI tool to submit it to the local code repository and then push it to the remote code repository.
[0009] There is permission management in GitLab. By setting different user roles and permissions, different users have different read, write, clone, commit, create, edit and delete permissions for remote repositories.
[0010] The development unit management tool uses a visual interface to divide the configuration item development process into several stages: creating or opening a development unit, pulling configuration item source code, configuring dependencies, project coding, code analysis, code packaging and integration, starting the product, and code submission. After the developer creates or opens a configuration item development unit, the development unit management tool uses the code management tool to automatically pull the latest configuration item code from the remote warehouse to the local. Then the developer continues to configure the software debugging dependencies on the development unit management tool and opens the project in the configuration item through Qt Creator for coding. After the coding is completed, the development unit management tool performs static code analysis on the configuration item. After solving the static analysis problem, the development unit management tool packages and integrates the dynamic runtime library compiled and generated by the configuration item, and starts the product for self-testing. After confirmation, the development unit management tool automatically checks the changes in the code and the local warehouse, prompts the developer to submit the code changes to the local warehouse in time, and finally uses the code management tool to push the code to the remote code warehouse to complete the complete R&D process.
[0011] The automatic continuous integration tool uses the command line to enable the code management tool to pull all the configuration item source code and dependent libraries in the remote repository to the local, realizing one-click pulling of all configuration item codes; one-click compilation and analysis of all configuration item codes are realized through the command line; and the dynamic runtime libraries generated by all configuration items are packaged, integrated, deployed and run with one click through the command line.
[0012] The beneficial effects of the present invention are:
[0013] The present invention provides a software development integrated management device for complex systems. By managing code control, software development units and continuous integration, the learning cost of developers is reduced, the development time is shortened, and the development process is standardized. This effectively improves the R&D and integrated deployment efficiency of complex system software such as mission avionics systems, reduces repetitive manual labor, reduces software development costs and integration risks, and improves software delivery capabilities. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] Figure 1 The present invention is a structural diagram of a software development integrated management device for complex systems.
[0015] Figure 2 Schematic diagram of GitLab management repository interface;
[0016] Figure 3 Schematic diagram of the interface of the development unit management tool;
[0017] Figure 4 R&D flow chart based on development unit management tool;
[0018] Figure 5 Continuous integration solution framework diagram;
[0019] Figure 6 Continuous integration command line diagram. DETAILED DESCRIPTION
[0020] The present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments.
[0021] See also Figure 1 As shown, the software development integrated management device for complex systems shown in this embodiment includes three parts: code management tool, development unit management tool, automatic continuous integration tool, etc. This embodiment uses the mission avionics system as an example to explain the software development integrated management device for complex systems in detail.
[0022] The code management tool uses Git as the code version control tool and GitLab as the remote code repository management system to manage the configuration item codes required by the development unit management tool and automatic continuous integration tool.
[0023] like Figure 2 As shown in the figure, the code management tool uses GitLab to establish a remote repository for each configuration item in the mission avionics system, and associates the local repository with the remote repository. When the development unit management tool is developing a single configuration item and the automatic continuous integration tool is integrating multiple configuration items, a copy of the required configuration item code is first cloned from the remote repository to the local. After the development unit management tool and the automatic continuous integration tool change and confirm the configuration item code locally, the code management tool can first use the Git command line or Git GUI tool to submit to the local code repository, and then push it to the remote code repository. Log in to GitLab to browse the detailed submission records of the repository, which facilitates the management of configuration item code. There is permission management in GitLab. By setting different user roles and permissions, different users have different read, write, clone, commit, create, edit and delete permissions for remote repositories, which improves the security of configuration item code.
[0024] The development unit management tool is used for users to complete the development of configuration items. By abstracting the complex project development and construction process, the development unit management tool divides the configuration item development process into multiple stages such as creating or opening a development unit, pulling configuration item source code, configuring dependencies, project coding, code analysis, code packaging and integration, launching products, and code submission through a visual interface, solving the complex problems of the development, debugging, and verification process of a single configuration item. Developers use this tool to create or open a configuration item development unit, automatically pull the code of the latest configuration item in the remote warehouse, configure software debugging dependencies, and open the project in the configuration item through Qt Creator for coding; after the coding is completed, the configuration item can be statically analyzed through this tool; after solving the static analysis problem, the dynamic runtime library compiled by the configuration item can be packaged and integrated, and the software can be started for self-testing; after confirmation, this tool automatically checks the changes in the code and the local warehouse, prompts the developer to submit the code changes to the local warehouse in time, and pushes them to the remote code warehouse to complete the complete R&D process.
[0025] like Figure 3 The visual interface of the development unit management tool shown is used by developers to manage the entire process of configuration item development.
[0026] Developers can create or open a configuration item development unit by clicking the [New] or [Open] button. The development unit management tool will control the code management tool to create a remote repository for the newly created configuration item or automatically pull the latest configuration item code from the remote repository to the local repository.
[0027] Click the [Add Dependency] button to configure software debugging dependencies through the visual interface and add the library files that enable debugging dependencies;
[0028] Click the [Open Project] button to open the project in the configuration item through Qt Creator for coding;
[0029] After the project coding is completed, the developer can click the [Code Analysis] button to perform static analysis of the code and generate a static analysis report. The developer can optimize the code based on the analysis report; after the code is improved, compile and generate a dynamic runtime library;
[0030] Click the [Package] button to package the dynamic runtime library compiled by this configuration item and integrate it into the complex system;
[0031] Click the [Start Product] button to start the system for self-test;
[0032] The selected development unit will be automatically detected by Git and use color blocks to indicate whether there are any change records that need to be submitted. If so, you can click the [GitGui] button to open the commercial Git GUI tool and automatically open the code library of this configuration item. After the developer confirms that it is correct, submit the code to the local repository and then push it to the remote code repository to complete the complete development process. Figure 4 shown.
[0033] The automatic continuous integration tool uses the above code management tool as a remote code repository management system. By building a continuous integration build solution, it realizes an automatic continuous integration pipeline and solves the complex problems of code pulling, compiling, analyzing, integrating and deploying multiple configuration items and the product operation process. This tool adopts a flexible and configurable solution. Through the command line, the code management tool pulls all the configuration item source code and dependent libraries in the remote repository to the local, realizing one-click pulling of all configuration item codes; one-click compilation and analysis of all configuration item codes through the command line; and then one-click packaging, integration, deployment and operation of the dynamic runtime libraries generated by all configuration items through the command line. The entire continuous integration process is executed automatically, which effectively improves the efficiency of software integration and enhances software delivery capabilities.
[0034] The basic elements of continuous integration include developers, code management tools, automatic continuous integration tools, and build result feedback. These components work together to complete the process from version changes to automatic builds to feedback on build results, thus forming a complete build process. Figure 5 As shown in the figure, after the developer modifies the code locally, he submits the changed code to the remote repository through the code management tool and manually triggers the automatic continuous integration tool to run. The automatic continuous integration tool uses the code management tool to pull the latest version of the specified branch from the remote repository based on the user's configuration file, automatically compiles, analyzes the code, packages and deploys it, and finally generates a result report to feedback to the developer. The developer improves the code based on the result report, submits the version change, and triggers the automatic continuous integration tool to run again, so that the entire continuous integration pipeline can be fully executed.
[0035] The automatic continuous integration tool adopts a flexible and configurable solution to achieve functions such as code pulling, code compilation, code analysis, integration, submission, log viewing, software startup and exit through the command line. Figure 6As shown, enter the command [p] to pull all configuration items and dependencies in the remote warehouse to the local; enter the command [bd] to compile all configuration items into debug versions; enter the command [ca] to perform code static analysis on all currently pulled configuration items; enter the command [l] to view the analysis log; enter the command [i] to package and integrate the compiled dynamic runtime library; enter the command [r] to deploy the packaged file and start the software. Through the command line, the automatic continuous integration tool realizes the automatic integration and deployment of the software, improving the integration efficiency.
[0036] It is understandable that those skilled in the art can make equivalent substitutions or changes based on the technical solution and inventive concept of the present invention, and all these changes or substitutions should fall within the protection scope of the claims attached to the present invention.
Claims
1. A software development integrated management device for complex systems, including a code management tool and a development unit management tool, characterized in that: The code management tool uses Git as the code version control tool and GitLab as the remote code repository management system. GitLab creates a remote repository for each configuration item in the complex system and associates the local repository with the remote repository. The development unit management tool uses a visual interface to divide the configuration item development process into several stages: creating or opening a development unit, pulling configuration item source code, configuring dependencies, project coding, code analysis, code packaging and integration, starting the product, and code submission. After the developer creates or opens a configuration item development unit, the development unit management tool uses the code management tool to automatically pull the latest configuration item code from the remote warehouse to the local computer. The developer then continues to configure software debugging dependencies on the development unit management tool and opens the project in the configuration item through Qt Creator for coding. After the coding is completed, the development unit management tool performs static code analysis on the configuration item; After solving the static analysis problem, the development unit management tool packages and integrates the dynamic runtime library generated by compiling the configuration item, and starts the product for self-testing; After confirmation, the development unit management tool automatically checks the changes in the code and the local repository, prompts the developer to submit the code changes to the local repository in a timely manner, and finally uses the code management tool to push the code to the remote code repository to complete the complete R&D process.
2. A software development integrated management device for complex systems according to claim 1, characterized in that There is permission management in GitLab. By setting different user roles and permissions, different users have different read, write, clone, commit, create, edit and delete permissions for remote repositories.
3. A software development integrated management device for complex systems according to claim 1, characterized in that It also includes an automatic continuous integration tool. The automatic continuous integration tool uses the command line to enable the code management tool to pull all configuration item source code and dependent libraries in the remote repository to the local, realizing one-click pulling of all configuration item codes; one-click compilation and analysis of all configuration item codes through the command line; and one-click packaging, integration, deployment and operation of the dynamic runtime libraries generated by all configuration items through the command line.