Training course data processing method, computing device, storage medium and product

By constructing lesson templates that include learning planning information, and acquiring student learning behavior data across course periods, the problem of low efficiency and accuracy in traditional methods of learning progress statistics is solved, achieving efficient and accurate statistics of training course learning progress.

CN121481803APending Publication Date: 2026-02-06BEIJING 58 INFORMATION TTECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511676701.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-14
Publication Date
2026-02-06

AI Technical Summary

Technical Problem

Traditional methods are ineffective in tracking learning progress across training courses, especially when students switch between multiple courses to learn the same or different lessons, resulting in low efficiency and accuracy in tracking progress.

Method used

By constructing lesson templates that include learning planning information, learning behavior data of students can be obtained across course periods, and learning progress information can be determined by combining the learning planning information recorded in the lesson templates.

Benefits of technology

It improves the efficiency and accuracy of learning progress statistics, ensures the comprehensiveness and integrity of learning behavior data, and ensures that different learners or the same learner can use consistent learning plan information when learning the same lesson multiple times.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121481803A_ABST
    Figure CN121481803A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a training course data processing method, computing equipment, a storage medium and a product. The method comprises the steps of determining a target student user of a to-be-counted learning progress corresponding to a training course and a target course period of current learning of the target student user in the training course, and determining a target course section of the to-be-counted learning progress from a plurality of course sections of the target course period; acquiring learning behavior data of a target student user for a target course section in at least one course period of the training course, determining a target course section template corresponding to the target course section from a plurality of course section templates of the training course, and according to learning planning information contained in the target course section template and the learning behavior data, determining a target course section template corresponding to the target course section; and determining learning progress information of the target student user for the target course section. According to the technical scheme provided by the embodiment of the invention, the efficiency and accuracy of training course learning progress statistics can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a data processing method, computing device, storage medium, and product for training courses. Background Technology

[0002] With the booming development of the training industry, data processing of training courses, such as statistics on students' learning progress and scheduling of training courses, has become a core aspect of training management.

[0003] For training courses, training can be conducted across multiple sessions. Each session may contain multiple lessons that are the same or different, and students can switch between sessions to learn the same or different lessons. In this scenario, the traditional method of determining a student's learning progress based on their learning behavior data for a specific lesson within the current session is not suitable for statistical analysis of training course progress.

[0004] Therefore, for the aforementioned complex and unique training courses, how to efficiently and accurately process training course data, especially to statistically analyze the learning progress of each lesson, has become an urgent problem to be solved. Summary of the Invention

[0005] This application provides a data processing method, computing device, storage medium, and product for training courses, in order to solve the problem of low efficiency and accuracy in the statistical analysis of learning progress in training courses in the prior art.

[0006] Firstly, this application provides a data processing method for training courses, including: Identify the target learner users whose learning progress needs to be tracked for the corresponding training courses; Determine the target course period currently being studied by the target learner in the training course, and determine the target course period from multiple course periods of the target course period to be used to track the learning progress; Obtain learning behavior data of the target learner user for the target lesson in at least one session of the training course; the at least one session includes the target session; From the multiple lesson templates associated with the training course, determine the target lesson template corresponding to the target lesson; the target lesson template includes pre-set lesson information; the lesson information includes learning planning information; Based on the learning plan information of the target lesson template and the learning behavior data, the learning progress information of the target student user for the target lesson is determined.

[0007] Secondly, embodiments of this application provide a data processing apparatus for training courses, including: The learner identification module is used to identify the target learner users whose learning progress needs to be tracked for the corresponding training courses. The lesson segment determination module is used to determine the target lesson period that the target learner user is currently studying in the training course, and to determine the target lesson period to be counted from multiple lesson segments of the target lesson period; The data acquisition module is used to acquire learning behavior data of the target learner user for the target lesson in at least one course period of the training course; the at least one course period includes the target course period; The template determination module is used to determine the target lesson template corresponding to the target lesson from multiple lesson templates associated with the training course; the target lesson template includes pre-set lesson information; the lesson information includes learning planning information; The progress determination module is used to determine the learning progress information of the target student user for the target lesson based on the learning plan information of the target lesson template and the learning behavior data.

[0008] Thirdly, this application provides a computing device, including a processing component and a storage component; the storage component stores a computing program; the computer program is invoked and executed by the processing component to implement the data processing method for the training course as described in the first aspect above.

[0009] Fourthly, this application provides a computer storage medium storing a computer program thereon, which, when executed by a processing component, implements the data processing method for the training course as described in the first aspect above.

[0010] Fifthly, this application provides a computer program product, including a computer program or instructions, which, when executed by a processing component, implement the data processing method for the training course as described in the first aspect above.

[0011] This application embodiment identifies the target learner user whose learning progress is to be statistically analyzed for a training course, and the target course period in which the target learner user is currently studying within the training course. It then identifies the target course period from multiple course periods within that target course period, and obtains the learner user's learning behavior data for that target course period within at least one course period of the training course. Finally, it identifies the target course period template from multiple course period templates within the training course, and determines the learner user's learning progress information for that target course period based on the learning planning information contained in the target course period template and the learning behavior data. This embodiment provides a method for obtaining learner user's learning behavior data for a target course period across course periods, and then combining this data with the learning planning information recorded in the course period template to determine learning progress information. This method ensures the comprehensiveness and completeness of the obtained learning behavior data, thereby guaranteeing the accuracy of the determined learning progress information. In addition, this embodiment pre-builds a lesson template containing lesson information (such as learning plan information) for each lesson of the training course. The learning plan information in the lesson template can be directly reused during the process of calculating the learning progress, without the need for manual re-entry of the learning plan information for the target lesson. This improves the efficiency of learning progress statistics. Furthermore, since all lessons of the training course share the same lesson template, it can also ensure the consistency of the learning plan information used when different students perform learning progress statistics for the same target lesson, or when the same student performs learning progress statistics for the same target lesson multiple times, thereby improving the accuracy of training course learning progress statistics.

[0012] In other words, this embodiment, based on a pre-built training course lesson template, designs a method for statistically analyzing the learning progress of complex training courses using learning planning information contained in the lesson template and learning behavior data acquired across course periods. This not only improves the efficiency of learning progress statistics but also ensures accuracy. This was not achieved in traditional learning progress statistics, resulting in a new working paradigm.

[0013] These or other aspects of this application will become more apparent in the following description of the embodiments. Attached Figure Description

[0014] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings: Figure 1 A flowchart illustrating an embodiment of the data processing method for the training course provided in this application is shown. Figure 2 This illustration shows a schematic diagram of the process of statistically analyzing the learning progress of a training course in a practical application scenario provided by this application; Figure 3 This application provides a schematic diagram illustrating the data processing procedure for a training course in a real-world application scenario. Figure 4 This invention provides a schematic diagram of the device structure of one embodiment of the data processing apparatus for training courses provided in this application. Figure 5 A schematic diagram of the structure of the computing device provided in this application is shown. Detailed Implementation

[0015] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0016] It should be noted that, in the cases involving user information in the embodiments of this application, the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in the embodiments of this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse. In addition, the various models involved in this application (including but not limited to language models or large models) comply with relevant laws and standards.

[0017] Additionally, it should be noted that when user interaction operations or triggering operations are involved in the embodiments of this application, these operations include, but are not limited to, various interaction methods such as touch operations, gesture operations, voice operations, head movement operations, and eye movement operations. Touch operations include, but are not limited to, click operations, double-click operations, long-press operations, swipe operations, pinch operations, or mouse hover operations. Swipe operations include, but are not limited to, straight-line swipes and curved-line swipes.

[0018] It should be noted that the technical solutions in this application are applicable to virtual network environments, and the users described generally refer to "virtual users." Real users can register user accounts on the server through registration to obtain user identities in the network environment. The same user account can log in to the server through different types of client terminals, enabling the server to identify the same user.

[0019] Interactions between the server and the user can be based on user accounts. The data received or sent by the server to the user is also based on the user account; in reality, the user's client, corresponding to the user account, receives or sends data to the server. Furthermore, users can also communicate with each other through their user accounts. Here, "user" can refer to an individual or an organization, such as a company; this application does not impose specific restrictions.

[0020] For ease of reference, some terms that may be used in this application, such as training course, course duration, and class period, are defined as follows. It is understood that the terms and their respective definitions are not strictly limited to these definitions, and terms may be further defined through their use in this disclosure: In the vocational training courses of this application embodiment, a training course comprises multiple semesters, and a semester comprises multiple lessons. A training course refers to a systematic collection of teaching content designed to achieve a specific learning objective, typically revolving around a theme or subject, such as an introductory Python programming course or an advanced mathematics course. A semester is a specific implementation phase or batch of the course, representing a single session of the training course within a specific time period, such as the first semester of the introductory Python programming course, the second semester of the introductory Python programming course, etc. A lesson represents a specific teaching activity, such as a single lesson, an explanation of a knowledge point, or a practice task, such as an explanation of variables and data types, or an explanation of conditional and loop statements. The learning method corresponding to a lesson (i.e., the lesson learning method) can include, but is not limited to, online videos and offline practical exercises. Online videos can further include live online videos and pre-recorded online videos. Different semesters may contain the same lessons or different lessons. For example, a training course may include semester 1, semester 2, and semester 3. In this scenario, Course Period 1 includes Lesson A, Lesson B, and Lesson C. If Course Period 1 is effective, then when scheduling Course Period 2, Lesson A, Lesson B, and Lesson C can also be set for Course Period 2. At this point, Course Period 1 and Course Period 2 contain the same lessons, meaning they satisfy a lesson matching relationship. Suppose the academic staff adjusts Lesson C of the training course based on the course type and chapter difficulty, resulting in Lesson D. To ensure that students can learn all the latest content of the course, the subsequently created Course Period 3 can include Lesson A, Lesson B, and Lesson D (Lesson D replaces Lesson C). In this scenario, for Lesson A, students first learn a portion of Lesson A in Course Period 1, and then their current course period changes from Course Period 1 to Course Period 3. Afterwards, students can continue learning the unlearned parts of Lesson A from Lesson A in Course Period 3, thus achieving complete learning of Lesson A's content.

