Software system development method and development system

By building a general system model and configuring a visual editor, and generating business layer module code, the problem of writing a large number of technical implementation codes in the existing technology is solved, and the simple development of the software system and the reduction of the amount of code is achieved.

CN119938013APending Publication Date: 2025-05-06WUHAN WANYUN NETWORK TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411733807.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-29
Publication Date
2025-05-06

AI Technical Summary

Technical Problem

In existing software development technologies, although the use of programming frameworks and tool libraries can reduce the amount of code, a large amount of technical implementation code is still required to be written, especially when implementing business logic and defining business.

Method used

Provide a software system development method, by building a general system model, including different types of technology layer modules, open these modules to build specifications for business layer module code. Configure a visual editor for each technical layer module, generate business layer module code according to requirements, and construct the software system through loading programs and launching programs.

Benefits of technology

Through packaging technology, class code to technical layer submodule is realized, the development of business layer submodules is simplified, the amount of code is significantly reduced, and the simple development of application systems is realized.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119938013A_ABST
    Figure CN119938013A_ABST
Patent Text Reader

Abstract

The invention relates to a software system development method and system, and the method comprises the steps: constructing a general system model used for generating a target domain software system, and the general system model comprises different types of technology layer modules used for achieving different functions; the technical layer module opens specifications for constructing codes of the business layer module; configuring a visual editor for each type of technology layer module; using the visual editor to configure a business definition or logic contained in a business layer module of a corresponding type according to the requirement of a target domain software system, and automatically generating a code program of the business layer module according to the configuration content and a code specification; and constructing a loading program and a starting program, loading a code program of the business layer module through the loading program so as to construct a business module instance required by the target domain software system, and finishing starting of the target domain software system through the starting program.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of software development, and in particular to a software system development method and a development system. Background Art

[0002] Developing a software system involves both business complexity and technical complexity. How to reduce technical complexity and the amount of code required to implement the technology is a fundamental issue in the development of software development technology.

[0003] In the current mainstream software development technology, the amount of code in the application system can be reduced based on the existing programming framework and tool library. However, in the application system, there is still a lot of technical implementation code development work. On the one hand, the mainstream programming framework covers a very narrow scope and generally supports the encapsulation of the basic technical facilities. The programming framework will not support the technical field of implementing business logic. On the other hand, in the implementation of business definition and business logic, a large number of technical tool libraries will be used, and the use of technical tool libraries will also require the writing of a large amount of technical implementation code.

[0004] The methods described in this section are not necessarily methods that have been previously conceived or employed. Unless otherwise indicated, it should not be assumed that any method described in this section is considered to be prior art simply because it is included in this section. Similarly, unless otherwise indicated, the issues mentioned in this section should not be considered to have been recognized in any prior art. Summary of the invention

[0005] The present invention aims at solving the technical problems existing in the prior art and provides a software system development method and a development system.

[0006] The technical solution of the present invention to solve the above technical problems is as follows: In a first aspect, the present invention provides a software system development method, comprising: Constructing a general system model for generating a target domain software system, wherein the general system model includes different types of technical layer modules for realizing different functions; the technical layer modules open the specification for constructing the business layer module code; A visual editor is configured for each type of technical layer module; using the visual editor, the business definition or logic contained in the corresponding type of business layer module is configured according to the requirements of the target domain software system, and according to the configuration content and the specifications for building the business layer module code opened by the technical layer module, the code program of the business layer module is automatically generated; Construct a loader and a startup program, load the code program of the business layer module through the loader to construct the business module instance required by the target domain software system, and complete the startup of the target domain software system through the startup program.

[0007] Furthermore, the technical layer module opens specifications for constructing business layer module codes, including parameter formats, interface conventions, and base classes.

