Block chain supply chain system customizable method based on microkernel

By introducing domain-driven design and micro-kernel architecture into the blockchain supply chain system and dividing it into core modules and plug-in modules, the problem of insufficient information transparency of traditional supply chain systems and the inability to take into account multiple application scenarios is solved, and efficient and flexible supply chain system development and maintenance is achieved.

CN119597247AActive Publication Date: 2025-03-11NANJING UNIV
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202411687447.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-25
Publication Date
2025-03-11
Estimated Expiration
2044-11-25

AI Technical Summary

Technical Problem

Traditional supply chain systems have problems such as insufficient information transparency and easy data forgery and tampering. The existing blockchain-based supply chain system design solutions cannot take into account the application scenarios and business characteristics of multiple supply chains, resulting in high development costs.

Method used

Using a customizable method for blockchain supply chain systems based on microkernels, the supply chain business is divided into core modules and plug-in modules by introducing domain-driven design and microkernel architecture models, allowing users to select and assemble systems according to business needs.

Benefits of technology

It reduces the business complexity and development costs of the supply chain system, improves the scalability, maintainability and development efficiency of the system, and supports flexible adaptation of different supply chain scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119597247A_ABST
    Figure CN119597247A_ABST
Patent Text Reader

Abstract

The invention provides a microkernel-based blockchain supply chain system customizable method, which specifically comprises the steps of introducing a domain-driven design according to functional requirements, and performing domain division on a blockchain-based supply chain system domain service domain function; based on a domain division result, performing boundary context division of the system and establishing a context mapping relation; carrying out overall architecture design and block chain network architecture design of the system; a microkernel architecture mode is introduced, a main body function in a supply chain application scene is divided into a core module, a characteristic function is divided into a plug-in module, and independent running and updating of each sub-domain model are achieved; according to the result, coding development is carried out on the system, mapping between the domain model and codes is completed, and finally the block chain supply chain system customizability method based on the microkernel is achieved. According to the method, a supply chain enterprise is supported to create a supply chain system based on the block chain in a customized manner according to own business processes and demands, and the development efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of software development, and in particular relates to a customizable method for a blockchain supply chain system based on a microkernel. Background Art

[0002] In the global economy, supply chains cover a wide range of industries, such as manufacturing, food, medicine, and many other industries. Supply chain management has continued to mature and improve, integrating and optimizing resources throughout the supply chain to achieve supervision and coordination of the entire supply chain. At present, all industries use digital supply chain systems to manage all aspects of the supply chain from procurement to final sales, thereby ensuring product circulation and quality. However, traditional supply chain systems usually use a centralized data storage model, which has problems such as insufficient information transparency and easy data forgery and tampering, making it difficult for all participants to cooperate in a low-trust environment.

[0003] Blockchain can effectively solve the above problems and ensure the transparency, immutability and traceability of supply chain data in a decentralized manner. However, the introduction of blockchain also brings corresponding problems: on the one hand, the traditional supply chain system is complex and has many links. The introduction of blockchain will aggravate the coupling between different business modules, resulting in more complex calling logic between various supply chain links, bringing higher costs for system development and maintenance; on the other hand, the existing blockchain-based supply chain system design solutions are mostly limited to specific fields and cannot take into account the diversified supply chain application scenarios and business characteristics. Designing and implementing systems with different business characteristics and functions but similar main functions for different segmented application scenarios will significantly increase development costs.

[0004] Based on the above background, the present invention designs and implements a customizable method for a microkernel-based blockchain supply chain system, which supports supply chain enterprises to customize and create a blockchain-based supply chain system according to their own business processes and needs. In response to the problem of high business complexity, the method introduces domain-driven design to divide the supply chain business into domains, build domain models, reduce the coupling between business modules, and simplify the call logic. In response to the problem of low adaptability to multiple application scenarios, the method introduces a microkernel architecture model, divides similar main functions in different supply chain application scenarios into core modules; and divides feature functions into plug-in modules, so that users can select modules according to business needs to assemble and build supply chain systems, thereby flexibly responding to changes in demand for different supply chain scenarios. The method aims to reduce the development threshold and cost of blockchain-based supply chain systems, improve system development efficiency, and flexibly respond to business needs of different supply chain scenarios. Summary of the invention

[0005] The purpose of the present invention is to provide a customizable method for a blockchain supply chain system based on a microkernel in view of the shortcomings of the existing methods. By introducing blockchain technology, the present invention aims to ensure the transparency and traceability of supply chain data. At the same time, based on domain-driven design, the division of business and functions in the customizable domain of the blockchain-based supply chain system is realized, and the complex business processes of the blockchain-based supply chain are clearly described, thereby constructing a reusable and complete supply chain product traceability system architecture. This method not only reduces the complexity of the system, but also improves the scalability, maintainability and development efficiency of the system. At the same time, the present invention also combines the microkernel and plug-ins to realize the independent operation and update of each domain model through microservices, providing flexible support for changes in supply chain business. By realizing the public domain and feature domain, different demand changes are met in the form of plug-ins and embedded parameters.

[0006] To achieve the above purpose, the technical solution of the present invention is: a customizable method of a blockchain supply chain system based on a microkernel, the method comprising the following steps: S1: Investigate the business requirements of the customizable construction method of the blockchain supply chain system, introduce domain-driven design, and divide the business domain functions of the blockchain-based supply chain system; S2: Carry out overall system architecture design and blockchain network architecture design; S3: Introducing the microkernel architecture model, dividing the main functions in the supply chain application scenario into core modules and the feature functions into plug-in modules, so as to realize the independent operation and update of each sub-domain model; S4: Develop the system by coding, complete the mapping between the domain model and the code, and finally realize the customizable method of the microkernel-based blockchain supply chain system.