[0021] In related technologies, traditional methods for tracking learning progress often determine a student's progress for a specific lesson within the current learning period based on their learning behavior data. While this method can accurately track progress for students learning content within a fixed period, it is not suitable for the complex scenarios presented in this solution, where students jump between multiple periods to learn the same or different lessons.

[0022] To address the aforementioned issues, this application provides a solution. The basic idea is as follows: First, identify the target learner user whose learning progress needs to be statistically analyzed for a training course, and the target course period in which the target learner user is currently studying within the training course. Then, determine the target course period from multiple course periods within that target course period. Next, acquire the learning behavior data of the target learner user for the target course period within at least one course period of the training course. Finally, determine the target course period template from multiple course period templates within the training course. Based on the learning planning information contained in the target course period template and the learning behavior data, determine the learning progress information of the target learner user for the target course period. This embodiment provides a method for acquiring learner user learning behavior data for a target course period across course periods, and then combining this data with the learning planning information recorded in the course period template to determine learning progress information. This method ensures the comprehensiveness and completeness of the acquired learning behavior data, thereby guaranteeing the accuracy of the determined learning progress information. In addition, this embodiment pre-builds a lesson template containing lesson information (such as learning plan information) for each lesson of the training course. The learning plan information in the lesson template can be directly reused during the process of calculating the learning progress, without the need for manual re-entry of the learning plan information for the target lesson. This improves the efficiency of learning progress statistics. Furthermore, since all lessons of the training course share the same lesson template, it can also ensure the consistency of the learning plan information used when different students perform learning progress statistics for the same target lesson, or when the same student performs learning progress statistics for the same target lesson multiple times, thereby improving the accuracy of training course learning progress statistics.

[0023] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0024] Figure 1This is a flowchart of an embodiment of a data processing method for a training course provided in this application. The technical solution of this embodiment can be executed by a processing end, which can be a server in an online system (such as an online course training system), or it can be other nodes independent of the server in the online system.

[0025] In practical applications, online systems typically consist of a first user terminal, a second user terminal, and a server. The first and second user terminals establish connections with the server via a network. The network provides the medium for communication links between the first and second user terminals and the server. The network can include various connection types, such as wired or wireless communication links or fiber optic cables, etc.

[0026] The first user terminal can be for the training service provider, operated by the provider's staff (such as academic staff) to conduct course training, build lesson templates, and manage students. The second user terminal can be for students, allowing them to interact with the training courses and view their learning progress.

[0027] The first and second user clients can interact with the server via the network to receive or send messages. For example, the first user client can detect the training service provider's actions such as reviewing learning progress, creating lesson templates, and scheduling courses, and send corresponding requests to the server for processing. The second user client can detect the interactive behaviors performed by the student user (such as viewing learning progress) and send corresponding interaction requests to the server. The server can process the interaction requests and provide feedback on the processing results to the second user client.

[0028] The first or second user terminal can be a browser, an app (application), a web application such as an H5 (HyperText Markup Language 5) application, a lightweight application (also known as a mini-program), or a cloud application. The first or second user terminal can be deployed on an electronic device and depends on the device or certain apps on the device to run. Electronic devices can have displays and support information browsing, such as personal mobile terminals like mobile phones, tablets, personal computers, desktop computers, smart speakers, smartwatches, etc.

[0029] The aforementioned processing or server-side components may include servers that provide services such as training course lesson progress statistics, scheduling, and lesson template creation. It should be noted that the processing or server-side components can be implemented as a distributed server cluster consisting of multiple servers, or as a single server. The server can also be a server in a distributed system, or a server integrated with blockchain technology. The server can also be a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms, or an intelligent cloud computing server or intelligent cloud host with artificial intelligence technology.

[0030] Figure 1 The data processing method for the training course shown may include the following steps: S101, Identify the target learner users whose learning progress needs to be statistically analyzed for the training courses.

[0031] In this context, "target learner users" refers to those users whose learning progress needs to be statistically analyzed for the training course. The learning progress statistically analyzed in this embodiment may include, but is not limited to, statistical learning time and / or statistical learning outcomes. Specifically, statistical learning time can be the cumulative or distributed learning time of target learner users for one or more lessons. Statistical learning outcomes can be the learner users' mastery and application abilities of one or more lessons.

[0032] Optionally, there are many ways to trigger this step, and the strategy for determining the target student user varies depending on the triggering method. Specifically, one triggering method could be: when any student user needs to view their learning progress, they can trigger this step through their client (i.e., the second client). In this case, the student user with the learning progress query request is the target student user. Specifically, the student user can send a learning progress query request to the server through their client (i.e., the second client). This request can include the student user's user identifier (such as student account) and the course identifier of the training course whose progress is to be queried. If the student user wants to query a specific lesson, the lesson identifier can also be included. After receiving the learning progress query request from the second client, the server will trigger this step to determine the target student user, such as selecting the student user corresponding to the user identifier carried in the learning progress query request as the target student user.

[0033] Another triggering method could be: when a new learning record is added to the training course, this step would be executed. In this case, the student user corresponding to the new learning record could be selected as the target student user. For example, if a new learning record is detected in the training course, a first operation instruction is generated, and in response to the first operation instruction, the target student user whose learning progress needs to be statistically analyzed is determined based on the new learning record; and / or, the new learning record is stored as a set of data to be processed in a preset cache, and a second operation instruction is generated when preset triggering conditions are met, and in response to the second operation instruction, the target student user whose learning progress needs to be statistically analyzed is determined based on each set of data to be processed in the preset cache.

[0034] Specifically, this triggering method can further include several scenarios: Scenario 1: Upon detecting a learning record in a training course, a first operation command is generated in real time to trigger the execution of an operation for the target student user, thus tracking their learning progress synchronously. Scenario 2: After detecting a new learning record in a training course, the new learning record is first saved in a preset cache. When preset triggering conditions are met (such as reaching a preset time, or the remaining capacity in the preset cache being less than a capacity threshold), a second operation command is generated to trigger the execution of an operation for the target student user, avoiding frequent triggering of learning progress statistics and reducing energy consumption and operating costs. Scenario 3: Combining Scenario 1 and Scenario 2, upon detecting a new learning record in a training course, not only is a first operation command generated in real time to trigger the execution of this step and subsequent operations once, but a second operation command is also generated again under preset triggering conditions to trigger the execution of this step and subsequent operations. The accuracy of the learning progress information determined by the first operation command is verified through the learning progress information determined by the second operation command. This allows for the simultaneous tracking of the learning progress of target learners and also enables periodic verification of the accuracy of their learning progress statistics. It should be noted that in this scenario, the learning records will contain relevant information about the learners (such as their user identifiers). Therefore, this embodiment can locate target learners based on this information contained in the learning records.

[0035] Another triggering method is as follows: if a change event for any student user's lesson is detected, that student user is designated as the target student user for the training course's learning progress to be statistically analyzed. The lesson change event could be an adjustment to the student user's main course period and / or a change in the lesson information under the current target course period. In such cases, students may be learning the same lesson across different course periods, or the learning plan information for a lesson (such as lesson duration, assessment standards, etc.) may change. To prevent errors in the student user's learning progress information after a lesson change, this embodiment can trigger the determination of the target student user after detecting a lesson change event, that is, designate the student user involved in the lesson change event as the target student user. This triggering method can trigger the student user's learning progress statistics when the student user's lesson or course period changes. The statistical results can be used to verify the accuracy of the student user's currently recorded learning progress information (i.e., as a compensation verification of the currently recorded learning progress information). For example, if the verification results are consistent, no update of the learning progress information is required; if inconsistent, the currently recorded learning progress information can be updated, or manual intervention for review can be prompted.

[0036] It should be noted that the number of target student users determined in this embodiment can be one or more. If there are multiple target student users, the following operations S102-S105 can be performed for each target student user.

[0037] S102, determine the target course period that the target learner is currently studying in the training course, and determine the target course period to be counted from multiple course periods of the target course period.

[0038] In this embodiment, the target course period is also called the main course period, which can be the course period that the target learner is currently studying in the training course. The target course period may contain multiple lessons; in this embodiment, the lesson period for which learning progress statistics are needed can be selected as the target lesson period. Alternatively, all lessons included in the target course period can be used as the target lesson period, or at least one lesson period can be selected as the target lesson period.

[0039] Specifically, if operation S101 is triggered by a learning progress query request sent by the second user terminal, and if the learning progress query request contains a lesson identifier, then the lesson with that identifier can be selected from multiple lessons in the target period as the target lesson; otherwise, all lessons in the target period can be selected as the target lesson. If operation S101 is triggered by adding a learning record, then one or more lessons corresponding to the learning record in the target period can be selected as the target lesson. If operation S101 is triggered by a lesson change event, and the lesson change event involves an adjustment to the main period, then all lessons in the adjusted main period (i.e., the target period) can be selected as the target lesson, or the same lessons in both the pre-adjustment and post-adjustment periods can be selected as the target lesson. If the lesson change event involves a change in lesson information in the target period, then the lesson whose information has changed in the target period can be selected as the target lesson.