[0008] Furthermore, different types of technical layer modules also encapsulate the common technical implementations of this type of technical layer modules; the common technical implementations include: the technical implementations required to implement the responsibility definition of the business layer modules corresponding to the technical layer modules, the reuse / calling method of the business layer modules corresponding to the technical layer modules on the technical layer modules or other business layer modules, and the loading construction program for the business layer modules corresponding to the technical layer modules.

[0009] Furthermore, the use of the visual editor to configure the business definition or logic contained in the corresponding type of business layer module according to the requirements of the target domain software system also includes: according to the requirements of the target domain software system, based on the reuse / calling method of the business layer module corresponding to the technical layer module encapsulated in the technical layer module to the technical layer module or other business layer modules, configuring the relationship between different types of technical layer modules, between different types of business layer modules, and between the technical layer module and its corresponding business layer module.

[0010] Furthermore, the relationship between different types of technical layer modules, between different types of business layer modules, and between a technical layer module and its corresponding business layer module includes a reuse / calling relationship, a combination relationship or a subordinate relationship between modules.

[0011] Furthermore, the business layer module is used to express business characteristics and comply with the specifications defined by the technical layer module, and is used to express the business module of the target domain software system, including the identification of other business modules that the business module needs to call, business data definition, and business logic implementation.

[0012] Furthermore, the loading construction program in the technical layer module loads the corresponding business layer module and constructs a running instance of the corresponding type of business module in combination with the technical implementation program in the technical layer module.

[0013] In a second aspect, the present invention provides a software development system, which is used to implement the software system development method described in the first aspect of the present invention.

[0014] In a third aspect, the present invention provides an electronic device, comprising: Memory for storing computer software programs; The processor is used to read and execute the computer software program, thereby implementing a software system development method described in the first aspect of the present invention.

[0015] In a fourth aspect, the present invention provides a non-transitory computer-readable storage medium, wherein the storage medium stores a computer software program, and when the computer software program is executed by a processor, a software system development method as described in the first aspect of the present invention is implemented.

[0016] The beneficial effects of the present invention are: the technical implementation class code is encapsulated into the technical layer submodule, and the business layer submodule becomes extremely simple. A visual editor is provided to generate the business layer submodule code, so that the development of the business layer submodule becomes simple. Finally, the simple development of the application system is realized with less code. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Figure 1 A flowchart of a software system development method provided by an embodiment of the present invention; Figure 2 A structural principle block diagram of a software development system provided by an embodiment of the present invention; Figure 3 A structural block diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0018] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of this application.

[0019] In the description of the present application, the term "for example" is used to mean "used as an example, illustration or description". Any embodiment described as "for example" in the present application is not necessarily to be construed as being more preferred or advantageous than other embodiments. The following description is given to enable any technician in the field to implement and use the present invention. In the following description, details are listed for the purpose of explanation. It should be understood that a person of ordinary skill in the art can recognize that the present invention can be implemented without using these specific details. In other examples, well-known structures and processes will not be elaborated in detail to avoid unnecessary details to obscure the description of the present invention. Therefore, the present invention is not intended to be limited to the embodiments shown, but is consistent with the widest scope consistent with the principles and features disclosed in the present application.

[0020] like Figure 1 As shown, an embodiment of the present invention provides a software system development method, including: Construct a general system model for generating the target domain software system, the general system model includes different types of technical layer modules for implementing different functions; the technical layer modules open the specifications for constructing the business layer module code. The specifications for constructing the business layer module code opened by the technical layer modules include parameter formats, interface conventions, and base classes.

[0021] Different types of technical layer modules also encapsulate the common technical implementations of this type of technical layer modules; the common technical implementations include: the technical implementations required to implement the responsibility definition of the business layer module corresponding to the technical layer module, the reuse / calling method of the business layer module corresponding to the technical layer module to the technical layer module or other business layer modules, and the loading construction program for the business layer module corresponding to the technical layer module.

[0022] Secondly, a visual editor is configured for each type of technical layer module; using the visual editor, the business definition or logic contained in the corresponding type of business layer module is configured according to the requirements of the target domain software system, and according to the configuration content and the specifications opened by the technical layer module for building the business layer module code, the code program of the business layer module is automatically generated.