[0007] This solution aims to solve the problem of low adaptability in multiple application scenarios. The method introduces a microkernel architecture model, which divides similar main functions in different supply chain application scenarios into core modules; and divides feature functions into plug-in modules, so that users can select modules according to business needs to assemble and build supply chain systems, flexibly respond to business needs of different supply chain scenarios, reduce the development threshold and cost of blockchain-based supply chain systems, and improve system development efficiency.

[0008] Preferably, the S1 comprises the following steps: S1-1: Conduct functional requirements analysis on the customizable construction method of blockchain supply chain system. The main stakeholders are supply chain enterprises and administrators. It is necessary to support supply chain enterprises to quickly customize and build blockchain supply chain system according to their own business needs, allowing users to focus more on supply chain business logic without paying too much attention to the underlying technical details. Based on the above analysis, the functions of the customizable construction method of the blockchain supply chain system are further divided into supply chain system construction function, blockchain management function and enterprise information management function; The supply chain system construction function supports users to build and customize blockchain supply chain systems on demand. This function includes three core sub-functions: creating a system, customizing a system, and accessing a system. The system creation function is mainly used to determine the overall framework of the system, including configuring basic system information, selecting business modules on demand, and selecting blockchain as the underlying infrastructure of the system. The system customization function is used to customize each business module in the system in detail, including three sub-functions: customizing fields, configuring channels, and configuring chain codes. The system access function is used to access and operate the created and customized blockchain supply chain system. The blockchain management function encapsulates the tedious blockchain network construction and management tasks into services and provides them to users. Users can quickly and visually build and manage the Fabric blockchain network on this platform without having to understand a lot of Fabric blockchain technology knowledge. The blockchain network can provide infrastructure support for the supply chain system built by users. The blockchain management function includes three core functions: creating a blockchain, viewing a blockchain, and managing blockchain members. The enterprise information management function includes three core sub-functions: registering enterprise information, improving enterprise qualifications, and reviewing information and qualifications. After registering and logging in for the first time, users need to register the basic information of the enterprise and improve the enterprise qualifications. The platform administrator can review the basic information and qualifications of the enterprise; S1-2: Introduce domain-driven design to analyze supply chain businesses in different scenarios, and divide business modules for users to select and flexibly customize according to business needs; Through literature research and field research, we obtain and summarize the supply chain business demand characteristics of typical scenarios, analyze the needs of different types of users for the system. The roles included in the system include suppliers, manufacturers, processors, distributors, retailers, consumers, and regulatory organizations, and obtain user stories; Among them, the common demand of all roles is to be able to store information on the chain to improve information transparency and reduce the trust cost between different enterprises or organizations; suppliers, manufacturers and processors can manage basic information, including product information, warehouse information and logistics company information; suppliers and manufacturers manage the procurement process, including the management of purchase orders and the delivery of orders and the warehousing of products; manufacturers can manage the production process, including the formulation of production work orders and the management of workshop information, production materials and product entry and exit; processors can manage the processing process, including factory information, processing work orders and product entry and exit; distributors can manage the sales process, including the management of customers and sales orders, and can also handle order delivery and product entry and exit; regulatory organizations have product quality inspection management functions; consumers and regulatory organizations can directly obtain traceability information of the entire product process without logging in; S1-3: Based on separation of concerns, decompose the user stories obtained in step S1-2. The goal is to assign different concerns or responsibilities in the supply chain business to different areas, so that each area can focus on its own business responsibilities. The decomposition will stop when the decomposed sub-user stories only focus on a very small area problem or become an operation. The user stories of the supply chain business are decomposed into ten top-level user stories, namely user management, information management, procurement management, warehouse management, sales management, logistics management, production management, processing management, quality inspection management and product traceability; The user management function allows users to register, log in and control permissions; in terms of information management, product types can be added, and detailed information about products, warehouses, companies and suppliers can be filled in; the procurement process includes the process of filling in purchase orders; in warehouse management, users can query inventory information, fill in inbound and outbound documents, download outbound orders and view inventory status; sales management involves filling in customer information and sales orders; logistics management includes finding logistics companies, filling in shipping information and shipping time; production management focuses on filling in production work orders and factory information; processing management requires filling in processing work orders; quality inspection management covers the steps of uploading quality inspection reports, reviewing reports and creating traceability codes. Finally, the product traceability function allows users to download and query product traceability information, ensuring the transparency and traceability of the supply chain; S1-4: After the user stories are decomposed, they are divided according to the focus of each user story. User stories with similar focus will be divided into the same subdomain. In the user story decomposition of the supply chain business, the three user-related sub-user stories of user registration, user login and user authority control are all concerned with user management business and are aggregated into the user domain. The two sub-user stories of adding product types and filling in product information are both concerned with the management operations of product information and are divided into the product domain. The sub-user stories of filling in supplier information and filling in purchase orders are all concerned with procurement business and are separately divided into the procurement domain. Filling in warehouse information, searching for warehouse information, filling in incoming orders, filling in outgoing orders, downloading outgoing orders and querying inventory are all operations related to warehousing business and are divided into the warehousing domain. Filling in customer information and sales orders are both areas related to sales and are aggregated into the sales domain and filled in logistics information. The two sub-user stories of filling in company information, searching for logistics company information and filling in delivery information are both operations that focus on logistics information management and are divided into the logistics domain. Filling in workshop information and filling in production work orders are both operations related to production and are divided into the production domain. Filling in factory information and filling in processing work orders are both operations related to processing and are divided into the processing domain. Uploading and reviewing quality inspection reports are both business operations related to quality inspection and are divided into the quality inspection domain. Finally, operations related to creating traceability codes, downloading traceability codes and querying traceability information are aggregated into the traceability domain. Finally, ten sub-domains are divided, namely the user domain, procurement domain, warehousing domain, logistics domain, sales domain, production domain, processing domain, product domain, quality inspection domain and traceability domain.