[0040] Since training courses consist of multiple sessions, and each session corresponds to multiple learners, tracking learning progress can consume significant resources when the number of learners is large. To address this issue, in some embodiments, after identifying the target session, it can be further determined whether the target learner has not completed the training course. If so, the method described above is used to further identify the target session from the multiple sessions of the target session for which learning progress needs to be tracked. If not, subsequent progress tracking operations are stopped, i.e., the progress information determination operation is not performed on the target learner. Specifically, determining whether a target learner has completed the training course can involve checking whether they have completed all the sessions and passed the assessment, i.e., whether they have graduated from the training course. If they have graduated, the training course is considered complete; otherwise, it is considered incomplete. Alternatively, it can involve checking whether the start date of the target session has ended. If it has ended, the training course is considered complete; otherwise, it is considered incomplete. This embodiment only continues to track the learning progress of target learners who have not completed the training course, in order to reduce the power consumption and cost of the server.

[0041] S103, Obtain learning behavior data of target learner users for the target lesson in at least one session of the training course.

[0042] The at least one session of the training course can be all sessions included in the training course, or it can be the sessions that the target learner has already studied in relation to the training course. The at least one session includes the target session.

[0043] Learning behavior data can be data generated by target learners during at least one session of a training course, including but not limited to: learning start time, learning end time, learning test results (such as exam scores), learning evaluation results (such as teacher evaluations of target learners), key playback nodes in the online video learning process, and the number of episodes in a video series. This embodiment can capture and record learning behavior data generated by each learner during each session of the training course on the learning platform through event tracking. This data is saved as the learner's learning record. To facilitate the management and maintenance of learning behavior data, each learning record can include: learner user identifier, session identifier, lesson identifier, and learning behavior data.

[0044] Optionally, this embodiment may involve searching for learning behavior data related to a target lesson within at least one course period from the stored data corresponding to the learning records of the target learner user. For example, if this embodiment is triggered by a new learning record in the training course, the obtained learning behavior data will include not only the currently added learning behavior data but also previous historical learning behavior data. If the request is triggered by a progress query sent from a second user terminal or a lesson change event, the obtained learning behavior data may be previous historical learning behavior data.

[0045] After obtaining the learning behavior data, this example can either directly execute the subsequent S104 operation, or first add the obtained learning behavior data to a preset cache (such as a data table), and then trigger the subsequent S104 operation based on the learning behavior data of at least one target student user when preset trigger conditions are met (such as reaching a preset time, or the remaining capacity in the preset cache being less than a capacity threshold). This avoids repeatedly triggering the learning progress statistics operation for the target student.

[0046] S104. From the multiple lesson templates associated with the training course, determine the target lesson template corresponding to the target lesson.

[0047] In this embodiment, multiple lesson templates are generated based on the creation operation of lesson templates and modified based on the modification operation of lesson templates; the creation and modification of lesson templates are collectively referred to as lesson template updates. This embodiment can pre-divide the teaching process of any training course into multiple lessons based on the course information (such as course assessment requirements, content requiring intensive training, content requiring online learning, etc.), and construct a corresponding lesson template for each lesson. Each lesson template corresponds to one lesson in the teaching process. Each lesson template includes pre-set lesson information, which may include, but is not limited to, learning planning information, lesson attribute information, and learning address information. The learning planning information can be information on planning learning parameters (such as learning duration, required learning outcomes, etc.), including at least one learning parameter and its corresponding expected target value. For example, it may include a learning duration parameter and a learning assessment parameter; the target value for the learning duration parameter is set to 3 hours, and the target value for the learning assessment parameter may be an assessment score of 80 points. The lesson attribute information may include a lesson identifier (such as name), learning method, and other attribute information. Address information can include video viewing addresses, class / exam addresses, etc.

[0048] The aforementioned lesson information can be information entered by the academic affairs staff in the lesson template configuration interface on their user terminal (i.e., the first user terminal). In this embodiment, the multiple lesson templates for the training course are not fixed after generation, but can be changed according to actual needs, such as adding, deleting, or modifying them. It should be noted that the process of generating and changing multiple lesson templates will be described in detail in subsequent embodiments.

[0049] In this embodiment, multiple lesson templates can be associated with their corresponding training courses and stored in a preset storage area (such as a database or data table). At this time, for a target lesson, the lesson template corresponding to the target lesson can be obtained from the preset storage area and used as the target lesson template.

[0050] In practical applications, training course templates can be dynamically changed after creation, and these changes include adding new templates, modifying existing templates, or deleting them. Therefore, the target course may be associated with one or more templates after the change. Thus, when performing this step, if the target course is associated with only one template, that template can be directly used as the target course template. If the target course is associated with multiple templates, the scheduling information for the target course period can be obtained. Since this scheduling information includes the actual course information configured for the target course, the template associated with the target course that matches the actual course information configured for the target course period can be used as the target course template.

[0051] S105. Based on the learning plan information of the target lesson template and the learning behavior data, determine the learning progress information of the target student user for the target lesson.

[0052] This embodiment can determine the statistical values ​​corresponding to each learning parameter based on learning behavior data, based on the learning planning information contained in the learning plan of the target lesson template. For example, when the learning parameter is a learning duration parameter, the statistical value (i.e., learning duration) corresponding to this learning duration parameter can be determined according to the learning start time and learning end time. Therefore, the learning start time and learning end time can be extracted from the learning behavior data, and the time interval between the two times can be used as the statistical value. Optionally, if the learning behavior data contains multiple sets of learning start times and learning end times, a learning duration can be determined for each set of learning start times and learning end times, and then the determined multiple learning durations can be accumulated. The accumulated result is the statistical value at this time. Then, based on the statistical values ​​of each learning parameter and the target value, the learning progress information of the target student user for the target lesson can be determined. Specifically, whether the statistical value has reached the requirement of the target value can be used as the learning progress information, or the completion ratio of the target value (such as the percentage of the learned time to the total learning time of the lesson) can be determined based on the statistical data as the learning progress information. Optionally, to further enrich the content of the learning progress information, the learning parameters in this embodiment may further include learning parameters for key playback nodes and video playback episodes. In this case, the key playback nodes in the learning behavior data and the playback episodes of the series of videos may be accumulated to obtain learning progress information about key playback nodes and playback episodes.

[0053] Since the training courses in this embodiment include both online video and offline practical training, and the learning parameters focused on by different learning methods may differ, this step can also be as follows, when the learning planning information includes multiple learning parameters and their corresponding target values: determining the target learning parameter from multiple learning parameters based on the learning method in the lesson information; determining the statistical value corresponding to the target learning parameter based on learning behavior data; and determining the learning progress information of the target student user for the target lesson based on the statistical value and target value of the target learning parameter. Specifically, the target learning parameter corresponding to the learning method of the target lesson can be determined from multiple learning parameters based on the pre-set correspondence between the learning method and the learning parameter. Then, following the method described in the above embodiment, the subsequent operations of determining the statistical value corresponding to the target learning parameter based on learning behavior data and determining the learning progress information of the target student user for the target lesson are performed. In this embodiment, different learning parameters are selected for different learning methods to determine the learning progress information when calculating the learning progress information of lessons, making the learning progress statistics of different learning methods more targeted and improving the accuracy of the learning progress information statistics.

[0054] In some embodiments, to prevent students from "brushing" (cheat courses), for example, if a student completes the entire duration of a lesson but scores zero on a quiz, determining learning progress solely based on study time is inaccurate in skill-based learning scenarios where the goal is for students to master the lesson content. Similarly, if a student repeatedly studies parts of a lesson, accumulating the full lesson duration but not completing the entire lesson, determining progress solely based on study time is also inaccurate. To avoid these situations and improve the accuracy of learning progress statistics, the target learning reference in this embodiment can simultaneously include: a study time parameter and a learning assessment parameter. In this case, when determining the learning progress information of a target student for the target lesson based on the statistical and target values ​​of the target learning parameters, the target value of the study time parameter can be used as a benchmark, combined with the statistical value of the study time parameter to determine the study time statistics. The target value of the study time parameter can be the expected study time for the lesson, and the statistical value of the study time parameter is the student's actual accumulated study time for the target lesson. At this point, the percentage of the statistical value relative to the target value can be used as learning time statistics. Alternatively, the difference between the target value and the statistical value (i.e., the remaining learning time) can be used as learning time statistics. Then, using the target value of the learning assessment parameters as a benchmark, and combining it with the statistical data of the learning assessment parameters, learning outcome statistics are determined. Here, the target value of the learning assessment parameters can be a specific assessment standard (e.g., a test score of 60 or above, an attendance rate of 90%), and the statistical data of the learning assessment parameters can be used to measure whether the assessment standards have been met, such as test scores and attendance records. It can be determined whether the statistical value of the learning assessment parameters meets the target value requirements, serving as learning outcome statistics. Finally, based on the learning time statistics and learning outcome statistics, the learning progress information of the target learner for the target lesson is determined. This embodiment can directly use the learning duration statistics and learning outcome statistics as learning progress information, or it can use the learning duration statistics and learning outcome statistics to determine whether the target student user can complete the learning for the target lesson, and use the result of the completion determination as the learning progress information; or it can use the learning duration statistics, learning outcome statistics, and the result of the completion determination as the learning progress information. There is no limitation on this approach.

[0055] In some embodiments, the lesson template in this embodiment supports dynamic changes. For example, academic staff can dynamically adjust the learning plan information, lesson attribute information, and learning address information of the lesson template in the first user interface. If the learning plan information is modified, it will affect the learning parameters to be counted in the learning progress statistics stage and their corresponding target values; if the lesson attribute information is modified, it will have little impact on the learning progress statistics process; if the learning address information is modified, the learning behavior data obtained in S103 may include both the learning behavior data before and after the modification, which will affect the statistical values ​​of each learning parameter in the learning progress statistics stage.