[0023] Preferably, the use of the visual editor to configure the business definition or logic contained in the corresponding type of business layer module according to the requirements of the target domain software system also includes: according to the requirements of the target domain software system, based on the reuse / calling method of the technical layer module or other business layer modules by the business layer module corresponding to the technical layer module encapsulated in the technical layer module, configuring the relationship between different types of technical layer modules, between different types of business layer modules, and between the technical layer module and its corresponding business layer module.

[0024] The relationship between different types of technical layer modules, between different types of business layer modules, and between technical layer modules and their corresponding business layer modules, including the reuse / calling relationship, combination relationship or subordinate relationship between modules.

[0025] It should be understood here that different business layer modules need to be configured according to the different business functions of the target domain software system, and there may be multiple business modules of the same type and the same function. When configuring the business layer modules, it may not be necessary to use all types or all functions of the technical layer modules.

[0026] Therefore, the reuse / call relationship between modules can be that a certain module can reuse / call other modules of the same category and function, or modules of other functions or categories, which can be implemented through specific interface logic.

[0027] The business layer module is used to express business characteristics and comply with the specifications defined by the technical layer module. It is used to express the business module of the target domain software system, including the identification of other business modules that the business module needs to call, business data definition, and business logic implementation.

[0028] The loading construction program in the technical layer module loads the corresponding business layer module and constructs a running instance of the corresponding type of business module in combination with the technical implementation program in the technical layer module.

[0029] Finally, a loader and a startup program are constructed, and the code program of the business layer module is loaded through the loader to construct the business module instance required by the target domain software system, and the startup of the target domain software system is completed through the startup program.

[0030] The embodiment of the present invention provides a software development system, such as Figure 2 As shown, the system is used to implement the above-mentioned software system development method.

[0031] According to one aspect of the present disclosure, an electronic device is also disclosed, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the above method.

[0032] According to one aspect of the present disclosure, a non-transitory computer-readable storage medium is also disclosed, wherein the storage medium stores computer instructions, and the computer instructions implement the above method when executed by a computer.

[0033] According to one aspect of the present disclosure, a computer program product is also disclosed, including a computer program, wherein: The computer program implements the above method when executed by a processor.

[0034] refer to Figure 3 , a block diagram of an electronic device 600 that can be used as a server or client of the present disclosure will now be described, which is an example of a hardware device that can be applied to various aspects of the present disclosure. The electronic device is intended to represent various forms of digital electronic computer devices, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.

[0035] like Figure 3 As shown, the electronic device 600 includes a computing unit 601, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 602 or a computer program loaded from a storage unit 608 into a random access memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the electronic device 600 can also be stored. The computing unit 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0036] Multiple components in the electronic device 600 are connected to the I / O interface 605, including: an input unit 606, an output unit 607, a storage unit 608, and a communication unit 609. The input unit 606 can be any type of device that can input information to the electronic device 600. The input unit 606 can receive input digital or character information and generate key signal input related to user settings and / or function control of the electronic device, and can include but is not limited to a mouse, a keyboard, a touch screen, a track pad, a track ball, a joystick, a microphone, and / or a remote controller. The output unit 607 can be any type of device that can present information, and can include but is not limited to a display, a speaker, a video / audio output terminal, a vibrator, and / or a printer. The storage unit 608 can include but is not limited to a disk, an optical disk. The communication unit 609 allows the electronic device 600 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks, and can include but is not limited to a modem, a network card, an infrared communication device, a wireless communication transceiver, and / or a chipset, such as a Bluetooth™ device, an 802.11 device, a WiFi device, a WiMax device, a cellular communication device, and / or the like.

