Software development system and software development method for distributed application

By designing a loosely coupled development system in distributed application software development and using multiple components for interface connection and call, the problems of high code complexity and high operation and maintenance costs in distributed application software development are solved, and low complexity is achieved , easy maintenance and efficient development effects.

CN119493560APending Publication Date: 2025-02-21BANK OF CHINA
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411607986.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-12
Publication Date
2025-02-21

AI Technical Summary

Technical Problem

In the prior art, the distributed application software development model has problems such as high code complexity, high operation and maintenance costs and high difficulty, resulting in huge software engineering and difficult maintenance.

Method used

By designing a distributed application software development system, the online service components, integrated service components, basic service components, public basic components and data processing components are used to achieve a loosely coupled, low complexity and easy-to-maintenance development model.

Benefits of technology

It reduces the maintenance cost of distributed application software development, improves development efficiency, system flexibility and maintainability, and reduces the degree of coupling between codes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119493560A_ABST
    Figure CN119493560A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a software development system and a software development method for distributed applications, which are used for the distributed field. And the online service component responds to the distributed transaction interface information receiving the external service request and calls the integrated service component and / or the public basic component. The integrated business component is used for receiving the calling of the online service component or receiving the non-distributed transaction interface information from an external service request, correspondingly responding to the calling of the online service component or the non-distributed transaction interface information, calling the basic business component and / or the public basic component, and providing a reusable business process and logic processing; and calling the integrated service component to realize service processing encapsulation. The basic business component responds to calling of the integrated business component and calls the public basic component and / or the data processing component. And the public basic component provides public basic capability and online service. The data processing component provides a data access service. According to the invention, the flexibility and maintainability of the distributed application can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of distributed systems, and in particular to a software development system and a software development method for distributed applications. Background Art

[0002] With the development of cloud computing, microservice architecture, containerization technology and distribution, financial industries such as banks can more easily build and deploy distributed applications. These technologies enable banks to achieve higher system elasticity and scalability.

[0003] In the related technologies, banks adopt a distributed application software development model without stratification and modularization. As business functions increase, the internal codes of the developed distributed application software become more and more, and the codes are tightly coupled, resulting in increasingly large software projects, high code complexity, high operation and maintenance costs and difficulties.

[0004] Therefore, there is an urgent need to provide a loosely coupled, low-complexity, and easy-to-maintain distributed application software development solution to reduce the software development and maintenance costs of distributed applications. Summary of the invention

[0005] The embodiments of the present application provide a software development system and a software development method for distributed applications, and provide a loosely coupled, low-complexity, and easy-to-maintain software development solution for distributed applications to reduce the software development and maintenance costs of distributed applications.

[0006] In a first aspect, an embodiment of the present application provides a software development system for distributed applications, including:

[0007] Online service components, integrated business components, basic business components, public basic components and data processing components connected through interfaces;

[0008] The online service component is used to manage distributed transactions, including receiving distributed transaction interface information from an external service request, and calling the integrated business component and / or the common basic component in response to the distributed transaction interface information;

[0009] The integrated business component is used to receive the call of the online service component, or receive the non-distributed transaction interface information from the external service request, and respond to the call of the online service component or the non-distributed transaction interface information, call the basic business component and / or the common basic component, provide reusable business processes and logic processing; and call the integrated business component to implement business processing encapsulation;

[0010] The basic business component is used to encapsulate and manage business logic and rules, including responding to the call of the integrated business component and calling the common basic component and / or the data processing component;

[0011] The public basic components are used to provide public basic capabilities and online services;

[0012] The data processing component is used to provide data access services.

[0013] In a possible implementation, the common basic component includes a common basic layer and a remote access layer, wherein the common basic layer is used to provide common basic capabilities; and the remote access layer is used to perform remote access by encapsulating SAL (System Abstraction Layer).

[0014] In a possible implementation, the common basic component may be deployed in other components as a local component.

[0015] In a possible implementation manner, the data processing component is specifically used to: encapsulate data into a data access layer DAL, and provide reusable data access services.

[0016] In a possible implementation manner, the basic service component performs functional aggregation through the integrated service component.

[0017] In a possible implementation manner, the basic service component cannot call the basic service component.

[0018] In a possible implementation, the common basic component may call the common basic component and the data processing component.

[0019] In a second aspect, an embodiment of the present application provides a software development method for a distributed application, including:

[0020] An electronic device applied to a software development system for a distributed application deployed with the first aspect and / or any one of the various possible implementations of the first aspect, the software development method comprising:

[0021] Displaying the main structure and process of a program framework of a distributed application on a screen of the electronic device, wherein the program framework is constructed by applying the software development system for a distributed application as described in the first aspect and / or any one of the various possible implementations of the first aspect above;

[0022] Based on human-computer interaction, obtaining input, output and connection relationships between the program frameworks;

[0023] The application software of the distributed application is obtained according to the main structure and flow of the program framework, and the input, output and connection relationship between the program frameworks.

[0024] In a third aspect, an embodiment of the present application provides an electronic device, in which a software development system for distributed applications according to the first aspect and / or various possible implementations of the first aspect is deployed, the electronic device comprising: a memory, a processor comprising: a memory, a processor;

[0025] The memory stores computer-executable instructions;

[0026] The processor executes the computer-executable instructions stored in the memory, so that the processor executes the above second aspect and / or various possible implementations of the second aspect.

[0027] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, they are used to implement the above second aspect and / or various possible implementations of the second aspect.

[0028] The software development system and software development method for distributed applications provided by the embodiment of the present application can reduce development costs and improve development efficiency by developing the interface-connected online service components, integrated business components, basic business components, public basic components, and data processing components respectively, so that developers can focus on the development of a single component without intervening in the development of other components. At the same time, when processing distributed transactions, the coupling degree between internal codes can be effectively reduced by calling the online service components, integrated business components, basic business components, public basic components, and data processing components layer by layer, thereby achieving the effect of improving the flexibility and maintainability of distributed applications. BRIEF DESCRIPTION OF THE DRAWINGS

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

[0030] Figure 1 Schematic diagram of the process of the software development system for distributed applications provided in this application Figure 1 ;

[0031] Figure 2 Schematic diagram of the process of software development method for distributed applications provided in this application Figure 1 ;

[0032] Figure 3 Component calling process in a distributed application using transfer as an example provided for this application Figure 1 ;

[0033] Figure 4 A schematic diagram of the structure of the electronic device provided in this application.

[0034] The above drawings have shown clear embodiments of the present application, which will be described in more detail later. These drawings and text descriptions are not intended to limit the scope of the present application in any way, but to illustrate the concept of the present application to those skilled in the art by referring to specific embodiments. DETAILED DESCRIPTION

[0035] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present application. Instead, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.

[0036] First, the terms involved in the embodiments of the present application are explained:

[0037] A component is an independent module or unit in a software system. It has specific functions and interfaces and can be called or interacted with other parts of the software system. A component is a reusable software module in the form of a class, a function library, a service, etc. It is usually defined as a logically tight program code package. The interface of the component is clearly defined. The core value of the component lies in reuse. Developers can efficiently develop new application systems by assembling existing components, thereby achieving the goal of software reuse.

[0038] Encapsulation refers to combining the state (attributes) and behavior (methods) of an object together and hiding the internal implementation details of the object from the outside. Through encapsulation, the internal data of a class can only be accessed and modified through specific methods, thereby protecting the integrity and security of the object, helping to achieve modular design, and improving the maintainability and reusability of the code.

[0039] The system abstraction layer is a layer in the software architecture that is used to hide the underlying implementation details and provide a unified interface or service so that upper-level applications can be developed without worrying about the underlying details, thereby improving the maintainability and scalability of the system.

[0040] The data access layer is a layer in the software architecture that is responsible for interacting with the database or other data storage systems, providing an access interface to the data, and encapsulating the details of data access so that upper-level applications do not need to directly handle database operations.

[0041] Distributed transactions refer to transaction operations involving multiple independent resource managers (such as databases, message queues, etc.) in a distributed system. Distributed transactions need to ensure that all participating resources are either fully committed or fully rolled back to maintain data consistency, which is usually achieved using a two-phase commit or three-phase commit protocol.

[0042] A non-distributed transaction is a transaction operation performed in a single resource manager (such as a single database). It does not involve operations across multiple systems or databases, but only needs to ensure consistency and integrity within a single system.

[0043] The present application also introduces the design principles of the component mode, including:

[0044] High cohesion: By adopting a functional cohesion pattern, all components within the component are ensured to be necessary to complete a single function, thereby improving the cohesion of the component.