[0056] To address the above situations, when performing this step, it's possible to first determine if the target lesson template is the modified one. If not, the learning progress information of the target student user for the target lesson can be determined according to the methods described in the above embodiments. If yes, it's possible to further determine if the learning address information of the target lesson template has been modified. If not, regardless of whether the learning plan information or the lesson attribute information has been modified, the learning progress information of the target student user for the target lesson can be determined based on the currently configured learning plan information in the target lesson template, according to the methods described in the above embodiments. If the learning address information has been modified, the target learning behavior data corresponding to the modified learning address information (i.e., the learning behavior data generated by learning the target lesson content under the modified learning address) can be filtered from the learning behavior data. Then, based on the target learning behavior data, the statistical values ​​corresponding to each learning parameter in the learning plan information can be determined. Finally, based on the statistical values ​​and target values ​​of each learning parameter, the learning progress information of the target student user for the target lesson can be determined.

[0057] Optionally, if the target lesson is all lessons under the target course period, this embodiment can also summarize the learning progress information of multiple target lessons after determining the learning progress information of the target lesson to obtain the learning progress information of the training course.

[0058] Optionally, to help learners understand their learning progress and motivate them to catch up, this embodiment can also generate learning progress reminders after determining the learning progress information for the target lesson or the training course; and send these reminders to the second user terminal corresponding to the target learner. This example can use the learning progress information directly as the reminder, or it can add preset prompts to the learning progress information, or it can generate a progress chart based on the learning progress information, etc., without limitation. The determined learning progress information is sent to the second user terminal of the target learner so that the second user terminal can display it for the target learner to view.

[0059] Optionally, if the S101 operation is triggered by a learning progress query request sent by the second user client, the generation and sending of learning progress prompts can be triggered immediately after the learning progress information is determined. If the S101 operation is triggered by other means, the server can first analyze whether the target student's learning progress is slower than the normal progress based on the target student's learning progress information. If so, the generation and sending of learning progress prompts can be performed. Alternatively, the generation and sending of learning progress prompts can be performed simultaneously when a preset page (such as a lesson list display page) needs to be sent to the second user client, so that the second user client can display the target student's learning progress prompts on that preset page.

[0060] This embodiment identifies the target learner user whose learning progress needs to be statistically analyzed for a training course, and the target course period in which the target learner user is currently studying within the training course. It then identifies the target course period from multiple course periods within that target course period, and obtains the learner user's learning behavior data for that target course period within at least one course period of the training course. Finally, it identifies the target course period template from multiple course period templates within the training course, and determines the learner user's learning progress information for that target course period based on the learning planning information contained in the target course period template and the learning behavior data. This embodiment provides a method for obtaining learner user learning behavior data for a target course period across course periods, and then combining this data with the learning planning information recorded in the course period template to determine learning progress information. This method ensures the comprehensiveness and completeness of the obtained learning behavior data, thereby guaranteeing the accuracy of the determined learning progress information. In addition, this embodiment pre-builds a lesson template containing lesson information (such as learning plan information) for each lesson of the training course. The learning plan information in the lesson template can be directly reused during the process of calculating the learning progress, without the need for manual re-entry of the learning plan information for the target lesson. This improves the efficiency of learning progress statistics. Furthermore, since all lessons of the training course share the same lesson template, it can also ensure the consistency of the learning plan information used when different students perform learning progress statistics for the same target lesson, or when the same student performs learning progress statistics for the same target lesson multiple times, thereby improving the accuracy of training course learning progress statistics.

[0061] In some embodiments, if this embodiment detects that a learning record exists in the training course, it not only generates a first operation instruction in real time, triggering the execution of the above-described S101-S105 operations (at this time, the learning progress information of the target lesson obtained by the S105 operation is the second learning progress information), but also generates a second operation instruction again under a preset trigger condition, triggering the execution of the above-described S101-S105 operations (at this time, the learning progress information of the target lesson obtained by the S105 operation is the first learning progress information). Then, the second learning progress information can be verified for consistency based on the first learning progress information. The first learning progress information is the learning progress information determined in response to the second update instruction, and the second learning progress information is the learning progress information determined in response to the first update instruction. If the verification results are consistent, it indicates that the learning progress information generated after the first operation instruction is triggered is accurate and does not need to be modified. If the verification results are inconsistent, an error message is generated; an error message is sent to the first user terminal; the error message is used to instruct the target student user to review their learning progress information. The error message in this embodiment may or may not include the first and second learning progress information. This embodiment not only performs real-time statistics on learning progress for newly added learning records, but also repeats the determination of learning progress after a preset trigger condition is met, in order to verify the accuracy of the real-time statistical learning progress information and further ensure the accuracy of the learning progress statistics.

[0062] For example, Figure 2 This diagram illustrates a practical application scenario for tracking learning progress in a training course, as provided in this application. Figure 2 As shown, when any student user learns the training course on the learning platform, the platform captures the student user's learning behavior data through event tracking and saves it as the student user's learning record. The acquired learning record is processed in real time through synchronous events (corresponding to the process of generating the first operation instruction to trigger the execution of the learning progress statistics operation in the above embodiment), and is also added to a delayed queue, which is then processed through asynchronous events after being triggered by the timed verification module and the compensation verification module.

[0063] Figure 2Both synchronous and asynchronous event processing are implemented based on the learning method determination module, statistical nodes, rule executors, and event processing modules. The learning method determination module parses the learning method of the target lesson. The statistical nodes determine the target learning parameters to be statistically analyzed based on the lesson's learning method, and, combined with learning behavior data, determine the statistical values ​​of these parameters. The rule executor determines learning progress information based on predetermined rules, the statistical values ​​of the target learning parameters, and the target values. The event processing module performs corresponding processing operations on the determined learning progress information based on the event type (e.g., real-time synchronous event processing or delayed asynchronous event processing). For example, if real-time synchronous event processing is performed, the determined learning progress information is recorded as the learning status of the target student user. If delayed asynchronous event processing is performed, a timed verification module is triggered to perform a consistency check on the learning progress information generated by the delayed asynchronous event processing against the learning progress information generated by the real-time synchronous event processing (i.e., the learning progress information recorded in the target student user's learning status).

[0064] During the operation of the learning method determination module, statistics node, rule executor, and event handling module, the lesson information recorded in the lesson template will be used, such as the lesson learning method and learning plan information containing learning parameters and their statistical values. Figure 2 The configuration loading module can retrieve the target lesson information from the database and transmit it to the determination module, statistics node, rule executor, and event handling module for their use. The module configuration module is used to configure lesson templates for training courses and associate the configured lesson templates with the training courses in the database. In this embodiment, the target learning parameters and their corresponding statistical values ​​used by the statistics node during runtime can be dynamically adjusted by academic staff via a second user terminal. In this embodiment, when a training course experiences a change in class sessions, the compensation verification module is triggered to perform asynchronous event delay processing based on the learning behavior data cached in the delay queue. Alternatively, a timed verification module can periodically perform asynchronous event delay processing based on the learning behavior data cached in the delay queue (corresponding to the process in the above embodiment where a second operation instruction is generated to trigger the execution of the learning progress statistics operation). The process of the timed verification module and the compensation verification module performing one-step event delay processing is similar to the synchronous event processing process.

[0065] In addition, this embodiment can also introduce a monitoring system and an alarm module. The monitoring system can monitor whether the learning progress information generated by the asynchronous event delay processing is consistent with the learning progress information generated by the synchronous event real-time processing (i.e., the learning progress information recorded in the learning status of the target student user). If they are inconsistent, the alarm module can be triggered to remind manual intervention to review the learning progress information.

[0066] The specific implementation methods of the above steps have been described in the above embodiments and will not be repeated here.

[0067] In some instances, the data processing for training courses in this embodiment, in addition to the statistical analysis of course progress described in the above embodiments, may also include scheduling training courses and creating and updating course templates. The scheduling process for training courses will be described below, which may include the following steps: Step 1: Detect a course creation event for the training course and create a new course for the training course.

[0068] The course creation event can be an event that triggers the creation of a new course period for a training course and the scheduling of classes for the new course period. In this embodiment, the course creation event can be generated in several ways. One generation method is as follows: When a user (such as an academic administrator for the training service) has a need to create a course period for a certain training course, they initiate a course period creation request for that training course to the server through their first user terminal. This course period creation request can then be treated as a course period creation event. Upon receiving this request, the server can recognize it as a detected course period creation event for the training course. This method allows for the flexible creation of new course periods based on the needs of academic administrators.

[0069] Another generation method involves the server detecting changes (including addition, deletion, and modification) and / or creation operations to a training course's lesson template, and generating a course period creation event for that training course. The specific creation and modification processes for lesson templates will be described in detail in subsequent embodiments. This method ensures that after a lesson template is created or modified, a new course period corresponding to the latest lesson template is created promptly, guaranteeing that students can learn the latest lesson content.

[0070] In another generation method, to facilitate course management, each course's information can be configured with corresponding start and end times (i.e., the start and end times of the course). Each course can only be accessed by students within its designated start time. Therefore, this implementation method can generate a course creation event when it detects that the start times of all historical courses for a training course meet the end conditions. The end conditions can be that the start time has expired (i.e., the current time is no longer within the start time) or is about to expire (e.g., the current time has less than the preset end time of the course). This method enables the timely creation of new course periods before they expire, ensuring that students who subsequently enroll in the training course can continue learning.

[0071] This embodiment can create a new course period for the training course corresponding to the course period creation event after detecting a course period creation event generated in any of the above methods. For example, it can first determine the training course corresponding to the course period creation event, and then run a course period creation script based on the training course to create a new course period for the training course.

[0072] Step 2: Generate the schedule information for the new course period based on the historical course schedule information and the pre-set course information of multiple course templates associated with the training course.

[0073] Specifically, it may include the following sub-steps: Sub-step 1: Determine the multiple lesson templates associated with the training course.