[0009] Preferably, S2 comprises the following steps: S2-1: Based on the domain division results of S1, the system is divided into bounded contexts to obtain user context, product context, procurement context, warehousing context, sales context, logistics context, production context, processing context, quality inspection context and logistics context. S2-2: Combined with the business logic of the system, use the compliance, customer / supplier, and anti-corrosion layer bounded context mapping patterns to determine the system bounded context mapping relationship, that is, the dependency relationship and logic between each bounded context in the system; Among them, the purchasing and sales contexts directly rely on and receive product information provided by the product context, and form a subordinate mapping relationship with the product context. The warehousing context needs to rely on the data provided by the sales, purchasing, and processing contexts, and provide data to the quality inspection context. A customer / supplier mapping relationship is formed between these contexts; the warehousing context and the traceability context both rely on the data of multiple contexts such as purchasing, sales, and production. Both contexts have an anti-corrosion layer. S2-3: Based on the results of domain division and bounded context division, use microkernel architecture and domain-driven design methods to design the overall architecture of the system; The overall architecture is mainly divided into display layer, gateway layer, business service layer, blockchain layer and data storage layer. The display layer mainly includes the front-end UI interface of the customizable construction platform and the front-end UI interface of the blockchain supply chain system. It can provide a friendly interactive interface to various users and call the corresponding back-end interface according to user operations. The front-end is implemented using the Vue framework and the Element UI component library, which is user-friendly, flexible, and componentized. It uses the Nginx server to manage front-end static resources and proxy back-end services. The gateway layer mainly includes a unified entrance for the front-end to connect to various modules and services in the back-end. It does not involve specific business logic. It can perform user authentication and route requests sent by the front-end to the corresponding interface.

[0010] The business service layer mainly includes the core business services of the platform, which consists of customized construction services and supply chain services. Through domain-driven design and microkernel architecture mode, the supply chain business of typical scenarios is analyzed, summarized and designed, and the supply chain business is divided into six core modules: user management, product management, procurement management, logistics management, sales management and warehousing management, as well as four plug-in modules: production management, processing management, quality inspection management and traceability management. The customized construction service is used to support the construction and customization of the blockchain supply chain system. Based on the functional requirements of the platform, four functional modules are divided, namely the supply chain system construction module, the supply chain system customization module, the blockchain management module and the enterprise information management module. Among them, the supply chain system construction module allows users to select the core modules and plug-in modules of the supply chain business on demand to customize the assembly and construction of the supply chain system. The supply chain system customization module supports users to make detailed customizations to the various business modules they choose, including custom fields, configuration channels and configuration chain codes. The blockchain management module is used to provide blockchain infrastructure support for the system built by users, allowing users to quickly and visually build and manage the Fabric blockchain network. The blockchain layer mainly includes the Fabric blockchain as the underlying support. The Fabric blockchain network is deployed and run by the Docker container service. The Fabric blockchain network uses CouchDB as the state database. The functional interface of the business service layer manages nodes, channels and chain codes of the Fabric blockchain network. The supply chain business module can interact with the chain code of the blockchain network by connecting and accessing the Fabric blockchain network through the Fabric client. The data storage layer mainly includes MySQL database, Redis, OSS object storage, and RabbitMQ message queue, which provide support for the storage and management of business service layer data. Among them, MySQL database is used to persist structured data, Redis is used to cache data to improve the platform response speed, OSS object storage is used to store various files uploaded by users, and RabbitMQ message queue is used to support the platform to achieve asynchronous communication, which can reduce the coupling degree of the platform and improve the platform performance. S2-4: Based on the results of domain division and bounded context division, use the alliance chain multi-channel technology and domain-driven design method to design the blockchain storage network architecture; Fabric blockchain is a consortium chain, which is jointly managed by multiple parties. Each party can be called an organization member on the chain. Users can create blockchains in the system, and the platform will automatically build a corresponding Fabric blockchain network based on the information filled in by the user. The blockchain network can be used by the supply chain system built by the user. In addition, users can invite other corporate users on the platform to join the blockchain network and become members on the chain, thereby jointly managing the Fabric blockchain network with other companies.

[0011] In addition to ordinary organization members, the Fabric blockchain network also includes a sorting organization by default. This organization is a special organization that provides sorting services. It is responsible for sorting transactions and maintaining a globally consistent transaction order. It does not correspond to corporate users in the platform. Each organization has a CA (Certificate Authority, CA) node and a Cli node. The CA node is responsible for issuing and managing certificates for the organization, and the Cli node is mainly used for interaction and management with the blockchain network. The sorting organization also includes Raft consensus and sorting nodes, which are mainly responsible for managing transactions in the Fabric blockchain network, sorting received transactions, generating a new ordered transaction block, and signing the generated block with its certificate, and finally distributing the transaction block to the corresponding channel. Other ordinary organizations contain their own Peer nodes. Peer nodes are responsible for processing transaction requests and saving and maintaining blockchain ledgers. Peer nodes can be divided into master nodes, accounting nodes, anchor nodes, and endorsement nodes according to their functions.

[0012] Based on the idea of ​​business domain division, this method provides users with a channel for each supply chain business module to select and customize. The channel contains one or more chain codes to support the functions of the business module. After selecting a business module according to needs, users need to configure the module's channel and chain code. The chain code implements the module's business logic. The platform will automatically create a corresponding channel for each business module based on the information and deploy the chain code to the channel.

[0013] Preferably, S3 comprises the following steps: Based on the domain division and boundary division context results obtained in steps S1 and S2, each subdomain is modeled, and the entities, value objects, and domain services that should be included in each subdomain are identified, thereby establishing a domain model, wherein the specific field attributes that the entities and value objects should include can be customized on demand by the user through the platform's supply chain system customization module.