[0037] The computing unit 601 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 601 performs the various methods and processes described above, such as image processing methods. For example, in some embodiments, the image processing method may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 608. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 600 via ROM 602 and / or communication unit 609. When the computer program is loaded into RAM 603 and executed by the computing unit 601, one or more steps of the image processing method described above may be performed. Alternatively, in other embodiments, the computing unit 601 may be configured to perform the image processing method in any other appropriate manner (e.g., by means of firmware).

[0038] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0039] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

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

[0041] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0042] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.

[0043] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a blockchain.

[0044] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this disclosure can be performed in parallel, sequentially or in a different order, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document is not limited here.

[0045] Although the embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it should be understood that the above-mentioned methods, systems and devices are merely exemplary embodiments or examples, and the scope of the present invention is not limited by these embodiments or examples, but only by the claims after authorization and their equivalent scope. Various elements in the embodiments or examples can be omitted or replaced by their equivalent elements. In addition, each step can be performed in an order different from that described in the present disclosure. Further, the various elements in the embodiments or examples can be combined in various ways. It is important that with the evolution of technology, many elements described herein can be replaced by equivalent elements that appear after the present disclosure.

Claims

1. A software system development method, characterized in that: include: Constructing a general system model for generating a target domain software system, wherein the general system model includes different types of technical layer modules for realizing different functions; The technical layer module opens the specification for building the business layer module code; A visual editor is configured for each type of technical layer module; using the visual editor, the business definition or logic contained in the corresponding type of business layer module is configured according to the requirements of the target domain software system, and according to the configuration content and the specifications for building the business layer module code opened by the technical layer module, the code program of the business layer module is automatically generated; Construct a loader and a startup program, load the code program of the business layer module through the loader to construct the business module instance required by the target domain software system, and complete the startup of the target domain software system through the startup program.

2. The software system development method according to claim 1, characterized in that: The technical layer module opens the specification for constructing the business layer module code, including parameter format, interface convention, and base class.

3. The software system development method according to claim 1 or 2, characterized in that: Different types of technical layer modules also encapsulate the common technical implementations of this type of technical layer modules; the common technical implementations include: the technical implementations required to implement the responsibility definition of the business layer module corresponding to the technical layer module, the reuse / calling method of the business layer module corresponding to the technical layer module to the technical layer module or other business layer modules, and the loading construction program for the business layer module corresponding to the technical layer module.

4. The software system development method according to claim 3, characterized in that: The described use of the visual editor to configure the business definition or logic contained in the corresponding type of business layer module according to the requirements of the target domain software system also includes: according to the requirements of the target domain software system, based on the reuse / calling method of the business layer module corresponding to the technical layer module encapsulated in the technical layer module to the technical layer module or other business layer modules, configuring the relationship between different types of technical layer modules, between different types of business layer modules, and between the technical layer module and its corresponding business layer module.

5. The software system development method according to claim 4, characterized in that: The relationships between different types of technical layer modules, between different types of business layer modules, and between technical layer modules and their corresponding business layer modules include reuse / calling relationships, combination relationships, or subordinate relationships between modules.

6. The software system development method according to claim 5, characterized in that: The business layer module is used to express business characteristics and comply with the specifications defined by the technical layer module. It is used to express the business module of the target domain software system, including the identification of other business modules that the business module needs to call, business data definition, and business logic implementation.

7. The software system development method according to claim 6, characterized in that: The loading construction program in the technical layer module loads the corresponding business layer module and constructs a running instance of the corresponding type of business module in combination with the technical implementation program in the technical layer module.

8. A software development system, characterized in that: The system is used to implement the software system development method described in any one of claims 1-7.

9. An electronic device, characterized in that: include: Memory for storing computer software programs; A processor is used to read and execute the computer software program, thereby implementing a software system development method as described in any one of claims 1-7.

10. A non-transitory computer-readable storage medium, characterized in that: The storage medium stores a computer software program, and when the computer software program is executed by the processor, the software system development method according to any one of claims 1 to 7 is implemented.

Citation Information

Cited By

  • Software system development method based on multi-modal AI large model

    CN121723228A