[0074] In this embodiment, multiple lesson templates can be associated with their corresponding training courses and stored in a preset storage area (such as a database or data table). At this time, for the training course corresponding to the new course period, multiple lesson templates associated with the training course can be retrieved from the preset storage area.

[0075] Sub-step 2: Determine whether multiple lesson templates have been updated within the predetermined time period.

[0076] The so-called scheduled time period can be a fixed time period set in advance, or it can refer to the interval between the completion of the previous session of the training course and the current moment.

[0077] This embodiment offers many ways to determine whether multiple lesson templates have been updated within a preset time period, and no specific method is limited thereto. One approach is to determine whether there are creation and / or modification operations on the lesson templates within the preset time period. If so, it indicates that multiple lesson templates have been updated within the preset time period; otherwise, multiple lesson templates have not been updated within the preset time period. Another approach is to use lesson information containing the creation and / or modification time of each lesson template. In this case, for each acquired lesson template, the creation and / or modification time in its lesson information can be obtained, and it can be determined whether this time falls within the preset time period. If there are lesson templates whose creation or modification time falls within the preset time period, it indicates that multiple lesson templates have been updated within the preset time period; otherwise, multiple lesson templates have not been updated within the preset time period.

[0078] Sub-step 3: If not, determine the matching course period from the historical course period of the training course that matches the course sessions of the new course period, and generate the course schedule information of the new course period based on the scheduling information of the matching course period.

[0079] Each training course supports the creation of multiple course periods. In this embodiment, the course periods that the training course has already built and completed scheduling when the course period creation event is detected can be regarded as historical course periods.

[0080] In this embodiment, if multiple lesson templates are not updated within a predetermined time period, it indicates that the lesson information of the training course has not changed. In this case, the new course period can continue to maintain the lesson scheduling method of the historical course period. To prevent the same lesson information from being set repeatedly, this embodiment can determine the matching course period that matches the lesson information of the new course period from the historical course periods of the training course. The scheduling information of the new course period is generated directly based on the scheduling information of the matching course period to ensure the consistency of the same lesson information under different course periods and to improve scheduling efficiency. In this embodiment, "matching the lesson information of the new course period" can refer to a high degree of similarity to the lesson information of the new course period (such as being consistent with the lesson information of the new course period).

[0081] This embodiment describes several methods for determining matching course periods from historical course periods that correspond to the new course period. One possible approach is to interact with a first user terminal, where the corresponding academic administrator selects a matching course period from historical course periods based on actual course period configuration requirements. Specifically, this can be achieved by generating a course period selection prompt based on the course period information corresponding to at least one historical course period and sending it to the first user terminal. This prompt prompt guides the academic administrator to select a matching course period from multiple historical course periods. The first user terminal displays this prompt, for example, by sequentially displaying each historical course period and its corresponding course period information in a list for the academic administrator to review. The academic administrator can then trigger a historical course period (i.e., a matching course period) that matches the new course period based on their actual course period configuration requirements. The first user terminal can respond to the academic administrator's triggering action for a historical course period, using the triggered historical course period as the matching course period and sending it back to the server. The corresponding server will then receive the matching course period from the first user terminal.

[0082] Another possible approach is to determine the matching course period from historical course periods based on pre-set matching course period selection rules. For example, the historical course period whose creation time is closest to the current time could be used as the matching course period. Alternatively, student evaluation information and / or graduation rate for each historical course period could be obtained. Based on this information, the quality of each course period could be analyzed; for example, better student evaluations indicate higher course quality, and a higher graduation rate also indicates higher course quality. The historical course period with the highest course quality could then be selected as the matching course period.

[0083] The scheduling information in this embodiment includes at least the class information arranged for the course period (i.e., the class information corresponding to the class periods that need to be studied in this course period). The types of information contained in this class information are the same as the types of information contained in the course period information in the class period template. Since the class periods of the matched course period and the new course period are matched, that is, the class period information of the two should be the same, the class period information of the matched course period (i.e., the scheduling information) can be directly reused in the new course period. In other words, the scheduling information of the matched course period can be used as the scheduling information of the new course period.

[0084] In some embodiments, the scheduling information may include not only lesson information but also course duration information. For example, course duration information may include, but is not limited to, course duration name and start time. In this case, generating new course duration scheduling information based on the matching course duration scheduling information can be achieved by extracting lesson information from the matching course duration scheduling information and using it as the lesson information for the new course duration. This directly reuses the lesson information from the matching course duration and then additionally configures the course duration information for the new course duration, greatly reducing the creation of duplicate content and the error rate during the creation process. The configuration of course duration information can be performed automatically by the server according to preset rules, or it can be determined through interaction with the first user client based on the configuration operations of the corresponding user on the first user client. No limitation is imposed on this.

[0085] Sub-step 4: If yes, determine at least one unused lesson template from the multiple lesson templates associated with the training course, and generate the scheduling information for the new course period based on the lesson information pre-set in the at least one unused lesson template.

[0086] In this embodiment, if multiple lesson templates are updated within a predetermined time period, it indicates that the lesson information of the training course has changed compared to the previous course period. In order to ensure that students can learn the latest content, it is necessary to select at least one available lesson template that meets the lesson configuration requirements of the new course period from multiple lesson templates, and then generate the course scheduling information of the new course period based on the lesson information preset in at least one available lesson template.

[0087] This embodiment describes several ways to determine at least one usable lesson template from multiple lesson templates associated with a training course. One possible approach is to interact with a first user terminal, where the corresponding academic staff selects at least one usable lesson template from the multiple templates based on actual lesson configuration requirements. Specifically, this could involve sending a template selection prompt to the first user terminal based on the lesson information corresponding to each of the multiple templates; this prompt would then suggest selecting at least one usable lesson template from the multiple templates; and the first user terminal would then provide feedback on at least one usable lesson template. Specifically, this prompt could be a list displaying the lesson information corresponding to each of the multiple templates, along with a template selection prompt message. The first user terminal displays the received template selection prompt for academic affairs staff to view. Staff can select from multiple lesson templates based on their actual lesson configuration needs. The first user terminal responds to the staff's selection, confirming the available lesson templates and sending them back to the server. The server then retrieves at least one available lesson template from the first user terminal. This method allows academic affairs staff to personalize their selection of available lesson templates to generate scheduling information for the new semester, achieving flexible aggregation of lessons within a semester. Staff can appropriately increase or decrease the number of lessons in a new semester as needed, improving the flexibility and diversity of lesson configuration within a semester.

[0088] Another possible approach is to determine at least one available lesson template from multiple lesson templates based on pre-set lesson selection rules. For example, in this embodiment, the lesson templates also include pre-set template identifiers and configuration times. The template identifier is a unique identifier for the lesson template corresponding to a lesson in the training course. For multiple lessons divided into a training course, each lesson has its own unique template identifier. Different lessons have different template identifiers. However, for any lesson, if its corresponding lesson information changes, multiple lesson templates with different lesson information may be constructed for that lesson. In this case, these multiple lesson templates have the same template identifier, but different configuration times and lesson information. The configuration time can be the creation or modification time of the lesson template. For example, if the lesson template has not been modified since its creation, the configuration time can be the creation time; if it has been modified, the configuration time can be the modification time. Accordingly, determining at least one available lesson template can involve iterating through the template identifiers of multiple lesson templates and, for each template identifier, selecting the lesson template with the closest configuration time to the current time to constitute the available lesson template. This method locates the course segment corresponding to the course segment template based on the template identifier, and then selects the latest configured course segment template under each course segment based on the configured time as the standby course segment template. The course scheduling information is generated through the latest configured course segment template, which enables students to learn the latest content of each course segment of the training course.

[0089] In some embodiments, the scheduling information in this embodiment can be lesson information. In this case, the method for generating the scheduling information for the new semester based on the lesson information pre-set in at least one unused lesson template can be to sequentially use the pre-set lesson information from at least one unused lesson template as the lesson information for at least one lesson expected to be learned in the new semester. Specifically, if there is only one unused lesson template, the lesson information of that unused lesson template can be directly used as the lesson information for the lesson expected to be learned in the new semester. If there are multiple unused lesson templates, the teaching order corresponding to the multiple unused lesson templates can be determined first. For example, this can be done through interaction with the first user terminal, set by the academic affairs staff; or it can be determined by parsing the lesson information according to certain rules; then, the lesson information from the multiple unused lesson templates can be sequentially used as the lesson information for the multiple lessons expected to be learned in the new semester according to the teaching order.

[0090] In some embodiments, the scheduling information in this embodiment includes course period information and lesson information. The method for generating scheduling information for a new course period can be: configuring the course period information for the new course period (such as course name and start time), and using the lesson information pre-set in at least one unused lesson template as the lesson information for at least one lesson to be learned in the new course. This implementation directly reuses the lesson information from the unused lesson template; only the course period information needs to be configured to complete the scheduling of the new course period, eliminating the need to repeatedly perform the lesson information configuration operation, greatly reducing the creation of duplicate content and the error rate in the creation process.

[0091] In some embodiments, to further manage the learning time of multiple lessons within a course period, this embodiment can also configure a unique start time for each lesson in the new course period during the process of generating scheduling information. That is, each lesson is available for students to learn within its start time. The process of configuring the lesson start time can be either automatic allocation of the start time by the server according to preset rules, or determined through interaction between the server and the user, based on the user's configuration operations. Specifically, if the scheduling information is generated via sub-step 3, in addition to reusing the lesson information of the matching course period and configuring the course period information, a unique start time can be configured for each lesson in the new course period. If the scheduling information is generated via sub-step 4, in addition to reusing the lesson information of at least one reusable template and configuring the course period information, a unique start time can be configured for each lesson in the new course period.