[0014] The microkernel architecture consists of two parts: the core system and the plug-in. The core system needs to provide the most basic set of functions required by the system, while the plug-in is used to expand specific business functions to the core system. Among the ten subdomains related to the supply chain business, the six subdomains of user domain, product domain, procurement domain, warehousing domain, logistics domain and sales domain are required in almost all supply chain scenarios, and together they form the skeleton of the supply chain system, so these six subdomains are divided into the core system. Although the four subdomains of production domain, processing domain, quality inspection domain and traceability domain are very important to the supply chain system of some industries, they are selected by enterprises according to their own business needs. Not all supply chain systems need the functions of these fields, so these four subdomains are divided into plug-in systems.

[0015] Preferably, S4 comprises the following steps: Based on the system architecture design and the models of each subdomain, the system is coded and developed, including six core modules: user management, product management, procurement management, logistics management, sales management, and warehouse management, as well as four plug-in modules: production management, processing management, quality inspection management, and traceability management. The mapping between the domain model and the code is completed. The system coding also includes the main functional modules of the platform, including supply chain system construction, supply chain system customization, blockchain management, and enterprise information management. The supply chain system construction module supports users to select the supply chain business core modules and plug-in modules identified in this article as needed to quickly assemble and build the system, and allows users to access and operate the system; the supply chain system customization module allows users to customize each business module of their choice in detail, including customizing field attributes, configuring corresponding Fabric network channels, and chain codes containing business logic; the blockchain management module allows users to quickly and visually build and manage the Fabric blockchain network, which will serve as the infrastructure to support the system built by users; the enterprise information management module is mainly responsible for managing and authenticating users' enterprise information and qualifications.

[0016] An electronic device comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the customizable method of the microkernel-based blockchain supply chain system is implemented.

[0017] A computer-readable storage medium stores computer instructions, which, when executed by a processor, implement the microkernel-based blockchain supply chain system customizable method.

[0018] Beneficial effects of the present invention: Compared with the traditional supply chain system, the customizable method of the microkernel-based blockchain supply chain system designed and implemented by this system can support users to quickly and customized build a blockchain supply chain system. On the one hand, the platform applies the domain-driven design method and microkernel architecture model to the supply chain business in terms of design, reducing the business complexity of the supply chain system and meeting the characteristic requirements of different supply chain scenarios; on the other hand, the platform implements the customized construction service of the blockchain supply chain system, allowing users to select and customize business modules on demand to assemble and build the blockchain supply chain system, and visually build and manage the Fabric blockchain network with one click. The platform can improve the development efficiency of the blockchain supply chain system, reduce the cost and difficulty of building and managing the blockchain network, and enable users to pay more attention to the business level of the supply chain. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] Figure 1 This is a flowchart of a customizable method for a microkernel-based blockchain supply chain system. Figure 2 For customizable method use case diagrams, Figure 3 To customize the system function use case diagram, Figure 4 A schematic diagram of the system domain division, Figure 5 This is a diagram of the bounded context division and mapping of the system. Figure 6 The overall architecture diagram of the system is as follows: Figure 7 This is a schematic diagram of the blockchain network architecture of the system. Figure 8 This is an example diagram of a domain-driven microkernel architecture. DETAILED DESCRIPTION

[0020] The present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the present invention, rather than to limit the present invention. It should also be noted that, for ease of description, only the parts related to the present invention, rather than all structures, are shown in the accompanying drawings.

[0021] Example: See Figures 1 to 8 As shown, the present invention provides a customizable method for a blockchain supply chain system based on a microkernel, comprising the following steps: The embodiment will select the effect of the present invention in the actual application scenario, based on the process such as Figure 1 This example provides a supply chain enterprise with a customizable construction method for a blockchain system oriented to the supply chain, supporting enterprises to quickly and customarily build a blockchain supply chain system according to their own business needs.

[0022] Step 1: Investigate the business requirements of the customizable construction method of the blockchain supply chain system, introduce domain-driven design, and divide the business domain functions of the blockchain-based supply chain system.

[0023] The main stakeholders of this method are supply chain enterprises and platform administrators. The method supports supply chain enterprises to quickly customize and build blockchain supply chain systems according to their own business needs, allowing users to focus more on supply chain business logic without paying too much attention to the underlying technical details. The main functions of the system are supply chain system construction, blockchain management and enterprise information management. The use case diagram of the system functions is shown in the figure below. Figure 2 shown.

[0024] The supply chain system construction function supports users to build and customize blockchain supply chain systems on demand. This function includes three core sub-functions: creating a system, customizing a system, and accessing a system. Among them, the use case diagram of the customized system is as follows Figure 3 As shown in the figure, the customized system function includes three sub-functions: custom fields, channel configuration, and chain code configuration. Through these three sub-functions, users can customize specific field attributes for each business module, visually create Fabric blockchain network channels, and deploy chain codes containing module business logic. Among them, the channel configuration sub-function is based on the multi-channel technology of the Fabric blockchain, which can support users to create corresponding channels for business modules on the blockchain network that the system relies on. This function can isolate the data of each business module, ensure the privacy of the data, and alleviate the pressure of on-chain data storage.

[0025] The blockchain management function encapsulates the tedious tasks of building and managing blockchain networks into services and provides them to users. Users can quickly and visually build and manage the Fabric blockchain network on this platform without having to understand a lot of Fabric blockchain technology knowledge. The use case description of creating a blockchain is shown in Table 1. In the blockchain creation function, users need to configure the basic information of the blockchain, including the name and description of the blockchain. Next, users need to configure the member information of the blockchain. Users who join the same blockchain network will jointly manage and maintain the entire blockchain network. After the user submits the configuration information, the system stores the configuration information in the database, and the system needs to automatically build the corresponding Fabric blockchain network based on the basic information and member information of the blockchain configured by the user.

