System and Method for Integrated Processing of Learning Data Based on cmi5

KR103022124B1Active Publication Date: 2026-09-18BUBBLE CORN CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
KR1020260058305
Authority / Receiving Office
KR · KR
Patent Type
Patents
Current Assignee / Owner
Filing Date
2026-03-31
Publication Date
2026-09-18
Estimated Expiration
2046-03-31

Smart Images

  • Figure 112026043084764-PAT00006_ABST
    Figure 112026043084764-PAT00006_ABST
Patent Text Reader

Abstract

A CMI5-based integrated learning data processing system is disclosed. The present invention is a system that mediates the creation, completion determination, and record storage of learning sessions according to the CMI5 standard between an external learning service that does not directly implement the CMI5 standard and a learning record storage unit. It fixes the moveOn and masteryScore included in the launched request as session-specific policies in the Activity State, evaluates subsequent learning events based on the fixed policies, automatically generates a satisfied statement when the moveOn is satisfied, and stores the generated statement in the learning record storage unit. According to the present invention, since the external learning service can perform learning completion determination and record storage according to the CMI5 standard simply by transmitting learning events, there is an effect of reducing the costs and technical barriers associated with the introduction of the CMI5 standard.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] The present invention relates to educational technology and learning data standardization technology, and more specifically, to a learning data integration processing system and method that converts learning events received from an external learning service that does not directly implement the CMI5 standard into learning sessions according to the CMI5 standard, and mediates the creation, state management, completion determination, and storage of learning records of learning sessions. Background Technology

[0002] Recently, educational institutions have been introducing various external learning services, content players, and learning tools to provide learners with multiple learning opportunities. However, as various edutech services, content providers, and learning management systems use different data structures, it is difficult to consistently track a learner's entire learning path.