[0092] Upon detecting a course period creation event for a training course, this embodiment creates a new course period for the training course and identifies multiple lesson templates associated with the training course. These lesson templates are updated based on creation and / or modification operations, and each lesson template contains pre-set lesson information. It then determines whether the multiple lesson templates have been updated within a predetermined time period. If not, it identifies a matching course period from the training course's historical course periods and generates the new course period's scheduling information based on the matching course period's scheduling information. If so, it identifies at least one pending lesson template from the multiple lesson templates and generates the new course period's scheduling information based on the pre-set lesson information of the at least one pending lesson template. In generating scheduling information for a newly created course period, this embodiment prioritizes whether there is a matching course period in the historical course periods that matches the new course period's lessons. If so, it generates the new course period's scheduling information by referring to the matching course period's scheduling information. At this point, there's no need to repeatedly determine the lesson information for the new course period, which not only improves scheduling efficiency but also ensures consistency of lesson information for the same lessons across different course periods, thus enhancing scheduling accuracy. Furthermore, this embodiment pre-constructs multiple lesson templates containing lesson information for the training course. When no matching course period is available, scheduling information for the new course period is generated by selecting a template and using the lesson information from the selected template. Compared to manually entering the lesson information for each lesson, directly reusing the lesson information from the template improves efficiency. Moreover, since all course periods of this training course share a single lesson template, consistency of lesson information for the same lessons across different course periods is ensured, and the problem of duplicate lesson configurations within the same course period is avoided, further improving the scheduling accuracy of the training course.

[0093] In some embodiments, since there are multiple lesson templates in this embodiment, there are many ways to configure lessons for a new course period. Therefore, even if multiple lesson templates are not updated within a predetermined time period, there may not be a matching course period in the historical course period that matches the lessons for the new course period. Therefore, in this embodiment, when determining the matching course period, a course period reuse prompt message can also be sent to the first user terminal. This course period reuse prompt message is used to prompt whether the scheduling information of the historical course period of the training course is reused in the new course period. Optionally, this example can be generated based on the scheduling information of the historical course period and the prompt message on whether to reuse. The first user terminal receives and displays the course period reuse prompt message to facilitate the teaching staff to understand the scheduling information of the historical course period more intuitively and quickly give an instruction on whether to reuse (such as a confirmation instruction or a rejection instruction) according to the prompt. Afterwards, if the teaching staff gives a confirmation instruction, the first user terminal will respond to the confirmation instruction operation triggered by the course period reuse prompt message and send a confirmation instruction to the server. Accordingly, if the server receives a confirmation instruction from the first user client, it determines a matching course period from the historical course periods of the training course that matches the new course period. Optionally, in this example, the confirmation instruction from the first user client may or may not include the historical course period selected by the user. If it does, the historical course period included in the confirmation instruction can be directly used as the matching course period to match the new course period. If it does not, the matching course period to match the new course period can be further determined from the historical course periods of the training course in the manner described in the above embodiment.

[0094] If the academic affairs staff issues a rejection instruction, the first user client will respond to the rejection instruction triggered by the academic affairs staff's notification of course reuse and send a rejection command to the server. At this time, if the server receives the rejection command from the first user client, it can determine at least one available course template from the multiple course templates associated with the training course in a manner similar to sub-step 4 above, and generate the scheduling information for the new course period based on the course information pre-set in at least one available course template.

[0095] This embodiment allows academic staff to compare the scheduling of historical classes with the current class schedule based on the class schedule requirements of the new class period, even if multiple class templates have not been updated within a predetermined time period. This enables them to decide whether to reuse the scheduling information of historical classes, further improving the flexibility of the scheduling process and meeting personalized scheduling needs.