[0026] surface Create a blockchain use case description The enterprise information management function includes three core sub-functions: registering enterprise information, improving enterprise qualifications, and reviewing information and qualifications. The use case descriptions of registering enterprise information and improving enterprise qualifications are shown in Table 2 and Table 3 respectively. After the supply chain enterprise completes the registration on the platform and logs in for the first time, it needs to register the basic information of the enterprise and improve the enterprise qualifications. Improving enterprise qualifications includes uploading relevant qualification certificates such as business licenses, production licenses and health licenses. After the user submits the information and qualifications, the administrator of the platform will verify the information and qualifications. If the enterprise information and qualifications are accurate, the review will be passed and the user can use other functions of the platform. When the data filled in by the user on the platform or the uploaded files do not meet the filling rules of the platform, the platform will intercept and prompt the user to the correct rules.

[0027] Table 2 Description of the use case for registering basic information of an enterprise Table 3 Improve the description of enterprise qualification use cases After identifying the functional requirements of the system, the system further analyzes the supply chain business in different scenarios and divides the business modules for users to select and flexibly customize according to business needs.

[0028] The user stories obtained through literature research and field research in this example are sorted out, and the user stories of different supply chain scenarios are integrated to obtain the top-level user stories that can cover various typical supply chain scenarios. The results are shown in Table 4. The supply chain involves multiple supply chain companies, and supply chain companies play different roles in the supply chain, including suppliers, manufacturers, processors, distributors, retailers, consumers, and regulatory organizations. Among them, the common demand of all roles is to be able to store information on the chain to improve information transparency and reduce the trust cost between different enterprises or organizations; suppliers, manufacturers and processors hope to be able to manage basic information, including product information, warehouse information and logistics company information; suppliers and manufacturers hope to manage the procurement process, including the management of purchase orders and the delivery of orders, and the warehousing of products; manufacturers hope to manage the production process, including the formulation of production work orders and the management of workshop information, production materials and product entry and exit; processors hope to manage the processing process, including factory information, processing work orders and product entry and exit; distributors hope to manage the sales link, including the management of customers and sales orders, and also hope to handle order delivery and product entry and exit; regulatory organizations hope to have product quality inspection management functions; consumers and regulatory organizations hope to directly obtain traceability information of the entire product process without logging in.

[0029] Table 4 Top-level user stories for supply chain business After analyzing the supply chain business, we will use the strategic design of domain-driven design to disassemble the supply chain business. In the user story decomposition of the supply chain business, the three user-related sub-user stories of user registration, user login and user permission control are all focused on user management business, so they are all aggregated to the user subdomain. The two sub-user stories of adding product types and filling in product information are both focused on the management operations of product information, so they are divided into the product subdomain. The sub-user stories of filling in supplier information and filling in purchase orders are both focused on the procurement business, so they are separately divided into the procurement subdomain. Filling in warehouse information, searching for warehouse information, filling in the warehouse entry form, filling in the warehouse outbound form, downloading the warehouse outbound form and querying inventory are all operations related to the warehousing business, so they are divided into the warehousing subdomain. Filling in customer information and sales orders are both sales-related fields, so they are aggregated to the sales subdomain. The two sub-user stories of filling in logistics company information, searching for logistics company information and filling in shipping information are both focused on the operations of logistics information management, so they are divided into the logistics subdomain. Filling in workshop information and filling in production work orders are both production-related operations, so they are divided into the production subdomain. Filling in factory information and filling in processing work orders are both focused on processing-related businesses, so they are divided into the processing subdomain. Uploading and reviewing quality inspection reports are both business operations related to quality inspection, so they are divided into the quality inspection subdomain. Finally, operations related to traceability, such as creating traceability codes, downloading traceability codes, and querying traceability information, are all aggregated into the traceability subdomain. The domain division results are as follows: Figure 4 shown.

[0030] Step 2: Design the overall system architecture and blockchain network architecture.

[0031] Based on the domain division results of step 1, the system is divided into bounded contexts to obtain user context, product context, procurement context, warehousing context, sales context, logistics context, production context, processing context, quality inspection context and logistics context. Combined with the business logic of the system, the system bounded context mapping relationship is determined using the compliance, customer / supplier, and anti-corrosion layer bounded context mapping patterns. Among them, the procurement and sales contexts directly rely on and receive product information provided by the product context, forming a compliance mapping relationship with the product context. The warehousing context needs to rely on the data provided by the sales, procurement, and processing contexts, and provide data to the quality inspection context. A customer / supplier mapping relationship is formed between these contexts; the warehousing context and traceability context both rely on the data of multiple contexts such as procurement, sales, and production. Both contexts are added with an anti-corrosion layer. The bounded context division and mapping diagram of the system is shown in the figure below. Figure 5 shown.

[0032] The overall architecture of the customizable build system is as follows Figure 6 As shown in the figure, this example uses the idea of ​​front-end and back-end separation to design and develop the platform, with the goal of achieving a high cohesion and low coupling architecture. The architecture is mainly divided into the display layer, gateway layer, business service layer, blockchain layer and data storage layer.

[0033] The display layer mainly includes the front-end UI interface of the customizable construction platform and the front-end UI interface of the blockchain supply chain system. It can provide a friendly interactive interface to various users and call the corresponding back-end interface according to user operations. The front-end is implemented using the Vue framework and the Element UI component library, which is user-friendly, flexible, and componentized. It uses the Nginx server to manage front-end static resources and proxy back-end services.

[0034] The gateway layer mainly includes a unified entrance for the front-end to connect to various modules and services in the back-end. It does not involve specific business logic. It can perform user authentication and route requests sent by the front-end to the corresponding interface.