[0045] Low coupling: In order to reduce the mutual influence between components and reduce the chain reaction caused by modifying a certain component (that is, the ripple effect of "one move affects the whole body"), it is necessary to reduce the coupling degree between components.

[0046] Moderate granularity: When designing components, in addition to considering the flexibility of the application and the reusability of the components, it is also necessary to weigh the depth and number of mutual calls between components to ensure that the overall system operating efficiency is in a good state.

[0047] Clear interface: Communication between components should strictly follow the pre-designed interface specifications and should not involve each other's specific implementation details to ensure clear and efficient communication.

[0048] Scalability: The component pattern should have the ability to adjust as the application pattern changes and identify needs to adapt to future expansion and upgrades.

[0049] Logical unification: In the product service layer, the logical design of the component model should be unified and should not differ due to different implementation languages ​​to ensure the consistency and stability of the entire system.

[0050] It should be noted that the software system development method, device, electronic device, storage medium and program product of the present application can be used in distributed fields, and can also be used in any field other than distributed fields. The application field of the software development system and software development method of distributed applications of the present application is not limited.

[0051] The technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems are described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.

[0052] Figure 1 Schematic diagram of the process of the software development system for distributed applications provided in the embodiment of the present application Figure 1 .like Figure 1As shown, the software development system includes:

[0053] The software development system for distributed applications is composed of online service components, integrated business components, basic business components, public basic components and data processing components connected by interfaces.

[0054] S101. An online service component is used to manage distributed transactions, including receiving distributed transaction interface information from an external service request, and calling an integrated business component and / or a common basic component in response to the distributed transaction interface information.

[0055] The online service component serves as an externally exposed service interface in the software development system, responsible for integrating and coordinating the functions of multiple components to meet complex business needs.

[0056] When the component that needs to be responded to the received distributed transaction interface information is an integrated business component, the online service component responds to the distributed transaction interface information and calls the corresponding integrated business component. When the component that needs to be responded to the received distributed transaction interface information is a common basic component, the online service component responds to the distributed transaction interface information and calls the corresponding common basic component. When the components that need to be responded to the received distributed transaction interface information are an integrated business component and a common basic component, the online service component responds to the distributed transaction interface information and calls the corresponding integrated business component and the common basic component respectively.

[0057] S102, integrated business components, used to receive online service component calls, or receive non-distributed transaction interface information from external service requests, and respond to online service component calls or non-distributed transaction interface information, call basic business components and / or common basic components, provide reusable business processes and logical processing; and call integrated business components to implement business processing encapsulation.

[0058] Integrated business components are atomic services or local transactions exposed to the outside world. They are responsible for executing specific business operations and serve as the basic unit for building complex business logic. Integrated business components have high cohesion and low coupling, and can be independently deployed and managed in software development systems. The core feature of integrated business components is that they do not contain specific domain logic, but focus on providing standardized interfaces, protocols, and mechanisms to promote communication and collaboration between different components.

[0059] The integrated business component receives the non-distributed transaction interface information that receives the call of the online service component or receives the request from the external service. The integrated business component parses the call and the non-distributed transaction interface information, determines the components or rules involved in the corresponding business process and logic processing, and calls the corresponding basic business components and / or common basic components. At the same time, the integrated business component provides reusable business processes and logic processing. When the business processes and logic processing corresponding to the call of the online service component and the non-distributed transaction interface information are the same, that is, the business corresponding to the call and interface information obtained by different acquisition methods is the same. The integrated business component can call the integrated business component to implement business processing encapsulation, ensure the correctness and consistency of the business logic, and improve the quality and maintainability of the code.

[0060] Specifically, when the business process and logic processing corresponding to the received online service component call involve the basic business component, the integrated business component responds to the online service component call information and calls the corresponding basic business component. When the business process and logic processing corresponding to the received online service component call involve the common basic component, the integrated business component responds to the online service component call information and calls the corresponding common basic component. When the business process and logic processing corresponding to the received online service component call involve two different components: the basic business component and the common basic component, the integrated business component responds to the online service component call information and calls the basic business component and the common basic component respectively.

[0061] Specifically, when the business process and logic processing corresponding to the received non-distributed transaction interface information involve basic business components, the integrated business component responds to the non-distributed transaction interface information and calls the corresponding basic business component. When the business process and logic processing corresponding to the received non-distributed transaction interface information involve public basic components, the integrated business component responds to the non-distributed transaction interface information and calls the corresponding public basic components. When the business process and logic processing of the received non-distributed transaction interface information involve two different components: the basic business component and the public basic component, the integrated business component responds to the non-distributed transaction interface information and calls the basic business component and the public basic component respectively.