[0096] This embodiment of the training course includes multiple sessions. For each student user, there is a corresponding current learning session, which is the session the student is currently studying. This current learning session is one of the multiple sessions of the training course. For example, the session that is currently being offered when the student purchases the training course can be used as their current learning session. If this example schedules new sessions using the method described in sub-step 4 above, the session information for the new session is generated based on a matching session template determined from multiple session templates, without reusing historical sessions. Therefore, the new session usually corresponds to the latest learning content. To ensure that students of the training course can learn the latest content, after completing the new session scheduling information generation operation (i.e., after executing sub-step 4), the current learning session of at least one student user can be adjusted to the new session, and a session change event can be generated for the at least one student user. Specifically, the current learning session of all students corresponding to the training course can be adjusted to the new session. Alternatively, the current course period for some students (such as those who haven't completed their studies or those who meet the level requirements) can be adjusted to the new course period. To prevent inaccurate updates to student learning progress information after the course period adjustment, a course change event can be generated for at least one student whose main course period has been adjusted. This triggers the tracking of learning progress for students whose course periods have changed, ensuring the accuracy of student learning progress information.

[0097] Next, the process of creating a lesson template will be introduced, including the following steps: Step A: In response to the request sent by the first user terminal to create a lesson template for the training course, generate configuration prompts for the lesson template based on the course information of the training course.

[0098] The configuration prompts are used to indicate multiple candidate lesson segments for the training course based on course information, and to configure lesson segment information for these candidate segments. Course information can include course assessment requirements, content requiring intensive training, or content requiring online learning, assisting academic staff in segmenting the training course. Candidate lesson segments are those obtained by segmenting the training course according to a preset segmentation strategy, generating lesson segment templates for academic staff to select from. In this embodiment, for any training course, multiple candidate lesson segments can be obtained through one segmentation strategy, or multiple different segmentation strategies can be used to segment the training course, with all segments obtained from different strategies serving as candidate lesson segments. The lesson segment information configured for candidate lesson segments in this embodiment is the lesson segment information pre-configured in the candidate lesson segment template.

[0099] In this embodiment, when an academic administrator wants to create a lesson template for any training course, they can trigger a template creation operation for that training course through their first user client (e.g., by clicking the template creation button). The first user client will respond to this template creation operation by generating a lesson template creation request for that training course and sending it to the server. This lesson template creation request carries the identification information of the training course, such as the name of the training course. The server responds to the received lesson template creation request, retrieves the corresponding training course identification information from it, then searches for the course information based on the identification information, and finally generates the configuration prompt information for the lesson template based on the course information and the template configuration prompt message.

[0100] Step B: Send a configuration prompt message to the first user terminal.

[0101] Step C: Obtain lesson information from multiple candidate lessons as reported by the first user client in response to the configuration prompt.

[0102] The server will send template configuration prompts to the first user client for display. Based on the course information in the configuration prompts, the academic administrator can split the training course into multiple optional sessions according to at least one session splitting strategy, and then sequentially enter the session information for each optional session. The first user client will respond to the academic administrator's input operation, retrieve the session information for multiple candidate sessions, and send it to the server.

[0103] Step D: Based on the lesson information of multiple candidate lessons, create multiple lesson templates associated with the training course.

[0104] The server can create a corresponding lesson template for each received candidate lesson information, thereby obtaining multiple lesson templates associated with the training course.

[0105] This embodiment pre-creates multiple associated lesson templates for each training course. When scheduling training courses subsequently, the lesson information from the corresponding template can be directly selected and reused, eliminating the need to repeatedly configure the same lesson information. This improves scheduling efficiency and reduces error rates. Furthermore, the method of building lesson templates also reduces the cost and difficulty of maintaining lesson information.

[0106] In this embodiment, the lesson templates for training courses can be dynamically changed according to the needs of the teaching staff. The process of changing the lesson templates for training courses is described below. It can involve: receiving a lesson template change request from a first user terminal; the lesson template change request containing template attribute change information; and changing multiple lesson templates associated with the training course based on the template attribute change information. In this embodiment, based on changes in the teaching content, assessment standards, learning methods, or student learning feedback, the system can analyze whether the course type and chapter difficulty / focus need adjustment, i.e., whether the lesson templates for the training course need to be changed. If so, the system can remind the teaching staff to change the lesson templates. At this time, the teaching staff can use the first user terminal to input template attribute change information for the training course. The first user terminal responds to this input operation, obtains the template attribute change information for the training course, and then, based on the relevant information of the training course and the template attribute change information input by the teaching staff, generates a lesson template change request and sends it to the server. The server responds to the lesson template change request, obtains the template attribute change information contained within it, and locates the training course that needs to be changed. The template attribute change information describes the method of changing the lesson template (such as adding, deleting, or modifying), as well as the specific lesson information that needs to be changed. Then, according to the template change method and the specific lesson information specified in the template attribute change information, change operations are performed on multiple lesson templates of the training course that need to be changed. For example, it could be deleting a lesson template, or modifying an existing lesson template or adding a new lesson template based on the specific lesson information that needs to be changed. This embodiment allows academic staff to dynamically change the lesson model of training courses according to their needs, so that subsequent course scheduling can incorporate the changed lesson information, ensuring that students can learn the latest lesson content for the same training course.

[0107] In some embodiments, if the lesson template is modified, after the modification operation is performed on the lesson template, the modified lesson information (such as the modified information) can be synchronously applied to the lesson information of all lessons using that lesson template. This eliminates the need to create new lessons and ensures that students learn the latest lesson content, avoiding inconsistencies in lesson content across different lessons.

[0108] Based on the above embodiments, even if multiple lesson templates change within a preset time period, the lesson information of the historical lessons has been synchronized with the modified lesson template information, so the lesson information of the historical lessons can be reused in the new lessons to improve scheduling efficiency. Therefore, before performing the above sub-step 4 operation, this embodiment can further determine whether the update that occurred within the predetermined time period is a modification of the lesson template, and whether the modified content is lesson information that has been synchronized to the historical lessons. If both of the above conditions are met, a matching lesson period that matches the lesson of the new lesson period can be determined from the historical lessons of the training course, and the scheduling information of the new lesson period can be generated according to the scheduling information of the matching lesson period; if one condition is not met, the sub-step 4 operation continues.

[0109] In this embodiment, to avoid duplicate sessions within a single course period during training course scheduling, the course session templates for the training course can be checked for duplicates, thus ensuring mutual exclusion between session templates for the same training course. This can be done by detecting whether there are session templates with identical session information for the training course; if so, deduplication is performed on the multiple session templates associated with the training course. Specifically, the session information of multiple session templates for the training course is compared to see if they are completely identical. If so, it indicates the existence of multiple session templates with identical information. To avoid duplicate session configurations within the same course period during subsequent scheduling, deduplication can be performed on these multiple session templates with identical information, i.e., only one of them is retained, and the others are deleted. This embodiment can perform the duplicate check operation after creating a session template for the training course, or after changing the session template (i.e., after updating the session template), or it can be performed periodically. This embodiment removes duplicate lesson templates from training courses to avoid selecting duplicate lesson templates for new training course periods, thus preventing the duplication of lesson templates within the same period and ensuring the accuracy of the scheduling information (i.e., lesson information) generated for new periods.

[0110] In a practical application scenario, Figure 3 This application illustrates a schematic diagram of the data processing procedure for a training course in a real-world application scenario. Figure 3 As shown, this embodiment is implemented through the interaction of an operations backend, a student client (corresponding to the second user client mentioned above), a statistics system, and a training client (corresponding to the first user client mentioned above). The operations backend and statistics system are server-side components. The operations backend is mainly used for constructing course templates and scheduling classes, while the statistics system is mainly used for collecting student learning progress information. The student client is used to view course information and study course content. The training client is used for selling courses, interacting with the operations backend to schedule training courses, and managing student information.

[0111] Specifically, the operations backend pre-creates multiple lesson templates for each training course it provides, based on the course information. Each lesson template contains pre-configured lesson information, such as learning address, learning duration, learning method (online / hands-on), assessment criteria, and other extended attributes. Upon detecting a lesson creation event for a training course, a new lesson period is created for the training course, and the lesson period information is configured, thereby configuring the lesson information for the created lesson period. If a matching lesson period exists in the training course's historical lesson periods, the new lesson period can directly reuse the lesson information of the matching lesson period. If no matching lesson period exists in the historical lesson periods, a suitable lesson template can be selected from the multiple lesson templates for the training course, and the lesson information for the new lesson period can be configured based on the lesson information of the suitable lesson template. Furthermore, in this embodiment, lesson templates, lesson period information, and lesson information all support dynamic adjustment. For example, teaching staff on the training side can add, delete, or modify information as needed.

[0112] Once the training courses are scheduled, the training provider can obtain the course list from the operations team, which may consist of a list of scheduled training courses. After the student negotiates with the training provider and completes the course payment, the operations team will send the course information to the student's end, including scheduling information and learning progress information. Simultaneously, the training provider will record the information of newly added students, which can be viewed later, such as course progress, offline training information, learning evaluations, and learning data.

[0113] When a student adds new learning data or changes information about course sessions or durations, the statistics system is triggered to track the learning progress of each session. The system then sends the confirmed learning progress information, such as course progress or completion status, to the student's device so they can understand their learning status. Furthermore, to ensure the accuracy of the learning progress information, this embodiment can store student learning behavior data in a cache queue and periodically re-execute the learning progress information operation to calibrate the recorded information. If inconsistencies are found, the training provider can be prompted for manual intervention. Additionally, the operation backend of this embodiment can support the export of student learning data and completion data. Based on this data, and according to pre-set analysis rules, it can be used to analyze whether there was any cheating behavior during the student's learning of the training course.

[0114] This embodiment also supports summarizing the learning progress information of multiple lessons in the training course to obtain the learning progress information of the training course, thereby accurately obtaining the percentage of completion of the training course and making the learning progress transparent. This can not only motivate students to catch up, but also allow teaching staff to optimize the allocation of teachers and prevent cheating based on the real-time overall course completion status. They can also export student user learning statistics tables from the management platform to strengthen supervision of students who are lagging behind and provide extended resources for students who are ahead.

[0115] In this embodiment, the lesson template belongs to the training course. Lesson templates are not interchangeable between different training courses. When scheduling a new course period based on the lesson template, all lessons in the new period come from the lesson template of that training course, and lesson templates for the same period are not selected repeatedly. When a lesson template changes, the system can asynchronously check for duplicate templates by listening to queue messages to avoid selecting duplicate lesson information when scheduling subsequent periods. Furthermore, this embodiment allows for the creation of multiple different periods under the same training course to accommodate different batches of learners. The lesson content under each period comes from the lesson template of this training course or reuses lesson information from a previous period, improving scheduling efficiency while reducing repetitive work and error rates. After scheduling a new period, it can be set as the student's main period (i.e., the current learning period), triggering progress statistics for students whose period or lesson content has changed.

[0116] In addition, this embodiment also supports tracking student learning behavior data, such as recording online live or recorded courses, offline centralized training, in-class quizzes, course practical records, teacher evaluations, and other relevant learning nodes for use in statistical analysis of learning progress. This learning behavior data can be recorded using a combination of event tracking and message subscription, and stored in a data table to prevent data loss. A scheduled task is used to repeatedly verify at fixed times each day whether multiple course templates in the training course are duplicated and whether student learning progress information is accurate. An early warning monitoring system monitors the verification results; if the verification results are inconsistent, an alarm will be triggered, or manual intervention will be prompted.

[0117] The detailed implementation methods and beneficial effects of each step in this embodiment have been described in detail in the foregoing embodiments, and will not be elaborated here.

[0118] It should be noted that some processes described in the above embodiments and accompanying drawings include multiple operations that appear in a specific order. However, it should be clearly understood that these operations may not be executed in the order they appear in this document, or they may be executed in parallel. The operation numbers, such as S103, S104, etc., are merely used to distinguish different operations and do not represent any execution order. Furthermore, these processes may include more or fewer operations, and these operations may be executed sequentially or in parallel. It should also be noted that the descriptions such as "first" and "second" in this document are used to distinguish different messages, devices, modules, etc., and do not represent a sequential order, nor do they limit "first" and "second" to different types.

[0119] Figure 4 A schematic diagram of a data processing apparatus for a training course, provided as an exemplary embodiment of this application, is shown. The apparatus includes: The learner identification module 401 is used to identify the target learner users whose learning progress needs to be statistically analyzed for the training courses. The lesson segment determination module 402 is used to determine the target lesson period that the target learner user is currently learning in the training course, and to determine the target lesson period to be counted from multiple lesson periods of the target lesson period; The data acquisition module 403 is used to acquire learning behavior data of the target learner user for the target lesson in at least one course period of the training course; the at least one course period includes the target course period; The template determination module 404 is used to determine the target lesson template corresponding to the target lesson from multiple lesson templates associated with the training course; the target lesson template includes pre-set lesson information; the lesson information includes learning planning information; The progress determination module 405 is used to determine the learning progress information of the target student user for the target lesson based on the learning planning information of the target lesson template and the learning behavior data.

[0120] In some embodiments, the student determination module 401 is specifically configured to: if a new learning record is detected in the training course, generate a first operation instruction, and in response to the first operation instruction, determine the target student user whose learning progress is to be statistically analyzed based on the new learning record; and / or, store the new learning record as a set of data to be processed in a preset cache, and generate a second operation instruction when a preset trigger condition is met, and in response to the second operation instruction, determine the target student user whose learning progress is to be statistically analyzed based on each set of data to be processed in the preset cache.

[0121] In some embodiments, the apparatus further includes: a verification module, configured to perform a consistency verification on second learning progress information based on first learning progress information; wherein the first learning progress information is learning progress information determined in response to the second update instruction, and the second learning progress information is learning progress information determined in response to the first update instruction; An error message module is used to generate an error message if the verification results are inconsistent; send the error message to the first user terminal; the error message is used to instruct the learning progress information of the target student user to be reviewed.

[0122] In some embodiments, the lesson segment determination module 402 is specifically used to: determine whether the target learner user has not completed the training course; if so, determine the target lesson segment whose learning progress needs to be statistically analyzed from multiple lesson segments of the target course period.

[0123] In some embodiments, the learning planning information includes: multiple learning parameters and their respective target values; the progress determination module 405 is specifically used to determine the target learning parameter from the multiple learning parameters according to the learning method of the lesson in the lesson information; determine the statistical value corresponding to the target learning parameter based on the learning behavior data; and determine the learning progress information of the target student user for the target lesson according to the statistical value and the target value of the target learning parameter.

[0124] In some embodiments, the target learning reference includes: a learning duration parameter and a learning assessment parameter; the progress determination module 405 is further specifically used to determine learning duration statistical information based on the target value of the learning duration parameter and the statistical value of the learning duration parameter; to determine learning outcome statistical information based on the target value of the learning assessment parameter and the statistical data of the learning assessment parameter; and to determine the learning progress information of the target student user for the target lesson based on the learning duration statistical information and the learning outcome statistical information.

[0125] In some embodiments, the student determination module 401 is specifically used to, if a class change event for any student user is detected, designate the student user as the target student user whose learning progress is to be statistically analyzed for the training course.

[0126] In some embodiments, the apparatus further includes: a scheduling module, configured to detect a course creation event for the training course, create a new course for the training course, and generate scheduling information for the new course based on the scheduling information of the training course's historical course periods and the pre-set course information of multiple course templates associated with the training course.

[0127] In some embodiments, the apparatus further includes an event generation module, configured to adjust the current course period of at least one student user of the training course to the new course period, and generate a course change event for the at least one student user.

[0128] In some embodiments, the apparatus further includes: a template creation module, configured to respond to a request from a first user terminal to create a lesson template for the training course, generate configuration prompt information for the lesson template based on the course information of the training course; the configuration prompt information is used to prompt the determination of multiple candidate lessons for the training course based on the course information, and to configure lesson information for the multiple candidate lessons; send the configuration prompt information to the first user terminal; obtain the lesson information of the multiple candidate lessons fed back by the first user terminal in response to the configuration prompt information; and create multiple lesson templates associated with the training course based on the lesson information of the multiple candidate lessons.

[0129] In some embodiments, the apparatus further includes a template change module, configured to receive a lesson template change request for the training course sent by the first user terminal; the lesson template change request includes template attribute change information; and based on the template attribute change information, change multiple lesson templates associated with the training course.

[0130] In some embodiments, the device further includes: a progress prompt module, configured to generate learning progress prompt information based on the learning progress information; and send the learning progress prompt information to a second user terminal corresponding to the target student user.

[0131] Figure 4 The data processing device for the training course can perform... Figure 1 The implementation principle and technical effects of the data processing method for training courses described in the illustrated embodiments will not be repeated here. The specific methods by which each module and unit of the data processing device for training courses in the above embodiments perform operations have been described in detail in the embodiments related to this method, and will not be elaborated upon here.

[0132] Figure 5 This is a schematic diagram of the structure of one embodiment of a computing device provided in this application. Figure 5 As shown, in practice, the computing device may include a storage component 501 and a processing component 502.

[0133] Storage component 501 is used to store computer programs and can be configured to store various other data to support operation on a computing device. Examples of this data include instructions for any application or method used to operate on the computing device, data structures, contact data, phone book data, messages, pictures, videos, etc.

[0134] Processing component 502, coupled to storage component 501, is used to execute computer programs in storage component 501 for implementing, etc. Figure 1 The data processing method for the training course shown.

[0135] Furthermore, such as Figure 5 As shown, the computing device may also include other components such as a communication component 503, a display component 504, a power supply component 505, and an audio component 506. Figure 5 The diagram only shows some components and does not mean that the device includes only these components. Figure 5 The components shown. Additionally... Figure 5 The components within the dashed box are optional, not mandatory, and their specific requirements depend on the product form of the computing device. The computing device in this embodiment can be a terminal device such as a desktop computer, laptop computer, smartphone, or IoT (Internet of Things) device, or a server-side device such as a conventional server, cloud server, or server array. If the computing device in this embodiment is implemented as a terminal device such as a desktop computer, laptop computer, or smartphone, it may include... Figure 5 The components within the dashed box; if the computing device in this embodiment is implemented as a conventional server, cloud server, or server array, etc., then it may not include... Figure 5 The component within the dashed box.

[0136] The processing component described above includes one or more processors to execute computer instructions to complete all or part of the steps in the method described above. Alternatively, the processing component may be implemented as one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the method described above.

[0137] The aforementioned storage components 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 storage, flash memory, magnetic disk, or optical disk.

[0138] The aforementioned communication component is configured to facilitate wired or wireless communication between the device housing the communication component and other devices. The device housing the communication component can access wireless networks based on communication standards, such as mobile communication networks, or combinations thereof. In one exemplary embodiment, the communication component receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel.

[0139] The aforementioned display components may include a screen, which may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen can be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors can sense not only the boundaries of touch or swipe actions but also the duration and pressure associated with the touch or swipe operation.

[0140] The aforementioned power supply components provide power to various components within the device in which they reside. These power supply components may include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power to the device in which they reside.

[0141] The aforementioned audio component can be configured to output and / or input audio signals. For example, the audio component includes a microphone (MIC) configured to receive external audio signals when the device containing the audio component is in an operating mode, such as call mode, recording mode, or voice recognition mode. The received audio signals can be further stored in memory or transmitted via a communication component. In some embodiments, the audio component also includes a speaker for outputting audio signals.

[0142] Accordingly, embodiments of this application also provide a computer-readable storage medium storing a computer program, which, when executed by a processor, enables the processor to implement the steps in the above-described method embodiments. The computer-readable storage medium includes volatile or non-volatile components, or a combination thereof, and can be removable or non-removable. Examples of computer-readable storage media include, but are not limited to, phase-change random access memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random-access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), flash memory or other memory technologies, CD-ROM, Digital Video Disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium. Accordingly, this application also provides a computer program product, which includes a computer program or instructions that, when executed by a processor, cause the processor to implement the steps in the above method embodiments. It should be understood that each step or combination of steps in the above method flow can be implemented by the computer program or instructions. Furthermore, these computer programs or instructions can be applied to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device, enabling the processor of the general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing device to function as an apparatus for implementing the corresponding functions in the above method embodiments.