[0035] The business service layer mainly includes the core business services of the platform, which consists of customized construction services and supply chain services. Through domain-driven design and microkernel architecture mode, the supply chain business of typical scenarios is analyzed, summarized and designed, and the supply chain business is divided into six core modules: user management, product management, procurement management, logistics management, sales management and warehousing management, as well as four plug-in modules: production management, processing management, quality inspection management and traceability management. The customized construction service is used to support the construction and customization of the blockchain supply chain system. Based on the functional requirements of the platform, four functional modules are divided, namely, the supply chain system construction module, the supply chain system customization module, the blockchain management module and the enterprise information management module. Among them, the supply chain system construction module allows users to select the core modules and plug-in modules of the supply chain business on demand to customize the assembly and construction of the supply chain system. The supply chain system customization module supports users to make detailed customizations to the various business modules they choose, including custom fields, configuration channels and configuration chain codes. The blockchain management module is used to provide blockchain infrastructure support for the system built by users, allowing users to quickly and visually build and manage the Fabric blockchain network.

[0036] The blockchain layer mainly includes the Fabric blockchain as the underlying support. The Fabric blockchain network is deployed and run by the Docker container service. The Fabric blockchain network uses CouchDB as the state database. The functional interface of the business service layer manages nodes, channels and chain codes for the Fabric blockchain network. The supply chain business module can interact with the chain code of the blockchain network by connecting and accessing the Fabric blockchain network through the Fabric client.

[0037] The data storage layer mainly includes MySQL database, Redis, OSS object storage, and RabbitMQ message queue, which provide support for the storage and management of business service layer data. Among them, MySQL database is used to persistently store structured data, Redis is used to cache data to improve the platform response speed, OSS object storage is used to store various files uploaded by users, and RabbitMQ message queue is used to support the platform to achieve asynchronous communication, which can reduce the coupling degree of the platform and improve the platform performance.

[0038] In this example, the blockchain network architecture is implemented using the Fabric blockchain. The network architecture diagram is as follows: Figure 7 As shown. Users can create blockchains in the system, and the platform will automatically build the corresponding Fabric blockchain network based on the information filled in by the user. The blockchain network can be used by the supply chain system built by the user. In addition, users can invite other corporate users on the platform to join the blockchain network and become members on the chain, thereby jointly managing the Fabric blockchain network with other companies.

[0039] In addition to ordinary organization members, the Fabric blockchain network also includes a sorting organization by default. This organization is a special organization that provides sorting services. It is responsible for sorting transactions and maintaining a globally consistent transaction order. It does not correspond to corporate users in the platform. Each organization has a CA (Certificate Authority, CA) node and a Cli node. The CA node is responsible for issuing and managing certificates for the organization, and the Cli node is mainly used for interaction and management with the blockchain network. The sorting organization also includes Raft consensus and sorting nodes, which are mainly responsible for managing transactions in the Fabric blockchain network, sorting received transactions, generating a new ordered transaction block, and signing the generated block with its certificate, and finally distributing the transaction block to the corresponding channel. Other ordinary organizations contain their own Peer nodes. Peer nodes are responsible for processing transaction requests and saving and maintaining blockchain ledgers. Peer nodes can be divided into master nodes, accounting nodes, anchor nodes, and endorsement nodes according to their functions.

[0040] Based on the idea of ​​business domain division, this method provides users with a channel for each supply chain business module to select and customize. The channel contains one or more chain codes to support the functions of the business module. After selecting a business module according to needs, users need to configure the module's channel and chain code. The chain code implements the module's business logic. The platform will automatically create a corresponding channel for each business module based on the information and deploy the chain code to the channel.

[0041] Step 3: Introduce the microkernel architecture model, divide the main functions in the supply chain application scenario into core modules, and divide the feature functions into plug-in modules, so as to realize the independent operation and update of each sub-domain model.

[0042] Based on the domain division and boundary division context results obtained in steps 1 and 2, each subdomain is modeled, and the entities, value objects, and domain services that should be included in each subdomain are identified to establish a domain model. The specific field attributes that entities and value objects should include can be customized on demand by users through the platform's supply chain system customization module.

[0043] The microkernel architecture consists of two parts: the core system and plug-ins. The core system needs to provide the most basic set of functions required by the system, while plug-ins are used to expand specific business functions to the core system. Among the ten subdomains related to supply chain business, the six subdomains of user domain, product domain, procurement domain, warehousing domain, logistics domain and sales domain are required in almost all supply chain scenarios, and together they constitute the skeleton of the supply chain system. Therefore, these six subdomains are divided into the core system. Although the four subdomains of production domain, processing domain, quality inspection domain and traceability domain are very important to the supply chain systems of certain industries, they are selected by enterprises according to their own business needs. Not all supply chain systems require the functions of these areas. Therefore, these four subdomains are divided into plug-in systems. The schematic diagram of the microkernel architecture of this example is shown as follows. Figure 8 shown.

[0044] Step 4: Code and develop the system, complete the mapping between the domain model and the code, and finally realize the customizable method of the microkernel-based blockchain supply chain system.

[0045] Based on the system architecture design and the models of each subdomain, the system is coded and developed, including six core modules: user management, product management, procurement management, logistics management, sales management, and warehouse management, as well as four plug-in modules: production management, processing management, quality inspection management, and traceability management. The mapping between the domain model and the code is completed. The system coding also includes the main functional modules of the platform, including supply chain system construction, supply chain system customization, blockchain management, and enterprise information management. The supply chain system construction module supports users to select the supply chain business core modules and plug-in modules identified in this article as needed to quickly assemble and build the system, and allows users to access and operate the system; the supply chain system customization module allows users to customize each business module of their choice in detail, including customizing field attributes, configuring corresponding Fabric network channels, and chain codes containing business logic; the blockchain management module allows users to quickly and visually build and manage the Fabric blockchain network, which will serve as the infrastructure to support the system built by users; the enterprise information management module is mainly responsible for managing and authenticating users' enterprise information and qualifications.

[0046] It should be noted that the above embodiments are not intended to limit the protection scope of the present invention, and equivalent changes or substitutions made on the basis of the above technical solutions all fall within the protection scope of the claims of the present invention.

Claims