[0062] S103, basic business components are used to encapsulate and manage business logic and rules, including responding to calls of integrated business components and calling public basic components and / or data processing components.

[0063] Basic business components are one of the most fine-grained components in the software development system, encapsulating independent and reusable business logic processing functions. The reuse of basic business components can significantly improve the development efficiency and code quality of the system. Basic business components encapsulate complex business logic and rules internally, and provide unified services to the outside world through defined interfaces and protocols. At the same time, basic business components are also responsible for managing and maintaining business rules to ensure the correctness and consistency of business logic and rules.

[0064] The basic business component responds to the call request from the integrated business component, executes the corresponding business logic according to the request, and returns the result. At the same time, when responding to the call request of the integrated business component, the basic business component may need to call the public basic component and / or data processing component.

[0065] Specifically, if the business logic and rules involved in the call from the integrated business component need to call the common basic component, the basic business component responds to the call from the integrated business component and calls the common basic component. If the business logic and rules involved in the call from the integrated business component need to call the data processing component, the basic business component responds to the call from the integrated business component and calls the data processing component. If the business logic and rules involved in the call from the integrated business component need to call the common basic component and the data processing component, the basic business component responds to the call from the integrated business component and calls the common basic component and the data processing component.

[0066] S104: Public basic components, used to provide public basic capabilities and online services.

[0067] The public basic capabilities in the public basic components can realize cross-component reuse functions. Public basic components encapsulate common functions across components, provide basic, non-business-specific services, and can be shared and reused by multiple different components. At the same time, public basic components also provide online services, and online service components can call public basic components to achieve online connection. By calling public basic components, online service components, integrated business components, and basic business components can focus on implementing specific business logic without having to worry about the underlying basic operations, which can improve development efficiency and improve the maintainability and scalability of software development systems.

[0068] S104: Data processing component, used to provide data access service.

[0069] The data processing component is responsible for processing and managing the data in the system, avoiding direct operations on the data by other components, thereby ensuring the consistency and integrity of the data. It can effectively reduce data dependencies and conflicts between systems and improve the stability and scalability of the system.

[0070] The software development system for distributed applications provided by the embodiment of the present application realizes efficient and flexible software development through a well-designed software development system. The software development system connects online service components, integrated business components, basic business components, public basic components and data processing components through interfaces to build distributed applications in which internal components work in coordination. The basic business components encapsulate specific business logic and rules to form the core business logic layer of distributed applications, allowing developers to focus on the development of business logic and improve development efficiency. The public basic components provide a series of reusable functions, reduce code redundancy, improve the stability and reliability of the software development system, and improve overall development efficiency. By integrating these components, the coupling between codes is reduced and the development efficiency of the system is improved.

[0071] To facilitate understanding of the calling relationship between different components in the software development system of distributed applications, Table 1 is a calling relationship table of the software development system of distributed applications provided in an embodiment of the present application. As shown in Table 1, Figure 1 Based on the embodiment, the calling relationship of different components in the software development system of distributed applications is described in detail.

[0072] Table 1 Distributed application software development system call relationship table

[0073]

[0074]

[0075] Specifically, the online service component can call the online service component, the integrated business component and the common basic component. The integrated business component can call the integrated business component, the basic business component and the common basic component. The basic business component can call the common basic component and the data processing component. The common basic component can call the common basic component and the data processing component.

[0076] Optionally, the public basic component includes a public basic layer and a remote access layer, wherein the public basic layer is used to provide public basic capabilities; and the remote access layer is used to perform remote access by encapsulating SAL.

[0077] Online service components can use SAL in common infrastructure components to access remote resources or services. Common infrastructure components simplify remote access by encapsulating SAL, making it easier for components to access and operate remote resources.

[0078] Optionally, the common infrastructure components can be deployed as local components in other components.

[0079] Embed the common basic components into other components as local dependencies or local components, and configure and initialize the common basic components to ensure that the common basic layer and remote access layer provided by the common basic components can run normally in the target components. After that, by writing and calling the corresponding interfaces or methods, other components can use the functions provided by the common basic components, thereby achieving more efficient and reliable software development.

[0080] Optionally, the data processing component is specifically used to encapsulate the data into a DAL (Data Access Layer) to provide a reusable data access service.