[0143] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0144] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0145] Finally, it should be noted that the above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

Claims

1. A data processing method of a training course, characterized by, The method comprises the following steps: determining a target student user corresponding to a training course to be counted for learning progress; determining a target course period in which the target student user is currently learning in the training course, and determining a target course section to be counted for learning progress from a plurality of course sections of the target course period; obtaining learning behavior data of the target student user for the target course section in at least one course period of the training course; the at least one course period includes the target course period; determining a target course section template corresponding to the target course section from a plurality of course section templates associated with the training course; the target course section template includes pre-set course section information; the course section information includes learning planning information; determining learning progress information of the target student user for the target course section according to the learning planning information of the target course section template and the learning behavior data.

2. The method of claim 1, wherein, The method of determining a target student user corresponding to a training course to be counted for learning progress comprises: if it is detected that there is a new learning record of the training course, a first operation instruction is generated, and a target student user to be counted for learning progress is determined based on the new learning record in response to the first operation instruction; and / or, the new learning record is saved as a set of to-be-processed data in a preset cache area, and a second operation instruction is generated if a preset trigger condition is met, and a target student user to be counted for learning progress is determined based on each set of to-be-processed data in the preset cache area in response to the second operation instruction.

3. The method of claim 2, wherein, Further comprising: performing consistency verification on the second learning progress information based on the first learning progress information; the first learning progress information is the learning progress information determined in response to the second update instruction, and the second learning progress information is the learning progress information determined in response to the first update instruction; if the verification result is inconsistent, an abnormal prompt information is generated; the abnormal prompt information is sent to the first user end; the abnormal prompt information is used to indicate that the learning progress information of the target student user is reviewed.

4. The method of claim 2, wherein, The method of determining a target course section to be counted for learning progress from a plurality of course sections of the target course period comprises: determining whether the target student user has completed the learning of the training course; if yes, a target course section to be counted for learning progress is determined from a plurality of course sections of the target course period.

5. The method of claim 1, wherein, The learning planning information includes a plurality of learning parameters and their respective target values; The method of determining learning progress information of the target student user for the target course section according to the learning planning information of the target course section template and the learning behavior data comprises: determining a target learning parameter from the plurality of learning parameters according to the course section learning mode in the course section information; determining a statistical value corresponding to the target learning parameter based on the learning behavior data; determining the learning progress information of the target student user for the target course section according to the statistical value and the target value of the target learning parameter.

6. The method of claim 5, wherein, The target learning reference includes a learning duration parameter and a learning assessment parameter; The determining the learning progress information of the target trainee user for the target course section according to the statistical value and the target value of the target learning parameter comprises: determining learning duration statistical information based on the target value of the learning duration parameter and in combination with the statistical value of the learning duration parameter; determining learning achievement statistical information based on the target value of the learning assessment parameter and in combination with the statistical data of the learning assessment parameter; determining the learning progress information of the target trainee user for the target course section according to the learning duration statistical information and the learning achievement statistical information.

7. The method of claim 1, wherein, The determining the target trainee user for which the learning progress of the training course needs to be counted comprises: if a course section change event for any trainee user is detected, the trainee user is determined as the target trainee user for which the learning progress of the training course needs to be counted.

8. The method according to any one of claims 1-7, characterized in that, Further comprising: detecting a course period creation event for the training course, creating a new course period for the training course; generating the arrangement information of the new course period according to the arrangement information of the historical course period of the training course and the course section information of the plurality of course section templates associated with the training course.

9. The method of claim 8, wherein, Further comprising: adjusting the course period currently learned by at least one trainee user of the training course to the new course period, and generating a course section change event for the at least one trainee user.

10. The method according to any one of claims 1-7, characterized in that, Further comprising: in response to a course section template creation request for the training course sent by a first user terminal, generating configuration prompt information of a course section template according to the course information of the training course; the configuration prompt information is used to prompt to determine a plurality of candidate course sections for the training course based on the course information, and to configure course section information for the plurality of candidate course sections; sending the configuration prompt information to the first user terminal; obtaining the course section information of the plurality of candidate course sections fed back by the first user terminal for the configuration prompt information; creating a plurality of course section templates associated with the training course based on the course section information of the plurality of candidate course sections.

11. The method according to any one of claims 1-7, characterized in that, Further comprising: receiving a course section template change request for the training course sent by the first user terminal; the course section template change request contains template attribute change information; updating the plurality of course section templates associated with the training course based on the template attribute change information.

12. The method of claim 1, wherein, Further comprising: generating learning progress prompt information according to the learning progress information; sending the learning progress prompt information to a second user terminal corresponding to the target trainee user.

13. A computing device, comprising: comprising a processing component and a storage component; the storage component stores a computer program; the computer program is used to be called and executed by the processing component to implement the data processing method of the training course according to any one of claims 1-12.

14. A computer-readable storage medium, characterized in that, having a computer program stored thereon, the computer program is executed by a processing component to implement the data processing method of the training course according to any one of claims 1-12.

15. A computer program product, characterised in that, comprising a computer program or instructions, the computer program or instructions are executed by a processing component to implement the data processing method of the training course according to any one of claims 1-12.