1. A customizable method for a microkernel-based blockchain supply chain system, characterized in that: The method comprises the following steps: S1: Investigate the business requirements of the customizable construction method of the blockchain supply chain system, introduce domain-driven design, and divide the business domain functions of the blockchain-based supply chain system; S2: Carry out overall system architecture design and blockchain network architecture design; S3: Introducing the microkernel architecture model, dividing the main functions in the supply chain application scenario into core modules and the feature functions into plug-in modules, so as to realize the independent operation and update of each sub-domain model; S4: Develop the system by coding, complete the mapping between the domain model and the code, and finally realize the customizable method of the microkernel-based blockchain supply chain system.

2. The microkernel-based blockchain supply chain system customizable method according to claim 1 is characterized in that: The S1 comprises the following steps: S1-1: Conduct functional requirements analysis on the customizable construction method of blockchain supply chain system. The main stakeholders are supply chain enterprises and administrators. It is necessary to support supply chain enterprises to quickly customize and build blockchain supply chain system according to their own business needs. Based on the above analysis, the functions of the customizable construction method of the blockchain supply chain system are divided into supply chain system construction function, blockchain management function and enterprise information management function; The supply chain system construction function supports users to build and customize blockchain supply chain systems on demand. This function includes three core sub-functions: creating a system, customizing a system, and accessing a system. The system creation function is used to determine the overall framework of the system, including three operations: configuring basic system information, selecting business modules on demand, and selecting blockchain as the underlying infrastructure of the system. The system customization function is used to customize each business module in the system in detail, including three sub-functions: customizing fields, configuring channels, and configuring chain codes. The system access function is used to access and operate the created and customized blockchain supply chain system. Blockchain management encapsulates the tedious tasks of building and managing blockchain networks into services and provides them to users. Users can quickly and visually build and manage the Fabric blockchain network on this platform without having to understand a lot of Fabric blockchain technical knowledge. The blockchain network can provide infrastructure support for the supply chain system built by users. The blockchain management function includes three core functions: creating blockchains, viewing blockchains, and managing blockchain members. The enterprise information management function includes three core sub-functions: registering enterprise information, improving enterprise qualifications, and reviewing information and qualifications. After registering and logging in for the first time, users need to register the basic information of the enterprise and improve the enterprise qualifications. The platform administrator reviews the basic information and qualifications of the enterprise. S1-2: Introduce domain-driven design to analyze supply chain businesses in different scenarios, and divide business modules for users to select and flexibly customize according to business needs; Through literature research and field research, we obtain and summarize the supply chain business demand characteristics of typical scenarios, analyze the needs of different types of users for the system. The roles included in the system include suppliers, manufacturers, processors, distributors, retailers, consumers, and regulatory organizations, and obtain user stories; Among them, the common demand of all roles is to be able to store information on the chain to improve information transparency and reduce the trust cost between different enterprises or organizations; suppliers, manufacturers and processors can manage basic information, including product information, warehouse information and logistics company information; suppliers and manufacturers manage the procurement process, including the management of purchase orders and the delivery of orders and the warehousing of products; manufacturers can manage the production process, including the formulation of production work orders and the management of workshop information, production materials and product entry and exit; processors can manage the processing process, including factory information, processing work orders and product entry and exit; distributors can manage the sales process, including the management of customers and sales orders, and can also handle order delivery and product entry and exit; regulatory organizations have product quality inspection management functions; consumers and regulatory organizations can directly obtain traceability information of the entire product process without logging in; S1-3: Based on separation of concerns, decompose the user stories obtained in step S1-2. The goal is to assign different concerns or responsibilities in the supply chain business to different areas, so that each area can focus on its own business responsibilities. The decomposition will stop when the decomposed sub-user stories only focus on a very small area problem or become an operation. The user stories of the supply chain business are decomposed into ten top-level user stories, namely user management, information management, procurement management, warehouse management, sales management, logistics management, production management, processing management, quality inspection management and product traceability; The user management function allows users to register, log in and control permissions; in terms of information management, add product types, fill in detailed information about products, warehouses, companies and suppliers; the procurement process includes the process of filling in purchase orders; in warehouse management, users can query inventory information, fill in inbound and outbound documents, download outbound orders and view inventory status; sales management involves filling in customer information and sales orders; logistics management includes finding logistics companies, filling in shipping information and shipping time; production management focuses on filling in production work orders and factory information; processing management requires filling in processing work orders; quality inspection management covers the steps of uploading quality inspection reports, reviewing reports and creating traceability codes. Finally, the product traceability function allows users to download and query product traceability information, ensuring the transparency and traceability of the supply chain; S1-4: After the user stories are decomposed, they are divided according to the focus of each user story. User stories with similar focus will be divided into the same subdomain. In the user story decomposition of the supply chain business, the three user-related sub-user stories of user registration, user login and user authority control are all concerned with user management business and are aggregated into the user domain. The two sub-user stories of adding product types and filling in product information are both concerned with the management operations of product information and are divided into the product domain. The sub-user stories of filling in supplier information and filling in purchase orders are all concerned with procurement business and are separately divided into the procurement domain. Filling in warehouse information, searching for warehouse information, filling in incoming orders, filling in outgoing orders, downloading outgoing orders and querying inventory are all operations related to warehousing business and are divided into the warehousing domain. Filling in customer information and sales orders are both areas related to sales and are aggregated into the sales domain and filled in logistics information. The two sub-user stories of filling in company information, searching for logistics company information and filling in delivery information are both operations that focus on logistics information management and are divided into the logistics domain. Filling in workshop information and filling in production work orders are both operations related to production and are divided into the production domain. Filling in factory information and filling in processing work orders are both operations related to processing and are divided into the processing domain. Uploading and reviewing quality inspection reports are both business operations related to quality inspection and are divided into the quality inspection domain. Finally, operations related to creating traceability codes, downloading traceability codes and querying traceability information are aggregated into the traceability domain. Finally, ten sub-domains are divided, namely the user domain, procurement domain, warehousing domain, logistics domain, sales domain, production domain, processing domain, product domain, quality inspection domain and traceability domain.