[0081] The data processing component encapsulates various types of data into DAL according to specific structures and specifications. DAL serves as the interface for data processing. DAL provides a series of reusable data access services, allowing the data processing component to easily call DAL to operate and manage data. The data processing component can combine multiple DALs to access the database and complete the addition, deletion, modification and query operations of the database.

[0082] Optionally, the business rules of the distributed application are not bound to the database, so that the developed distributed application and the database have loose coupling. Specifically, the data processing component can switch between databases such as Oracle or Mysql.

[0083] Optionally, the basic business components perform functional aggregation through integrated business components.

[0084] Determine the core functions and requirements of basic business components; integrate multiple related components, such as common basic components and data processing components. Aggregate the functions and features of common basic components and data processing components into basic business components to achieve more complex and comprehensive business logic and functional requirements, and realize functional aggregation.

[0085] Optionally, a basic business component cannot call a basic business component.

[0086] One of the design principles of basic business components is that basic business components cannot be self-called, that is, basic business components cannot directly call basic business components, ensuring that the calling depth of the entire system remains within a controllable range, thereby effectively preventing the modification of a certain business logic from expanding the scope of influence infinitely due to complex mutual calling relationships, thereby causing a sharp increase in system complexity (i.e. "complexity creep"). By following this principle, a clearer, modular, and easy-to-maintain system architecture is built, so that basic business components are focused on the business field and interact with other components through clear interfaces, improving the overall stability and scalability of the system.

[0087] Optionally, the common basic components can call the common basic components and the data processing components to ensure the modular implementation of system functions, which not only improves development efficiency but also maintains the clarity and maintainability of the system.

[0088] Figure 2 Schematic diagram of the process of the software development method for distributed applications provided in the embodiment of the present application Figure 2 .like Figure 2 As shown, in this embodiment Figure 1 Based on the embodiment, a software development method for distributed applications is described in detail. The software development method for distributed applications is used to deploy an electronic device having a software development system for distributed applications obtained by the above embodiment or any feasible implementation method thereof. The method includes:

[0089] S201. Displaying the main structure and flow of a program framework of a distributed application on a screen of an electronic device. The program framework is constructed by applying a software development system for a distributed application obtained by applying the above embodiment or any feasible implementation method thereof.

[0090] The program framework of the distributed application is loaded in the software development system, and the source code or configuration file of the program framework is parsed to extract its main structure, including components, modules and interfaces, and generate a visual representation on an electronic screen.

[0091] S202. Based on human-computer interaction, obtain input, output and connection relationships between program frameworks.

[0092] Based on human-computer interaction, users are allowed to specify or modify the input, output and connection relationships between program frameworks to make them conform to the business process flow. The input, output and connection relationships between program frameworks are extracted and stored.

[0093] S203: Obtain application software of the distributed application according to the main structure and flow of the program framework, and the input, output and connection relationship between the program frameworks.

[0094] First, the main structure and process, input, output and connection relationship of the program framework are integrated into the system. Based on the integrated information, the source code or configuration file of the distributed application is developed and generated. After that, the compiler is used to compile the generated source code or configuration file into an executable file or software package. The generated distributed application is tested for function and performance to obtain the application software of the distributed application that meets the design requirements and user needs.

[0095] The software development method for distributed applications provided in the embodiments of the present application fully utilizes the main structures and methods of the software development system for distributed applications. The input, output and connection relationships between program frameworks are constructed, which significantly improves the efficiency and flexibility of software development, effectively reduces the complexity of the software system, and enhances the maintainability of the system. The distributed application developed using the software development method for distributed applications achieves flexible resource utilization and efficient collaborative work effects.

[0096] By adopting the software development method for distributed applications provided in the embodiments of the present application, developers only need to care about the development of business rules and do not need to perceive technical adaptation outside the application system, such as SpringMVC, MQ, Dubbo, etc. Through the software development method for distributed applications, an independent development framework can be designed that does not depend on the specific library package of the application software, thereby realizing the separation of the framework from the application system. As an independent tool, this development framework allows developers to use it when developing application systems, effectively reducing the workload of repeatedly writing common basic functional codes.

[0097] The embodiment of the present application also elaborates in detail the hierarchical relationship and interaction of each component in the software development system of distributed applications when the JAVA language is used for development, aiming to provide a clear and easy-to-understand system architecture view for researchers in this field. Table 2 is a table of components and hierarchical relationships of the software development system developed using the JAVA language provided in the embodiment of the present application. As shown in Table 2, the hierarchical relationship and interaction relationship of each component in the software development system of distributed applications are:

[0098] Table 2 Component relationship table of software development system developed using JAVA language

[0099]

[0100] In the software development system for distributed applications constructed by the above embodiment or any feasible implementation method thereof, if a Java program is used for development, the following special constraints will be encountered:

[0101] 1. Business logic layer components within the same component can call each other directly. When cross-component business logic layer components need to be called, they must go through the request processing layer.

[0102] 2. The business logic layer cannot directly call the data persistence layer (Dal), but needs to go through the data persistence layer (Manager). Directly calling the data persistence layer (Dal) by the business logic layer may lead to tight coupling between the business logic and the data access logic, which is not conducive to system maintenance and expansion.

[0103] The software development system component relationship developed in JAVA language introduced in the embodiment of the present application is not intended to limit the development language of the software development system of distributed applications. On the contrary, the software development system of distributed applications provided in the embodiment of the present application has a high degree of flexibility and adaptability and can adapt to a variety of different development languages. Therefore, the software development method of distributed applications provided in the embodiment of the present application should be regarded as a general development method that can be applied to a variety of development environments.

[0104] Figure 3 Component calling process in a distributed application using transfer as an example provided in the embodiment of the present application Figure 1 .like Figure 3 As shown, in this embodiment Figure 1 Based on the embodiments, the component calling process in the distributed application is described in detail.

[0105] When the online service component receives distributed transaction interface information (ie, "intra-bank transfer") from an external service request, it responds to the intra-bank transfer and calls the business processing encapsulation implemented by the integrated business component in the payment component and the integrated business component in the deposit component.

[0106] In the interactive process of the online service component calling the integrated business component in the payment component, first, the integrated business component in the payment component will check the payment product to confirm whether the status of the payment product meets the conditions for subsequent operations. The integrated business component in the payment component calls the public basic component in the payment component to perform product rule diagnosis to understand whether the payment product meets the specifications and requirements. The public basic component in the payment component calls the data processing object in the payment component to query the product information for subsequent fund transfer operations.

[0107] After the online service component calls the integrated business component in the deposit component, the integrated business component in the deposit component first parses the call information, transfers out settlement account funds, transfers into settlement account funds and collects fees, and calls the corresponding public basic components and basic business components.

[0108] First, when the integrated business component in the deposit component processes and executes the settlement account funds, it will call the public basic component in the deposit component and the basic business component in the deposit component according to the business logic. After receiving the call, the public basic component in the deposit component will check the contract information, check the account information and calculate the fee, and call the corresponding data processing component to query the contract table and the account table. After receiving the call, the basic business component in the deposit component calls the corresponding data processing component to execute the steps of querying the account transfer limit table, updating the account transfer limit table, updating the account balance and creating account details, so as to realize the operations of checking and accumulating the transfer limit of the account and updating the account balance.

[0109] Afterwards, the integrated business component will call the basic business component and the public basic component to implement the operation of transferring funds into the settlement account.

[0110] Finally, integrated business components will be charged accordingly.

[0111] In the whole process, the payment component and storage component are responsible for handling payment and storage-related operations respectively to ensure the accuracy of data. At the same time, the layers of calls between different components ensure the security of data.

[0112] Figure 4 The electronic device is a schematic diagram of the structure of the electronic device provided in the embodiment of the present application. The electronic device is deployed with a software development system for distributed applications obtained in the above embodiment or any feasible implementation method thereof. Figure 4 As shown, the electronic device 40 provided in this embodiment includes: at least one processor 401 and a memory 402. Optionally, the device 40 also includes a communication component 403. The processor 401, the memory 402 and the communication component 403 are connected via a bus 404.

[0113] In a specific implementation process, at least one processor 401 executes the computer-executable instructions stored in the memory 402, so that at least one processor 401 executes the above method.

[0114] The specific implementation process of the processor 401 can be found in the above method embodiment, and its implementation principle and technical effect are similar, so this embodiment will not be repeated here.

[0115] In the above embodiments, it should be understood that the processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), etc. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the invention may be directly implemented as being executed by a hardware processor, or may be executed by a combination of hardware and software modules in the processor.

[0116] The memory may include a high-speed memory (Random Access Memory, RAM), and may also include a non-volatile memory (Non-volatile Memory, NVM), such as at least one disk memory.