[0003] To address these issues, the Experience API (xAPI) was proposed, leading to the widespread adoption of a method that records learning activities in the form of statements (units that structure and record a learner's actions, targets, and results). However, xAPI alone may not provide a sufficient specific operational structure to manage the entire flow of a learning session—from initiation and progress to completion and termination—within a consistent runtime context, and the interpretation and utilization of collected data may vary depending on the implementation method. Consequently, there has been a demand for complementary technologies to provide more structural support for the creation, state management, and completion determination of learning sessions.

[0004] To complement this, Advanced Distributed Learning (ADL) established cmi5 as a profile based on xAPI that defines standard specifications regarding the creation, execution, state management, completion determination, and record storage of learning sessions between learning content, learning management systems, and learning record repositories. cmi5 specifies learning flow stages ranging from the start to progress, completion, and termination of learning, such as launched (a state where learning content is loaded into the learner environment and learning begins), initialized, progressed, completed, passed, failed, abandoned, waived, and terminated; learning completion determination criteria based on moveOn (condition criteria for recognizing learning as completed) and masteryScore (criteria score for determining pass / fail); and the automatic generation of satisfied statements (records indicating the fulfillment of moveOn conditions). It also structurally complements the limitations of xAPI by including the operation of Activity State (a state object maintained per learning session) to manage state information during the learning session.

[0005] However, in reality, many external learning service and content providers do not directly implement the CMI5 specification. Redeveloping all external services to comply with the CMI5 specification entails high costs and technical barriers, which hinders the widespread adoption of CMI5. Furthermore, since the CMI5 standard itself presupposes direct runtime communication between the Learning Management System (LMS) and the Learning Author (AU), it is difficult to apply the session management and completion determination structures defined by the standard as is if an external learning service does not function as an AU or does not support the runtime communication protocols of the CMI5 specification.

[0006] Meanwhile, existing technologies have failed to provide a sufficient solution to this problem. Conventional CMI5-related technologies generally rely on a structure where standard CMI5 packages are directly loaded and executed into the learning management system, which imposes the constraint that external learning services must already be implemented in compliance with the CMI5 specification. Furthermore, xAPI-based backend processing technologies focus on collecting already generated statements to perform analysis, visualization, or recommendations, and thus fail to perform the role of mediating the creation and completion determination of learning sessions, which precedes the statement generation stage. In addition, general format conversion or protocol gateway technologies perform the function of converting input data into other formats, but they do not provide CMI5-specific session lifecycle management functions, such as creating learning sessions, determining learning completion criteria, policy-based determination of subsequent learning events, and the automatic generation of satisfied statements.

[0007] Therefore, there is a need for an intermediate layer technology that enables the automatic creation of learning sessions, state management, completion determination, and saving of learning records according to the CMI5 standard, based solely on the input of simplified learning events, even if the external learning service does not directly implement the CMI5 standard. Prior art literature

[0008] 1. Korean Patent Registration No. 10-1719926, “System and Method for Converting Heterogeneous Data Stored via Data Collection API” 2. Korean Patent Publication No. 10-2018-0112153, “System and Method for Extracting Training Data from Virtual Reality and Augmented Reality Content” 3. Korean Patent Publication No. 10-2021-0085542, “Analysis System Using LRS” 4. U.S. Patent Registration No. 11,062,591, “Systems and Methods for Generating Device-Agnostic Data and a Training Dashboard from Wearable and Non-Wearable Devices” The problem to be solved

[0009] The present invention aims to solve the problems of the aforementioned prior art. First, it provides a learning data integration processing system and method that enables an external learning service, which does not directly implement the CMI5 standard, to automatically perform the creation of a learning session according to the CMI5 standard, state management, completion determination, and storage of learning records solely through the input of simplified learning events.

[0010] In addition, another objective of the present invention is to provide a training data integration processing system and method that enables the determination of moveOn satisfaction and the automatic generation of satisfied statements based on the same judgment criteria throughout the entire training session by determining moveOn and masteryScore as session-specific policies at the time of receiving a launched request, fixing said determined policies to an Activity State (a state object maintained per training session), and then consistently evaluating subsequent training events based on said fixed policies. means of solving the problem

[0011] To achieve the above objectives, the CMI5-based learning data integration processing system according to the present invention is a system that mediates a learning session in accordance with the CMI5 standard between an external learning service and a learning record storage unit, comprising: an input receiving unit that receives a launched request and a subsequent learning event from the external learning service, wherein the launched request includes at least moveOn and learning content identification information; a session creation unit that generates a learning session identifier and registration in response to the launched request; a policy storage unit that stores the moveOn included in the launched request as a session-specific policy corresponding to the corresponding learning session, and if the launched request includes masteryScore, stores it together with the session-specific policy; a state object management unit that generates an Activity State including the session-specific policy and learning state information and updates the Activity State upon receiving a subsequent learning event; an event processing unit that receives and processes a subsequent learning event associated with the learning session identifier; an evaluation engine that determines whether the moveOn is satisfied based on the subsequent learning event by referring to the session-specific policy stored in the Activity State; a satisfied generation unit that generates a satisfied statement when the evaluation engine determines that the moveOn is satisfied; and a learning record generation unit that generates a statement in the CMI5 standard corresponding to the launched request and the subsequent learning event. and a record transmission unit that transmits and stores the statement generated by the satisfied generation unit and the learning record generation unit to the learning record storage unit.

[0012] At this time, the policy storage unit confirms moveOn as a session-specific policy and fixes it to the Activity State at the time of receiving the launched request, and if the launched request includes masteryScore, it fixes it together with the session-specific policy; the evaluation engine determines whether moveOn is satisfied by consistently referencing the fixed session-specific policy throughout the entire learning session; and the satisfied generation unit can automatically generate a satisfied statement on the side of the learning data integration processing system.

[0013] Meanwhile, the system may further include a course structure generation unit that automatically generates course structure information in the cmi5 standard or corresponding metadata from parameters included in the above-mentioned launched request, and the parameters input to the course structure generation unit are identical to the parameters that form the basis of the session-specific policy referenced by the evaluation engine, so that content execution information and moveOn judgment criteria can be determined from the same input.

[0014] Meanwhile, the course structure information or metadata generated by the course structure generation unit can be linked to content execution and the moveOn determination of the evaluation engine.

[0015] Meanwhile, it may further include a state machine verification unit that determines the allowed order of subsequent learning events based on the current session state of the state object management unit and blocks the processing of the unallowed event order.

[0016] Meanwhile, it may further include a dual verification unit that performs lightweight verification of the existence of the learning session identifier and the event order in the front end, and standard verification of the consistency of session, registration, and learner information in the rear end.

[0017] Meanwhile, the system may further include a cumulative determination unit that checks for the existence of accumulated completed and passed across multiple learning sessions corresponding to the same registration, and determines moveOn satisfaction even when multiple moveOn satisfaction conditions are achieved separately in different sessions.

[0018] Meanwhile, to achieve the above objectives, the CMI5-based learning data integration processing method according to the present invention is a method for mediating a learning session according to the CMI5 standard between an external learning service and a learning record storage unit, comprising: receiving a launched request from the external learning service, wherein the launched request includes at least moveOn and learning content identification information; generating a learning session identifier and registration in response to the launched request; storing the moveOn included in the launched request as a session-specific policy corresponding to the corresponding learning session, wherein if the launched request includes masteryScore, the masteryScore is stored together with the session-specific policy; generating an Activity State including the session-specific policy and learning status information; receiving a subsequent learning event associated with the learning session identifier and updating the Activity State; determining whether the moveOn is satisfied based on the subsequent learning event by referring to the session-specific policy stored in the Activity State; generating a satisfied statement if the moveOn is determined to be satisfied; generating a statement of the CMI5 standard corresponding to the launched request and the subsequent learning event; and storing the satisfied statement and the statement in the learning record storage unit.

[0019] At this time, at the time of receiving the launched request in the above step, moveOn is confirmed as a session-specific policy and fixed to the Activity State, and if the launched request includes masteryScore, it is fixed together with the session-specific policy; in the above step, the fixed session-specific policy is consistently referenced throughout the entire learning session to determine whether moveOn is satisfied, and in the above step, the learning data integration processing system can automatically generate a satisfied statement.

[0020] Meanwhile, the method may further include a step of automatically generating course structure information in the cmi5 standard or corresponding metadata from parameters included in the above-mentioned launched request, wherein the parameters used to generate the course structure information are identical to the parameters that form the basis of the session-specific policy referenced in the above step, so that the content execution information and the moveOn judgment criteria can be determined from the same input.

[0021] Meanwhile, the generated course structure information or metadata can be linked to content execution and the moveOn determination of the above step.

[0022] Meanwhile, the method may further include a step of determining the allowed order of subsequent learning events based on the current session state of the Activity State and blocking the processing of the event order that is not allowed.

[0023] Meanwhile, the method may further include a step of lightweight verifying the existence of the learning session identifier and the event order in the first stage, and standard verifying the consistency of session, registration, and learner information in the second stage.

[0024] Meanwhile, the method may further include a step of determining moveOn satisfaction even when multiple moveOn satisfaction conditions are achieved separately in different sessions by checking whether there is an accumulation of completed and passed that occurred across multiple learning sessions corresponding to the same registration. Effects of the invention

[0025] The CMI5-based learning data integration processing system and method according to the present invention allows for the creation of learning sessions, determination of completion, and storage of learning records in accordance with the CMI5 standard to be automatically performed through the transmission of simple learning events, even if the external learning service does not directly implement the CMI5 standard. Therefore, the costs and technical barriers associated with the introduction of the CMI5 standard by the external learning service can be reduced.

[0026] Next, the session-specific policy determined at the time of receiving the launched request is fixed to the Activity State, and since subsequent learning events are consistently evaluated based on the fixed policy, consistency, reproducibility, and traceability of the judgment criteria can be ensured throughout the entire learning session.

[0027] In addition, since the creation of course structure information in the cmi5 standard and the determination of the moveOn judgment criteria are performed simultaneously from the same parameters included in the launched request, the consistency between the content execution information and the learning completion judgment criteria can be structurally guaranteed.

[0028] In addition, the dual verification structure, which combines lightweight verification at the front end and standard verification at the back end, has the effect of preemptively blocking the influx of abnormal learning events while simultaneously ensuring CMI5 standard compliance and data integrity. Brief explanation of the drawing

[0029] FIG. 1 is a configuration diagram showing the overall system configuration of a cmi5-based learning data integration processing system (100) according to one embodiment of the present invention, and FIG. 2 is a block diagram showing internal components of a cmi5-based learning data integration processing system (100) according to an embodiment of the present invention, and FIG. 3 is a state machine diagram showing a state transition of a learning session according to an embodiment of the present invention, and FIG. 4 is a diagram showing the judgment logic for each moveOn type of the evaluation engine (106) according to one embodiment of the present invention, and FIG. 5 is a flowchart illustrating a cmi5-based learning data integration processing method according to an embodiment of the present invention. Specific details for implementing the invention

[0030] The terms used in this specification will be briefly explained, and the invention will be described in detail.

[0031] The terms used in this invention have been selected to be as widely used as possible, taking into account the functions in this invention; however, they may vary depending on the intent of those skilled in the art, case law, the emergence of new technologies, etc.

[0032] In addition, in specific cases, there are terms arbitrarily selected by the applicant, and in such cases, their meanings will be described in detail in the relevant description of the invention. Therefore, terms used in this invention must be defined not merely by their names, but based on their meanings and the overall content of the invention.

[0033] When a part of the specification is described as "comprising" a certain component, this means that, unless specifically stated otherwise, it does not exclude other components but may include additional components. Furthermore, terms such as "...means," "...part," and "module" as used in the specification refer to a unit that processes at least one function or operation, and this may be implemented in hardware or software, or as a combination of hardware and software.

[0034] Embodiments of the present invention are described below with reference to the attached drawings so that those skilled in the art can easily implement them. However, the present invention may be embodied in various different forms and is not limited to the embodiments described herein. Furthermore, in order to clearly explain the present invention in the drawings, parts unrelated to the explanation have been omitted, and similar parts throughout the specification are denoted by similar reference numerals.

[0035] Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the attached drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms. These embodiments are provided to sufficiently disclose the present invention and to inform those skilled in the art of the scope of the invention.

[0036] FIG. 1 is a configuration diagram showing the overall system configuration of a cmi5-based learning data integration processing system (100) according to one embodiment of the present invention.

[0037] Referring to FIG. 1, a cmi5-based learning data integration processing system (100) according to one embodiment of the present invention is positioned between an external learning service (10) and a learning record storage unit (20) to convert learning events received from the external learning service (10) into learning sessions according to the cmi5 standard, and mediates the creation of learning sessions, state management, completion determination, and storage of learning records. That is, even if the external learning service (10) does not directly implement the runtime communication protocol of the cmi5 standard, the cmi5-based learning data integration processing system (100) automatically configures a session context, course structure information, session-specific policy, and learning activity records according to the cmi5 standard starting from a single launched request from the external learning service (10).

[0038] Here, the external learning service (10) refers to a learning service, content player, or learning tool that does not directly implement the cmi5 standard. The external learning service (10) can transmit learning events corresponding to the initiation of learning linkage, progress of learning, occurrence of learning results, termination of learning, etc., to the cmi5-based learning data integration processing system (100) in the form of JSON or an equivalent structured message. At this time, the external learning service (10) does not need to recognize or directly generate the structure of a statement or a verb (an action identifier indicating the type of learning activity) system defined in the cmi5 standard, and it is sufficient to transmit a learning event including a predetermined parameter.

[0039] The learning record storage unit (20) is a record storage unit that stores and retrieves statements of the cmi5 standard and corresponds to the LRS (Learning Record Store) defined in the xAPI standard. The learning record storage unit (20) receives and stores statements transmitted from the cmi5-based learning data integration processing system (100) and provides an interface that allows the stored statements to be retrieved as needed.

[0040] FIG. 2 is a block diagram showing the internal components of a cmi5-based learning data integration processing system (100) according to one embodiment of the present invention.

[0041] Referring to FIG. 2, the cmi5-based learning data integration processing system (100) includes an input receiving unit (101), a session creation unit (102), a policy storage unit (103), a state object management unit (104), an event processing unit (105), an evaluation engine (106), a satisfied creation unit (107), a learning record creation unit (108), and a record transmission unit (109). Additionally, the cmi5-based learning data integration processing system (100) may further include a course structure creation unit (110), a state machine verification unit (111), a double verification unit (112), and a cumulative judgment unit (113).

[0042] The structure and operation of each component and the relationships between the components are described in detail below.

[0043] The input receiving unit (101) receives a launched request and a subsequent learning event from an external learning service (10). Here, the launched request is a request for initiating a learning linkage and includes at least moveOn and learning content identification information, and may optionally include masteryScore. moveOn is a criterion defining the condition for a learner to be recognized as having completed learning, and may have one of the values ​​Passed, Completed, CompletedOrPassed, CompletedAndPassed, and NotApplicable. masteryScore is a criterion score for determining whether to pass or fail, and is used to determine whether to pass or fail by comparing it with the score received in the subsequent learning event. The learning content identification information may include the address of the actual learning content and may optionally include the content title, description, learning type, learning goal information, loading parameters, language information, etc. The input receiving unit (101) transmits the received launched request to the session creation unit (102), the policy storage unit (103), and the state object management unit (104), and transmits the subsequent learning event to the event processing unit (105).

[0044] The session creation unit (102) generates a learning session identifier in response to a launched request transmitted from the input receiving unit (101), and generates a registration or identifies a pre-configured registration and links it to the learning session identifier. The learning session identifier is a value that uniquely identifies a single learning session, and the registration is an identifier that groups one or more learning sessions belonging to the same learning activity or the same learning attempt context into a parent context. Multiple learning sessions may correspond to a single registration, which may include cases where a learner attempts the same learning activity multiple times or where a learning session is resumed or reconfigured under the same learning context. The learning session identifier and registration generated by the session creation unit (102) are referenced by the policy storage unit (103), the state object management unit (104), and the event processing unit (105).

[0045] The policy storage unit (103) stores the moveOn included in the launched request as a session-specific policy corresponding to the corresponding learning session. If the launched request includes masteryScore, the policy storage unit (103) stores it together with the session-specific policy. The session-specific policy is determined at the time of receiving the launched request and is maintained as a policy snapshot that is not changed throughout the entire duration of the corresponding learning session. The session-specific policy determined at the time of launch in this way functions as a reference value that is consistently referenced when the evaluation engine (106) determines whether the moveOn is satisfied thereafter. The session-specific policy stored in the policy storage unit (103) may also be included in the Activity State generated by the state object management unit (104).

[0046] The state object management unit (104) creates an Activity State containing session-specific policies and learning state information, and updates the Activity State upon receiving subsequent learning events. The Activity State is a state object maintained during a learning session and can store session-specific policies (moveOn, masteryScore) set in the launched stage, a learning session identifier, registration, learner information, learning content identification information, number of attempts, cumulative learning time, progress rate, score, current session state, last processed verb, timestamps for each stage, etc. The Activity State is initialized at the time of launch, and the corresponding fields are updated whenever subsequent learning events such as initialized, progressed, completed, passed, failed, abandoned, waived, terminated are received. The Activity State managed by the state object management unit (104) is referenced by multiple components, such as an evaluation engine (106), a state machine verification unit (111), and a dual verification unit (112).

[0047] Meanwhile, the step-by-step updating of the Activity State by the above-mentioned state object management unit (104) can be implemented, for example, as follows.

[0048] When a launched request is received, the state object management unit (104) initializes the Activity State. The initialized Activity State stores the learning session identifier and registration created by the session creation unit (102), the session-specific policy (moveOn and masteryScore) confirmed by the policy storage unit (103), learner information, and learning content identification information. At this time, the number of attempts is set to 1, the progress is set to 0, and the current session state is recorded as Launched.

[0049] When an initialized event is received, the state object management unit (104) updates the current session state of the Activity State to Initialized, records the time of initialization, and updates the last processed verb to Initialized.

[0050] When a progressed event is received, the state object management unit (104) updates the current session state of the Activity State to InProgress and updates the progress rate, score, cumulative learning time, etc. based on the information included in the received event. The progressed event may be received multiple times during the learning session, and the field is updated each time it is received.

[0051] When a completed event is received, the state object management unit (104) updates the current session state of the Activity State to Completed and records the completion time, completion status, and received result information. At this time, the success status may be updated separately based on the passed or failed event, or the success status value included in the result information. At this point, a moveOn satisfaction determination by the evaluation engine (106) may be performed.

[0052] When a passed event is received, the state object management unit (104) can update the value indicating success in the Activity State to success, reflect the received score information if any, and update the last processed verb to passed.

[0053] When a failed event is received, the state object management unit (104) updates the value indicating success or failure in the Activity State to failure, reflects the received score information if any, and updates the last processed verb to failed.

[0054] When an abandoned event is received, the state object management unit (104) updates the current session state of the Activity State to Abandoned and can record information corresponding to the time of discontinuation or the reason for discontinuation.

[0055] When a waived event is received, the state object management unit (104) can update the current session state of the Activity State to Waived and record information corresponding to the time of waived processing or the reason for waived.

[0056] When a terminated event is received, the state object management unit (104) updates the current session state of the Activity State to Terminated and records the termination time. After transitioning to the Terminated state, no update of the Activity State is performed by additional events for the same learning session.

[0057] In this way, the Activity State has a structure that maintains the session-specific policy set at the time of launch fixed, while updating only the learning state information step by step whenever a subsequent learning event is received. As a result, even if the evaluation engine (106) refers to the Activity State at any point, the session-specific policy maintains the value determined at the time of launch, and the learning state information reflects the latest state up to that point.

[0058] FIG. 3 is a state machine diagram showing the state transition of a learning session according to one embodiment of the present invention.

[0059] Referring to FIG. 3, the state of a learning session managed by the state object management unit (104) transitions to the Launched state upon receiving a launched request, transitions to the Initialized state upon receiving an initialized event, and transitions to the InProgress state upon receiving a progressed event. In the InProgress state, the progressed event may be received multiple times, in which case fields such as the progress rate, cumulative learning time, and score of the Activity State are updated. When a completed event is received in the InProgress state, it transitions to the Completed state; when an abandoned event is received, it transitions to the Abandoned state; and when a waived event is received, it transitions to the Waived state. When a terminated event is received in the Completed, Abandoned, or Waived state, it transitions to the Terminated state, and after the Terminated state, the processing of additional learning events for the same learning session is blocked.

[0060] The event processing unit (105) receives and processes a subsequent learning event associated with a learning session identifier. Here, the subsequent learning event is an event corresponding to a learning flow stage defined in the cmi5 standard, and includes at least some of initialized, progressed, completed, passed, failed, abandoned, waived, and terminated. The event processing unit (105) identifies the type of the received subsequent learning event, extracts information included in the event (progress rate, score, completion status, time information, etc.), and transmits it to the state object management unit (104). Additionally, the event processing unit (105) transmits the received subsequent learning event to the learning record generation unit (108) so that a statement of the cmi5 standard is generated, and if an event of a result type (completed, passed, failed, abandoned, waived, etc.) is received, transmits it to the evaluation engine (106) so that a determination of whether moveOn is satisfied is performed. In addition, when moveOn is NotApplicable, it can be transmitted to the evaluation engine (106) even when an initialized event or an event indicating the satisfaction of a predetermined minimum start condition is received.

[0061] FIG. 4 is a diagram showing the judgment logic for each moveOn type of the evaluation engine (106) according to one embodiment of the present invention.

[0062] Referring to FIG. 4, the judgment logic of the evaluation engine (106) branches as follows depending on the type of moveOn.

[0063] When moveOn is Passed, the evaluation engine (106) determines that it is passed when the score received from the subsequent learning event is greater than or equal to masteryScore, or determines that moveOn is satisfied when a verb corresponding to passed is received directly.

[0064] When moveOn is Completed, the evaluation engine (106) determines that moveOn is satisfied when a verb corresponding to completed is received.

[0065] When moveOn is CompletedOrPassed, the evaluation engine (106) determines that moveOn is satisfied when a verb corresponding to either completed or passed is received. In this case, even if a verb corresponding to failed is received first, moveOn can be determined to be satisfied if a verb corresponding to completed is received later.

[0066] When moveOn is CompletedAndPassed, the evaluation engine (106) determines that moveOn is satisfied when a verb corresponding to both completed and passed is received. Completed and passed may both occur within the same learning session, or they may occur separately in different learning sessions corresponding to the same registration. In the latter case, a cross-session determination by the accumulation determination unit (113) may be performed, and this will be described later.

[0067] If moveOn is NotApplicable, the evaluation engine (106) may determine that moveOn is satisfied based on the reception of an initialized event or the satisfaction of a predefined minimum learning start condition, even if no event of the result type is received. In one embodiment, if it is NotApplicable, moveOn may be determined to be satisfied at the time when the learning session reaches the Initialized state.

[0068] Meanwhile, the verb itself corresponding to failed does not serve as a satisfying condition on its own in any moveOn type.

[0069] The satisfied generation unit (107) automatically generates a satisfied statement on the side of the cmi5-based learning data integration processing system (100) when the evaluation engine (106) determines that the moveOn is satisfied. That is, the satisfied statement is not generated by the external learning service (10), but rather by the cmi5-based learning data integration processing system (100) based on the determination result of the evaluation engine (106). The satisfied statement is generated at the time when the moveOn is determined to be satisfied and is transmitted and stored in the learning record storage unit (20) through the record transmission unit (109).

[0070] The learning record generation unit (108) generates a statement in the cmi5 format corresponding to a launched request and subsequent learning events. Specifically, the learning record generation unit (108) generates a launched statement when a launched request is received, and subsequently generates a statement corresponding to each event whenever subsequent learning events such as initialized, progressed, completed, passed, failed, abandoned, waived, terminated are received. Each statement generated is mapped to a registration, learning session identifier, learner information, learning content identification information, score, progress rate, etc.

[0071] Meanwhile, the generation of a statement of the cmi5 standard by the above-mentioned learning record generation unit (108) can be performed based on, for example, the following mapping.

[0072] The learning record generation unit (108) determines a verb corresponding to the type of the received learning event. For example, for a launched request, a verb corresponding to "launched" is assigned, for an initialized event, a verb corresponding to "initialized" is assigned, and for events such as completed, passed, failed, abandoned, waived, terminated, etc., a corresponding verb is assigned to each. Additionally, learner information is mapped to the actor of the statement, and the learner information may be included in the launched request or augmented within the cmi5-based learning data integration processing system (100). Learning content identification information based on the content address included in the launched request is mapped to the object of the statement, and registration and learning session identifiers are mapped to the context. Here, registration corresponds to context.registration defined in the cmi5 specification, and the learning session identifier may be stored in an extended field. By doing so, multiple statements belonging to the same registration are grouped into a parent context, and statements belonging to the same learning session can be identified on a session basis. Furthermore, if the received training event includes result information such as score, progress, completion status, success status, and training time, this is mapped to the result field of the statement. For example, the score can be mapped to result.score, progress to result.extensions, completion to result.completion, and success to result.success.

[0073] In this way, the learning record generation unit (108) maps each piece of information of a learning event received from an external learning service (10) to a statement structure of the cmi5 standard, thereby enabling a statement suitable for the cmi5 standard to be generated even if the external learning service (10) does not recognize the statement structure of the cmi5 standard.

[0074] The record transmission unit (109) transmits and stores the statement generated by the learning record generation unit (108) and the satisfied generation unit (107) in the learning record storage unit (20). The record transmission unit (109) manages communication with the learning record storage unit (20) and, if necessary, can search for past verb history for the same registration by querying the statement stored in the learning record storage unit (20). This query function can be utilized for cross-session determination by the cumulative judgment unit (113) described later.

[0075] Hereinafter, components that may be further included in the cmi5-based learning data integration processing system (100) will be described.

[0076] The course structure generation unit (110) automatically generates course structure information in the cmi5 standard or corresponding metadata from parameters included in the launched request. The parameters input to the course structure generation unit (110) may include a content address, title, learning type, moveOn, masteryScore, learning goal, etc. The generated course structure information corresponds to cmi5.xml defined in the cmi5 standard and includes information such as course, title, description, URL of AU (Assignable Unit), learning type, moveOn, masteryScore, etc. The course structure information or metadata generated by the course structure generation unit (110) may be stored on a disk, database, object storage, etc. Since the parameters input to the course structure generation unit (110) are identical to the parameters that form the basis of the session-specific policy by the policy storage unit (103), the content execution information and the moveOn judgment criteria are determined from the same input. Additionally, the generated course structure information or metadata may be directly loaded when the content is executed, or linked to the moveOn judgment of the evaluation engine (106) in the form of metadata stored in a database.

[0077] The state machine verification unit (111) determines the allowed order of subsequent learning events based on the current session state of the state object management unit (104) and blocks the processing of events in an unallowed order. Referring to FIG. 3, the state transitions of a learning session according to the cmi5 standard are set to follow a predetermined order. When the event processing unit (105) receives a subsequent learning event, the state machine verification unit (111) determines whether the received event is an allowed transition by referring to the current session state recorded in the Activity State. For example, if an initialized event is received before a launched request is received, or a progressed event is received before an initialized event is received, or a completed event is received after a terminated state, or if a duplicate launched request is received for the same learner, learning content, and registration context, or if a launched request is received that substantially duplicates an existing learning session that has not yet been terminated, the state machine verification unit (111) can block the processing of the request or control it to be linked to the existing learning session.

[0078] The dual verification unit (112) provides a verification structure based on the division of roles between front-end verification performed internally within the cmi5-based learning data integration processing system (100) and back-end verification performed at the learning record storage unit (20) or a standard verification layer equivalent thereto. Here, the front end refers to an API server layer that receives learning events from an external learning service (10), and the back end refers to a learning record storage unit (20) where the generated statement is finally stored or a standard verification layer associated therewith. The server at the front end performs lightweight verification of the existence of a learning session identifier, the order of events, and the range of parameter values. The learning record storage unit (20) or standard verification layer at the back end performs standard verification of the consistency of session, registration, and learner information, authorization information, cmi5 verb sequence, etc. By the lightweight verification at the front end, abnormal learning events can be blocked before reaching the learning record storage unit (20), and by the standard verification at the back end, conformity to the cmi5 specification and data integrity can be ensured.

[0079] The accumulation determination unit (113) determines whether the moveOn condition is satisfied by querying whether there is an accumulation of completed and passed that occurred across multiple learning sessions corresponding to the same registration. As previously explained, when moveOn is CompletedAndPassed, completed and passed may occur separately in different learning sessions rather than in the same learning session. For example, if only the verb corresponding to passed occurs in the first learning session and only the verb corresponding to completed occurs in the second learning session, CompletedAndPassed is not satisfied at the level of each learning session, but it may be satisfied as an accumulation criterion for the same registration. The accumulation determination unit (113) queries past statements for the same registration stored in the learning record storage unit (20) through the record transmission unit (109), and determines whether the moveOn condition is satisfied by checking whether there is an accumulation of completed and passed. The determination result of the accumulation determination unit (113) is transmitted to the evaluation engine (106), and if the moveOn condition is determined to be satisfied, the generation of a satisfied statement by the satisfied generation unit (107) is performed.

[0080] Hereinafter, a structure in which the above components are organically combined to produce an effect that is difficult to expect from a simple combination of individual components will be further explained with reference to FIG. 1 and FIG. 2.

[0081] The policy storage unit (103), state object management unit (104), evaluation engine (106), and satisfied generation unit (107) do not function independently of each other, but form a series of sequential processing flows from the time of receiving the launched request to determining the moveOn satisfaction and generating the satisfied statement.

[0082] In this structure, the policy storage unit (103) performs the role of confirming moveOn and masteryScore as session-specific policies at the time of receiving the launched request and maintaining them as policy snapshots that are not subsequently changed. If the policy storage unit (103) exists only independently and the confirmed session-specific policies are not referenced by subsequent components, the confirmation of the session-specific policies itself would be nothing more than simple parameter storage. Similarly, even if the state object management unit (104) creates and updates the Activity State, if the session-specific policies are not included in the Activity State or are not linked to subsequent judgments, the Activity State would remain merely a log storage for simple learning history. Furthermore, even if the evaluation engine (106) determines whether moveOn is satisfied, if the session-specific policies serving as the criteria for judgment are not fixed policy snapshots at the time of launch but are values ​​that can be changed frequently from the outside, consistency of the judgment results for the same learning session will not be ensured.

[0083] However, in the cmi5-based learning data integration processing system (100) according to one embodiment of the present invention, a session-specific policy determined at the time of launch by the policy storage unit (103) is fixed to the Activity State of the state object management unit (104), and an evaluation engine (106) consistently references the fixed session-specific policy throughout the entire learning session to determine whether moveOn is satisfied, and a satisfied generation unit (107) automatically generates a satisfied statement based on the determination result. Accordingly, the external learning service (10) obtains the effect that, by simply transmitting the learning event that occurs after the launch request, the determination of learning completion according to the cmi5 standard is performed by the same criteria determined at the time of launch, and as a result, a satisfied statement is automatically generated and recorded in the learning record storage unit (20). This effect is difficult to achieve even if any one of the four components is omitted.

[0084] For example, assume a case where a session-specific policy with moveOn is CompletedOrPassed and masteryScore is 0.7 is fixed at the time of launch. Subsequently, even if an event corresponding to 'failed' occurs first when a learner performs a learning activity, the evaluation engine (106) does not determine moveOn satisfaction based on 'failed' itself because it refers to the CompletedOrPassed policy fixed at the time of launch. Subsequently, if an event corresponding to 'completed' occurs within the same learning session, the evaluation engine (106) determines moveOn satisfaction based on the reception of 'completed' from the CompletedOrPassed condition, and the satisfied generation unit (107) generates a satisfied statement. In this series of processes, if the session-specific policy is not fixed at the time of launch, there is a risk that the judgment criteria may change in the middle, and the processing result may differ when 'completed' is received after 'failed'. Conversely, even if the session-specific policy is fixed, if the evaluation engine (106) does not refer to the fixed policy, the moveOn satisfaction determination will not be performed, and furthermore, if the satisfied generation unit (107) does not exist, even if the moveOn satisfaction is determined, the result will not be recorded in the learning record storage unit (20) as a satisfied statement according to the cmi5 standard.

[0085] Next, the combined structure between the course structure generation unit (110) and the evaluation engine (106) is described. The course structure generation unit (110) automatically generates course structure information in the cmi5 standard from parameters included in the launched request, and the evaluation engine (106) determines whether the moveOn is satisfied based on the session-specific policy determined from the parameters included in the same launched request. Here, since the parameters input to the course structure generation unit (110) and the parameters that form the basis of the session-specific policy referenced by the evaluation engine (106) are derived from the same launched request, a structure is formed in which the content execution information and the learning completion judgment criteria are determined by the same input. If the course structure generation unit (110) and the evaluation engine (106) were structured to obtain information from separate input sources, a discrepancy could occur between the moveOn condition referenced during content execution and the moveOn condition actually used by the evaluation engine (106) for judgment. In the present invention, since the inputs of both are derived from the same launched request, the possibility of such a discrepancy is structurally eliminated.

[0086] Meanwhile, the above components are based on individual elements such as moveOn, masteryScore, satisfied statement, and Activity State defined by the cmi5 standard, but unlike the direct runtime communication structure between the learning management system and the learning content unit presupposed by the cmi5 standard, they are combined as an intermediate layer that automatically configures the session context, course structure information, and learning activity records according to the cmi5 standard from simple API input of an external learning service that does not directly implement the cmi5 standard, and thus are distinguished from the usual implementation according to the standard.

[0087] Hereinafter, the CMI5-based learning data integration processing method according to the present invention will be examined in detail with reference to the attached drawings. Figure 5 is a flowchart illustrating a CMI5-based learning data integration processing method according to an embodiment of the present invention.

[0088] Referring to FIG. 5, the first step is to receive a launched request from an external learning service (10) and generate a learning session identifier and a registration (S11). The input receiving unit (101) receives a launched request from the external learning service (10), and the launched request includes at least moveOn and learning content identification information. The session generating unit (102) responds to the launched request and generates a learning session identifier that uniquely identifies a learning session and a registration that groups one or more learning sessions for the same learning activity into a parent context.

[0089] The next step is to finalize the moveOn and masteryScore included in the launched request as session-specific policies and fix them to the Activity State (S12). The policy storage unit (103) stores the moveOn included in the launched request as a session-specific policy corresponding to the corresponding learning session, and if the launched request includes masteryScore, it stores it together with the session-specific policy. The state object management unit (104) creates an Activity State containing the above session-specific policies and learning state information. At this time, the finalized session-specific policy is fixed to the Activity State and maintained as a policy snapshot that is not changed throughout the entire duration of the corresponding learning session. Meanwhile, in this step, course structure information in the cmi5 standard or corresponding metadata may be automatically generated from the parameters of the launched request by the course structure generation unit (110). Additionally, the learning record generation unit (108) generates a launched statement corresponding to the launched request, and the record transmission unit (109) transmits and stores it in the learning record storage unit (20).

[0090] The next step is to receive a subsequent learning event associated with the learning session identifier and update the Activity State (S13). The event processing unit (105) receives and processes the subsequent learning event associated with the learning session identifier. The subsequent learning event includes at least some of initialized, progressed, completed, passed, failed, abandoned, waived, and terminated. The state object management unit (104) updates the learning state information (progress rate, score, cumulative learning time, current session state, etc.) of the Activity State based on the received subsequent learning event. At this time, the session-specific policy fixed in the Activity State is not subject to update, and the value determined at the time of launch is maintained as is. Meanwhile, the state machine verification unit (111) determines the allowed order of the received subsequent learning event based on the current session state of the Activity State and can block the processing of the event order that is not allowed. In addition, lightweight verification at the front end and standard verification at the back end can be performed by the dual verification unit (112). The learning record generation unit (108) generates a statement of the cmi5 standard corresponding to the received subsequent learning event, and the record transmission unit (109) transmits and stores it in the learning record storage unit (20). This step can be repeated until the learning session ends.

[0091] The next step is to determine whether moveOn is satisfied by referring to the session-specific policy fixed in the Activity State (S14). When an event of a result type (completed, passed, failed, etc.) is transmitted from the event processing unit (105), the evaluation engine (106) determines whether moveOn is satisfied based on the value of moveOn fixed in the Activity State. The specific determination logic branches according to the type of moveOn (Passed, Completed, CompletedOrPassed, CompletedAndPassed, NotApplicable), as previously described with reference to FIG. 4. If moveOn is not satisfied, the learning session waits for the reception of the next subsequent learning event and returns to the above S13 step. Meanwhile, if moveOn is CompletedAndPassed, the accumulation determination unit (113) can determine whether moveOn is satisfied by checking whether there is an accumulation of completed and passed that occurred across multiple learning sessions corresponding to the same registration.

[0092] The next step is to generate a satisfied statement when it is determined that the moveOn is satisfied (S15). When the evaluation engine (106) determines that the moveOn is satisfied in step S14, the satisfied generation unit (107) automatically generates a satisfied statement on the side of the cmi5-based training data integration processing system (100).

[0093] The next step is to store the generated statement in the learning record storage unit (20) (S16). The record transmission unit (109) transmits and stores the satisfied statement generated by the satisfied generation unit (107) in the learning record storage unit (20).

[0094] Through the above steps S11 to S16, even if the external learning service (10) does not directly implement the cmi5 standard, the creation of a learning session according to the cmi5 standard, determination of moveOn satisfaction based on a session-specific policy, automatic generation of a satisfied statement, and storage of a record in the learning record storage unit (20) can be performed simply by transmitting a learning event after the launch request.

[0095] The technical concept of the present invention has been examined through the above examples.

[0096] A method according to one embodiment of the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., either alone or in combination. The program instructions recorded on the medium may be those specifically designed and configured for the present invention, or may be those known and available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical recording media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, and flash memory. Examples of program instructions include machine code, such as that generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc.

[0097] Although embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements by those skilled in the art using the basic concept of the present invention as defined in the following claims also fall within the scope of the present invention. Explanation of the symbols

[0098] 10 : External learning service 20 : Learning record storage 100 : CMI5-based training data integration processing system 101 : Input receiver 102 : Session creation section 103 : Policy Storage 104: State Object Management Unit 105 : Event handling unit 106 : Evaluation Engine 107 : satisfied generation part 108 : Learning record generation section 109 : Record transmission unit 110 : Course structure generation section 111 : State Machine Verification Unit 112 : Double verification unit 113 : Cumulative Judgment Unit

Claims

Claim 1 A learning data integration processing system (100) mediating a learning session according to the cmi5 standard between an external learning service (10) and a learning record storage unit (20), comprising: an input receiving unit (101) that receives a launched request and a subsequent learning event from the external learning service (10), wherein the launched request includes at least moveOn and learning content identification information, and the external learning service (10) does not generate a statement structure or verb system defined in the cmi5 standard and transmits the launched request and the subsequent learning event in the form of a learning event including predetermined parameters; a session creation unit (102) that creates a learning session identifier and registration in response to the launched request; a policy storage unit (103) that stores the moveOn included in the launched request as a session-specific policy corresponding to the corresponding learning session, and if the launched request includes masteryScore, stores it together with the session-specific policy; a state object management unit (104) that creates an Activity State including the session-specific policy and learning state information and updates the Activity State upon receipt of the subsequent learning event; and an event that receives and processes the subsequent learning event associated with the learning session identifier. A processing unit (105); an evaluation engine (106) that determines whether a moveOn is satisfied based on the subsequent learning event by referring to the session-specific policy stored in the Activity State; a satisfied generation unit (107) that generates a satisfied statement when the evaluation engine (106) determines that the moveOn is satisfied; and a learning record generation unit (108) that generates a statement of cmi5 specification corresponding to the launched request and the subsequent learning event, on the side of the learning data integration processing system (100), without the external learning service (10) generating the statement.A cmi5-based learning data integrated processing system comprising a record transmission unit (109) that transmits and stores a statement generated by the satisfied generation unit (107) and the learning record generation unit (108) to a learning record storage unit (20), wherein the policy storage unit (103) determines moveOn as a session-specific policy at the time of receiving the launched request and fixes it to the Activity State, and if the launched request includes masteryScore, fixes it together with the session-specific policy, and the evaluation engine (106) determines whether moveOn is satisfied by consistently referencing the fixed session-specific policy throughout the entire learning session, and the satisfied generation unit (107) automatically generates a satisfied statement on the side of the learning data integrated processing system (100). Claim 2 delete Claim 3 A CMI5-based learning data integrated processing system according to claim 1, further comprising a course structure generation unit (110) that automatically generates course structure information of the CMI5 standard or corresponding metadata from parameters included in the launched request, wherein the parameters input to the course structure generation unit (110) are identical to the parameters that form the basis of the session-specific policy referenced by the evaluation engine (106), so that content execution information and moveOn judgment criteria are determined from the same input, and the course structure information or metadata generated by the course structure generation unit (110) is linked to content execution and the moveOn judgment of the evaluation engine (106). Claim 4 A cmi5-based learning data integration processing system characterized by further including a state machine verification unit (111) that determines the allowed order of subsequent learning events based on the current session state of the state object management unit (104) and blocks the processing of the unallowed event order in the third paragraph. Claim 5 A cmi5-based learning data integration processing system characterized by further including, in either claim 3 or 4, a cumulative determination unit (113) that checks for the existence of a cumulative complete and passed that occurred across multiple learning sessions corresponding to the same registration, and determines the moveOn satisfaction even when multiple moveOn satisfaction conditions are achieved separately in different sessions.

Citation Information

Patent Citations

  • Educational resource management method, device and system, and client side

    CN108648119A

  • Method and system for certification of on-line learning completion using Experience Application Programming Interface(xAPI) based on block chain network

    KR1020210096780A

  • Learning path recommendation system based on user characteristics and content analysis

    KR1020220142850A

  • Online educational system with multiple navigational modes

    US20120122061A1