3. The microkernel-based blockchain supply chain system customizable method according to claim 1 is characterized in that: The S2 comprises the following steps: S2-1: Based on the domain division results of S1, the system is divided into bounded contexts to obtain user context, product context, procurement context, warehousing context, sales context, logistics context, production context, processing context, quality inspection context and logistics context. S2-2: Combined with the business logic of the system, use the compliance, customer / supplier, and anti-corrosion layer bounded context mapping patterns to determine the system bounded context mapping relationship, that is, the dependency relationship and logic between each bounded context in the system; Among them, the purchasing and sales contexts directly rely on and receive product information provided by the product context, and form a subordinate mapping relationship with the product context. The warehousing context needs to rely on the data provided by the sales, purchasing, and processing contexts, and provide data to the quality inspection context. A customer / supplier mapping relationship is formed between these contexts; the warehousing context and the traceability context both rely on the data of multiple contexts such as purchasing, sales, and production. Both contexts have an anti-corrosion layer. S2-3: Based on the results of domain division and bounded context division, use microkernel architecture and domain-driven design methods to design the overall architecture of the system; The overall architecture is mainly divided into display layer, gateway layer, business service layer, blockchain layer and data storage layer. The display layer mainly includes the front-end UI interface of the customizable construction platform and the front-end UI interface of the blockchain supply chain system. The gateway layer contains a unified entrance for the front-end to connect to various modules and services in the back-end. It does not involve specific business logic, but can perform user authentication and route requests sent by the front-end to the corresponding interface. The business service layer includes the core business services of the platform, which consists of customized construction services and supply chain services. Through domain-driven design and microkernel architecture mode, the supply chain business of typical scenarios is analyzed, summarized and designed, and the supply chain business is divided into six core modules: user management, product management, procurement management, logistics management, sales management and warehousing management, as well as four plug-in modules: production management, processing management, quality inspection management and traceability management. The customized construction service is used to support the construction and customization of the blockchain supply chain system. Based on the functional requirements of the platform, four functional modules are divided, namely the supply chain system construction module, the supply chain system customization module, the blockchain management module and the enterprise information management module. Among them, the supply chain system construction module allows users to select the core modules and plug-in modules of the supply chain business on demand to customize the assembly and construction of the supply chain system. The supply chain system customization module supports users to make detailed customizations to the various business modules they choose, including custom fields, configuration channels and configuration chain codes. The blockchain management module is used to provide blockchain infrastructure support for the system built by users, allowing users to quickly and visually build and manage the Fabric blockchain network. The blockchain layer mainly includes Fabric blockchain as the underlying support. The Fabric blockchain network is deployed and run by Docker container service. The Fabric blockchain network uses CouchDB as the state database. The functional interface of the business service layer manages nodes, channels and chain codes of the Fabric blockchain network. The Fabric blockchain network is connected and accessed through the Fabric client. The supply chain business module interacts with the chain code of the blockchain network. The data storage layer mainly includes MySQL database, Redis, OSS object storage, and RabbitMQ message queue, which provide support for the storage and management of business service layer data. Among them, MySQL database is used to persist structured data, Redis is used to cache data to improve the platform response speed, OSS object storage is used to store various files uploaded by users, and RabbitMQ message queue is used to support the platform to achieve asynchronous communication, which can reduce the coupling degree of the platform and improve the platform performance. S2-4: Based on the results of domain division and bounded context division, use consortium chain multi-channel technology and domain-driven design methods to design the blockchain storage network architecture.

4. The microkernel-based blockchain supply chain system customizable method according to claim 1 is characterized in that: The S3 comprises the following steps: Based on the domain division and boundary division context results obtained in steps S1 and S2, each subdomain is modeled, and the entities, value objects, and domain services that should be included in each subdomain are identified, thereby establishing a domain model, wherein the specific field attributes that the entities and value objects should include are customized by the user on demand through the platform's supply chain system customization module; The microkernel architecture consists of two parts: the core system and plug-ins. The core system needs to provide the most basic set of functions required by the system, and the plug-ins are used to extend specific business functions to the core system.

5. The microkernel-based blockchain supply chain system customizable method according to claim 1 is characterized in that: The S4 comprises the following steps: Based on the system architecture design and the models of each subdomain, the system is coded and developed, including six core modules: user management, product management, procurement management, logistics management, sales management, and warehouse management, as well as four plug-in modules: production management, processing management, quality inspection management, and traceability management. The mapping between the domain model and the code is completed. The system coding also includes the main functional modules of the platform, including supply chain system construction, supply chain system customization, blockchain management, and enterprise information management. The supply chain system construction module supports users to select the supply chain business core modules and plug-in modules identified in this article as needed to quickly assemble and build the system, and allows users to access and operate the system; the supply chain system customization module allows users to customize each business module of their choice in detail, including customizing field attributes, configuring corresponding Fabric network channels, and chain codes containing business logic; the blockchain management module allows users to quickly and visually build and manage the Fabric blockchain network, which will serve as the infrastructure to support the system built by users; the enterprise information management module is mainly responsible for managing and authenticating users' enterprise information and qualifications.

6. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the customizable method of the microkernel-based blockchain supply chain system as described in any one of claims 1 to 5 above is implemented.

7. A computer-readable storage medium having computer instructions stored thereon, characterized in that: When the computer instructions are executed by the processor, a customizable method for a microkernel-based blockchain supply chain system as described in any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • Multimodal transport system and method based on block chain

    CN114445010A

  • Domain-driven design method of steel traceability system based on block chain technology

    CN117272402A

  • Dalian sweet cherry traceability system based on block chain

    CN117893223A

  • Method and apparatus for operating blockchain system, device and storage medium

    US20220224545A1

  • Deterministic concurrency control for private blockchains

    US20240303659A1