[0117] The bus may be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, the bus in the drawings of the present application is not limited to only one bus or one type of bus.

[0118] An embodiment of the present application also provides a computer program product, including a computer program, which implements the above method when executed by a processor.

[0119] An embodiment of the present application also provides a computer-readable storage medium, in which computer-executable instructions are stored. When a processor executes the computer-executable instructions, the above method is implemented.

[0120] The above-mentioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk. The readable storage medium can be any available medium that can be accessed by a general or special-purpose computer.

[0121] An exemplary readable storage medium is coupled to a processor so that the processor can read information from the readable storage medium and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can be located in an application specific integrated circuit (Application Specific Integrated Circuits, referred to as: ASIC). Of course, the processor and the readable storage medium can also exist in the device as discrete components.

[0122] The division of units is only a logical function division, and there may be other divisions in actual implementation, such as multiple units or components can be combined or integrated into another system, 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 an indirect coupling or communication connection through some interface, device or unit, which can be electrical, mechanical or other forms.

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

[0124] In addition, each functional unit in each embodiment of the present invention 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.

[0125] If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods of each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.

[0126] Those skilled in the art can understand that all or part of the steps of implementing the above-mentioned method embodiments can be completed by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, the steps of the above-mentioned method embodiments are executed; and the aforementioned storage medium includes: ROM, RAM, disk or optical disk and other media that can store program codes.

[0127] Finally, it should be noted that those skilled in the art will readily conceive of other embodiments of the present invention after considering the specification and practicing the invention disclosed herein. The present invention is intended to cover any variations, uses or adaptations of the present invention, which follow the general principles of the present invention and include common knowledge or customary technical means in the art not disclosed by the present invention, are not limited to the precise structure described above and shown in the drawings, and may be modified and changed in various ways without departing from the scope thereof. The scope of the present invention is limited only by the appended claims.

Claims

1. A software development system for distributed applications, characterized in that: include: Online service components, integrated business components, basic business components, public basic components and data processing components connected through interfaces; The online service component is used to manage distributed transactions, including receiving distributed transaction interface information from an external service request, and calling the integrated business component and / or the common basic component in response to the distributed transaction interface information; The integrated business component is used to receive the call of the online service component, or receive the non-distributed transaction interface information from the external service request, and respond to the call of the online service component or the non-distributed transaction interface information, call the basic business component and / or the common basic component, provide reusable business processes and logic processing; and call the integrated business component to implement business processing encapsulation; The basic business component is used to encapsulate and manage business logic and rules, including responding to the call of the integrated business component and calling the common basic component and / or the data processing component; The public basic components are used to provide public basic capabilities and online services; The data processing component is used to provide data access services.

2. The software development system according to claim 1, characterized in that: The public basic component includes a public basic layer and a remote access layer, wherein the public basic layer is used to provide public basic capabilities; and the remote access layer is used to perform remote access through a packaged system abstraction layer SAL.

3. The software development system according to claim 1, characterized in that: The common basic components can be deployed in other components as local components.

4. The software development system according to any one of claims 1 to 3, characterized in that: The data processing component is specifically used to encapsulate data into a data access layer DAL and provide reusable data access services.

5. The software development system according to any one of claims 1 to 3, characterized in that: The basic business components perform functional aggregation through the integrated business components.

6. The software development system according to any one of claims 1 to 3, characterized in that: The basic business component cannot call the basic business component.

7. The software development system according to any one of claims 1 to 3, characterized in that: The common basic component can call the common basic component and the data processing component.

8. A software development method for distributed applications, characterized in that: An electronic device applied to a software development system for a distributed application as claimed in any one of claims 1 to 7, wherein the software development method comprises: Displaying the main structure and flow of a program framework of a distributed application on a screen of the electronic device, wherein the program framework is constructed by applying the software development system for a distributed application according to any one of claims 1 to 7; Based on human-computer interaction, obtaining input, output and connection relationships between the program frameworks; The application software of the distributed application is obtained according to the main structure and flow of the program framework, and the input, output and connection relationship between the program frameworks.

9. An electronic device, characterized in that: The electronic device is deployed with a software development system for distributed applications according to any one of claims 1 to 7, and the electronic device comprises: a memory, a processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory, so that the processor performs the method of claim 8.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, which are used to implement the method according to claim 8 when executed.