CA3220443A1 - Publishing and distribution system and method for e-learning content across multiple learning environments - Google Patents

Publishing and distribution system and method for e-learning content across multiple learning environments Download PDF

Info

Publication number
CA3220443A1
CA3220443A1 CA3220443A CA3220443A CA3220443A1 CA 3220443 A1 CA3220443 A1 CA 3220443A1 CA 3220443 A CA3220443 A CA 3220443A CA 3220443 A CA3220443 A CA 3220443A CA 3220443 A1 CA3220443 A1 CA 3220443A1
Authority
CA
Canada
Prior art keywords
content
distribution
learner
course
tenant
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CA3220443A
Other languages
French (fr)
Inventor
Owen Lambert
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ontario Educational Communications Authority Tvo
Original Assignee
Ontario Educational Communications Authority Tvo
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ontario Educational Communications Authority Tvo filed Critical Ontario Educational Communications Authority Tvo
Priority to CA3220443A priority Critical patent/CA3220443A1/en
Publication of CA3220443A1 publication Critical patent/CA3220443A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • G06Q50/205Education administration or guidance
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B21/00Teaching, or communicating with, the blind, deaf or mute
    • G09B21/001Teaching or communicating with blind persons
    • G09B21/003Teaching or communicating with blind persons using tactile presentation of the information, e.g. Braille displays
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • G09B5/02Electrically-operated educational appliances with visual presentation of the material to be studied, e.g. using film strip

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

A system for distributing at least one published course content, the system comprising: at least one memory device configured for storing instructions; and at least one processor coupled to the at least one memory device and configured to execute the instructions to at least: initiate a process to distribute the at least one published course content; receive a selection of at least one learner experience type for the at least one published course content; determine a learner environment associated with the at least one learner experience type; for each at least one learner experience type assign at least one predefined format of the at least one published course content for distribution; determine a distribution process required for each of the at least one learner experience type;
assemble the at least one published course content in at least one distribution package, wherein the at least one distribution package comprises the at least one published course content with the at least one predefined format; and distribute the at least one distribution package via at least one distribution process.

Description

PUBLISHING AND DISTRIBUTION SYSTEM AND METHOD FOR
E-LEARNING CONTENT ACROSS MULTIPLE LEARNING
ENVIRONMENTS
FIELD
[0001] The present disclosure relates to methods and systems for e-learning.
BACKGROUND
[0002] Generating and providing truly portable and accessible online content is a challenge in the e-learning industry. There exist standards for development of accessible e-learning, such as the World Wide Web Consortium's (W3C) Web Content Accessibility Guidelines (WCAG 2.0), Authoring Tool Accessibility Guidelines (ATAG 2.0), and Accessible Rich Internet Application (ARIA 1.0) specification. However, these standards are deficient in addressing the challenges associated with accessible content development, especially the economic challenges with developing online content that fully meets the needs of the students or learners not just in e-learning, but in all areas of online content management.
[0003] Several solutions have been proposed to tackle this problem in the four sectors in the educational content space, such as learning management systems (LMS), online, authoring tools/content management systems, education providers, and learning content management systems (LCMS). Generally, learning management systems are closed environments where students study, are assessed, and actively interact with one another.
These systems are analogous to online classrooms. Example products include Blackboard from Anthology Inc., U.S.A., Instructure0 by Canvas Inc., U.S.A., Schoology0 from PowerSchool Group LLC, U.S.A., Brightspace0 from D2L
Corporation, Canada (and open-source solutions like Moodie and Sakai . Online education providers are also closed ecosystems of independent learning, and example products include Pluralsight Skills , LinkedIn Learning, Coursera0, Udemy0, Udacity0, and Masterclass0. Authoring tools or content management systems comprise software and services that authors, such as web developers, designers, writers, etc., can use to produce and manage web content e.g., static web pages, dynamic web applications, for websites, blogs, media, and ecommerce-style sites. Example products of authoring Date Recue/Date Received 2023-11-17 tools or content management systems include Shopify0, Wix0, Weebly0, Progress Sitefinity0, Squarespace0, and Open-Source solutions e.g. WordPress and Drupa10.
Learning content management systems are used to develop course content for either distribution to LMSes or direct consumption directly by students or learners.
Example LMS products include Top Hate, Articulate , Turning , and Lectora0.
[0004] With respect to the authoring tools, accessibility support in the market today is focused on functionality that is best reflected by the W3C's Authoring Tools Accessibility Guidelines (ATAG) which define how to make the authoring tools themselves accessible, such that people with disabilities can create web content, and help authors create more accessible web content, specifically: enable, support, and promote the production of content that conforms to WCAG. These guidelines reflect an approach to content contained in these tools that assumes that the consumer will consume web content; and that the primary consumer of the content is an enabled person and that the point of the guidelines are to make the authoring tool provide a minimal level of accessibility support for disabled persons looking to consume this enabled person intended content.
[0005] At present, the market expectation for content development is designed to gracefully degrade the content experience, such that the most enabled consumers experience the content as intended, and the experience degrades for less enabled consumers in such a manner as it is designed to minimize the breaking of the experience for the less enabled consumers. For example, a content producer will for example record and make available a video which is best-suited to or provides the richest experience to fully enabled consumers i.e. those without disabilities, then add closed captioning and/or described video etc. to express what is in the video for the visually impaired. The challenge here is that from a learning perspective the nuance of the actual learning is designed around a visual experience that often does not translate fully to the transcription as the language prioritizes the description of the video content instead of the learning concepts. This methodology applies to most content that is produced by these existing systems whereby the primary intended audience is a fully enabled user with a desktop Date Recue/Date Received 2023-11-17 computer or a tablet such that fully enabled user enjoys the best experience, while the experience is degraded for individuals with accessibility, equity, or device challenges.
[0006] As such, none of the products on the market today provide for the broader portability and accessibility needs of e-learning content producers (course publishers, educational institutions, and governments/educational ministries) to develop and manage content effectively from an accessibility-first perspective while also providing rich, highly engaging interactive experiences for fully enabled users.
SUMMARY
[0007] In one example, a system for distributing at least one published course content, the system comprising:
at least one memory device configured for storing instructions; and at least one processor coupled to the at least one memory device and configured to execute the instructions to at least:
initiate a process to distribute the at least one published course content;
receive a selection of at least one learner experience type for the at least one published course content;
determine a learner environment associated with the at least one learner experience type;
for each at least one learner experience type assign at least one predefined format of the at least one published course content for distribution;
determine a distribution process required for each of the at least one learner experience type;
assemble the at least one published course content in at least one distribution package, wherein the at least one distribution package comprises the at least one published course content with the at least one predefined format; and distribute the at least one distribution package via at least one distribution process.

Date Recue/Date Received 2023-11-17
[0008] In another example, a method for distributing at least one published course content, with a processor coupled to at least one memory device storing instructions, wherein the processor executes the instructions to at least perform the operations of:
initiating a process to distribute the at least one published course content;
receiving a selection of at least one learner experience type for the at least one published course content;
determining a learner environment associated with the at least one learner experience type;
for each at least one learner experience type assigning at least one predefined format of the at least one published course content for distribution;
determining a distribution process required for each of the at least one learner experience type;
assembling the at least one published course content in at least one distribution package, wherein the at least one distribution package comprises the at least one published course content with the at least one predefined format; and distributing the at least one distribution package via at least one distribution process.
[0009] In another example, a computer readable medium storing instructions executable by a processor to carry out the operations comprising:
initiating a process to distribute the at least one published course content;
receiving a selection of at least one learner experience type for the at least one published course content;
determining a learner environment associated with the at least one learner experience type;
for each at least one learner experience type assigning at least one predefined format of the at least one published course content for distribution;
determining a distribution process required for each of the at least one learner experience type;

Date Recue/Date Received 2023-11-17 assembling the at least one published course content in at least one distribution package, wherein the at least one distribution package comprises the at least one published course content with the at least one predefined format; and distributing the at least one distribution package via at least one distribution process.
[0010]
Advantageously, the systems and methods described herein provide for a content management system (CMS) platform that stores e-learning content in a manner such that the learning content and presentation information are separated. The content is subsequently transcompiled automatically into highly portable, variable, and accessible e-learning experiences. As such, e-learning content producers (course publishers, educational institutions, and governments/educational ministries) may use the platform to build e-learning experiences that are accessible-first, and reflect inclusive-design with minimal additional effort relative to the effort needed to produce content on the desktop and tablet focused e-learning experience CMSes that prevail in the market today.
[0011]
The systems and methods enable the generation of content that may be consumed in various formats well beyond "web content" by decoupling the content from its presentation and providing a reliable means of exporting the content in other output formats. While the systems and methods promote inclusive design, the content produced is equally consumable by disabled and enabled persons, more emphasis is placed on the needs of disabled persons, who are viewed as the primary consumer from an authorship perspective. The difference in approach is best reflected in the latest ATAG
version at the time of writing (2.0) recommendation B.2.3.1 "Alternative Content is Editable (WCAG)", where the guideline states that "if the authoring tool provides functionality for adding non-text content, then authors are able to modify programmatically associated text alternatives for non-text content".
The equivalent functionality for this recommendation in the system presented herein would recite "if the authoring tool provides functionality for adding text content, then authors will be able to modify programmatically associated non-text alternatives for the text content". As an example, Date Recue/Date Received 2023-11-17 in the event that a video is to be added as part of the content, the system expects text content and provides the ability to include a video alternative to that text content.
[0012] Generally, the systems and methods allow for the development of portable and deeply accessible online learning experiences that can simultaneously address numerous learning experiences from print experiences for users with device limitations, screen readers of students with accessible needs, internet-limited devices, or no internet students with computer or mobile devices, offline experiences for device and internet-enabled users who prefer to save bandwidth, traditional means of consumption on variant learning management systems (Sharable Content Object Reference Model (SCORM)/xAPI), and live hosted experiences across variant learning management systems. As such, the content is stored in a headless format, where the content and the presentation are separated, and the content details are saved as metadata instead of code. The content is transcompiled and exported for publication in a plurality of formats to address the variable learning formats needed to tailor experiences to accessibility-first.
[0013] The systems and methods described herein intentionally reverse this paradigm by designing the authoring experience that is primarily intended for the least enabled consumers first so that they can fully learn the material regardless of their disabilities or device limitations. The learning is then progressively enhanced with interactivity such that all users have the best learning experience to their inherent capabilities. Of note, this is not simply providing the faculty for alternative content, though aspects of it would apply, rather it is a complementary state of content where the content is shared among different experience states and edited in such a shared state. In other words, the system is not designed as a "print version" that is distinct from a "fully digital version". Rather it is designed to manage content in a hybrid state between the variant experiences supported such that e-learning content producers (course publishers, educational institutions, and governments/ educational ministries) can write and maintain content that facilitates numerous experiences and builds alternative content for more enabled learners.
[0014] The method or system are configured to build e-learning experiences that are accessible-first and reflect inclusive-design with minimal additional effort.
This is Date Recue/Date Received 2023-11-17 accomplished by biasing the editing experience towards print and accessible-first considerations accompanied by component considerations that are designed for the progressive enhancement of content experiences. Content that is produced in this editing experience is saved in a "headless" format, which enables a method of centralized content management that supports numerous exported experiences. When an author chooses to publish and package their e-learning experience this "headless" content is transcompiled into various formats selected by the author. During transcompilation key aspects of presentation such as the theming/styling of the content and selecting the appropriate technologies for inclusion such as video streaming providers are applied to the content.
[0015] The method and system endeavors to address a significant portion of the economic barriers with producing content of this nature by drastically reducing the overhead and complexity and fundamentally shifting the approach to content design.
BRIEF DESCRIPTION OF THE DRAWINGS
[0016] Figure la shows a tenant infrastructure for publication, versioning, distribution, and remote management of e-learning content for plurality of learner experience types;
[0017] Figure lb shows a top-level diagram of an overall system architecture for developing content for distribution in a plurality of learner experience types;
[0018] Figure lc shows two categories of exported experiences i.e.
print-related experiences and digital-related experiences;
[0019] Figure 2 shows a tenant administration environment and tenant environment infrastructure;
[0020] Figure 3 shows a tenant content packaging infrastructure;
[0021] Figure 4 shows a flow chart with an example workflow for developing content for distribution in a plurality of learner experience types;
[0022] Figure 5 shows an example of a tenant content packaging infrastructure and workflow;

Date Recue/Date Received 2023-11-17
[0023] Figure 6 shows a flow chart with an example workflow for layering experiences to generate enhanced content from the created content for different learner experience types;
[0024] Figure 7 shows a tenant authoring experience and workflow;
[0025] Figure 8 shows a course inheritance workflow;
[0026] Figure 9 shows an example workflow for developing, publishing, and distributing a course using the system of Figure lb; and
[0027] Figure 10 shows a block diagram of an example of a machine upon which any one or more of the techniques (e.g., methodologies) discussed herein can be performed.
DETAILED DESCRIPTION
[0028] The following detailed description refers to the accompanying drawings.
Wherever possible, the same reference numbers are used in the drawings and the following description to refer to the same or similar elements. While embodiments of the disclosure may be described, modifications, adaptations, and other implementations are possible. For example, substitutions, additions, or modifications may be made to the elements illustrated in the drawings, and the methods described herein may be modified by substituting, reordering, or adding stages to the disclosed methods.
Accordingly, the following detailed description does not limit the disclosure. Instead, the proper scope of the disclosure is defined by the appended claims.
[0029] Moreover, it should be appreciated that the particular implementations shown and described herein are illustrative of the invention and are not intended to otherwise limit the scope of the invention in any way. Indeed, for the sake of brevity, certain sub-components of the individual operating components, and other functional aspects of the systems may not be described in detail herein. Furthermore, the connecting lines shown in the various figures contained herein are intended to represent exemplary functional relationships and/or physical couplings between the various elements. It should be noted that many alternative or additional functional relationships or physical connections may be present in a practical system.

Date Recue/Date Received 2023-11-17
[0030] Generally, methods and systems described herein pertain to a software-as-a-service (SaaS) application designed to address the publication, versioning, distribution, and remote management needs of e-learning content across multiple learning environments. A SaaS provider provisions the application and platform to customers or "tenants" of the system. Within a tenant, numerous types of users of the tenant's applications (the applications designed to publish, version, distribute, and manage the content) are possible, additionally learners using content produced by the system are also restricted to that tenant except when explicit permission to share or move primary data ownership has been applied (such as when a learner transfers to a new school).
[0031] In Figure la, there is shown a system 10 for authoring, publishing, versioning, managing and distributing e-learning content across multiple learning environments. The system 10 comprises a tenant infrastructure 11 representing two types of tenants; siloed tenants 12a, 12b, where all applications and tenant microservices are made available explicitly for that tenant's use, and pooled tenants 12c where tenant applications 13 and microservices 14 are shared though the experience is distinct for each tenant 12a-c.
Practically, all tenants 12a-c have the same operating experience, the difference between these tenant types reflects an infrastructure differentiation primarily driven by the size of the client and the expected load on the SaaS system.
[0032] The tenant microservices 14 serve the functionality required for the tenant specific applications for media management (file management, transcoding, caching, etc.), content management (data warehousing of headless content), and packaging and distribution (transcompiling to the tenant's format, styling, and output requirements).
Shared microservices 15 serve both the tenant application 13 and learning environments 16 with functions either not needing to be balanced on load concerns, or where anonymized "big data" shared across tenants can be valuable for all tenants using the system, such as, shared learner data informing numerous tenant experiences.
Example shared microservices 15 comprise tenant registration, user management and authentication, tenant management, tenant provisioning, learner knowledge graph (ontology), learner activity signaling and adaptive learning.

Date Recue/Date Received 2023-11-17
[0033] In both siloed and pooled tenant cases 12a-c, three types of tenant learner experiences are supported i.e. API connected experiences 17a, exported experiences 16b (the traditional model the industry currently relies on), and hosted experiences 17c on tenant infrastructure. API connected experiences 17a and hosted experiences 17c differ only in the methods necessary to connect a tenant's clients' learning management system, applications, or hosted environments with the tenant's infrastructure for delivering and updating the experiences.
[0034] Figure lb shows an overall system architecture 20 comprising a client user device 21, or tenant device, with a processor 22, memory device 23 and input/output interface module 24, interconnected by communications bus 25. The client user may be a customer who may be represented as a "tenant" of the system 20, such as a school, college, university, or other educational institution that serves end users, such as students or learners. Tenants have access to tenant applications for publishing, versioning, distributing, and managing the content. In one example, learners consuming the produced content are also restricted to that tenant except when explicit permission to share or move primary data ownership has been approved e.g., when a learner transfers to a new school and therefore switches from one tenant to another tenant.
[0035] In one example, memory device 23 is capable of storing machine executable instructions 26 e.g., tenant applications, data 27, including data models and process models. Further, the processor 22 is capable of executing the instructions 26 stored in memory device 23 to implement aspects of processes described herein. For example, processor 22 may be embodied as an executor of software instructions 26, wherein the software instructions 26 may specifically configure the processor 22 to perform algorithms and/or operations described herein when the software instructions 26 are executed. Alternatively, the processor 22 may execute hard-coded functionality. Client device 21 also comprises a graphical user interface (GUI) 28 and database 29 coupled to tenant user device 21 via I/0 interface module 24.
[0036] The client device 21 may be communicatively coupled to a server machine 30, such as a SaaS server computer, via a communication network 31. The server machine Date Recue/Date Received 2023-11-17 30 provides a SaaS application designed to address the publication, versioning, distribution, and remote management needs of e-learning content across multiple learning environments. Coupled to the server machine 30 is one or more shared databases 32 that are shared by the tenants. The one or more shared databases 32 may be communicatively coupled directly to the server machine 30 or via network 31. Similar to client device 21, the server machine 30 comprises one or more processors 33, memory device 34 storing data 35, including data models and process models, and instructions 36, I/O
interface module 37, interconnected by communications bus 38.
[0037] At the client device 21, instructions 26 stored in memory device 23 comprise several service modules, such as: sign-in module 40; authoring module 42;
content management module 44; content distribution module 46; lifecycle management module 48; export management module 50; application management module 52; media management module 54; packaging and distribution module 56; and content API
module 58.
[0038] It is to be appreciated that the particular arrangement of modules 40-58 illustrated in Figure lb embodiment is presented by way of example only, and alternative arrangements can be used in other embodiments. For example, the functionality associated with the modules 40-58 in other embodiments can be combined into a single module, or separated across a larger number of modules. As another example, multiple distinct processors 22 can be used to implement different ones of the modules 40-58 or portions thereof. At least portions of the modules 40-58 may be implemented at least in part in the form of software comprising program code 26 stored in memory device 23 and executed by processor 22.
[0039] In one example, it is assumed that a tenant user associated with one or more of the client devices 21 is attempting to access services and applications on a server machine 30 over the network 31, and that access to the services requires successful tenant user authentication to the server machine 30. As such, the server machine 30 may include an authentication server running an identity and access management (IAM) service for users, such as administrators, customers, and applications throughout the tenant system.

Date Recue/Date Received 2023-11-17
[0040] The authentication or validation process begins with the tenant user entering login credentials on a user-interface 28 presented on a display associated with the tenant user device 21 and provided by a web server at the server machine 30. In an operation, the tenant user enters identification information that may include a user ID
and a password. First time users may be required to provide personal information and to select the user ID and/or the password before being allowed to continue. The user submits the identification information to the server machine 30. A test is implemented in an operation to determine if the identification information authenticates the tenant user.
For example, if the submitted user identification information matches the information stored in a database for a known valid user of the service, the user is authenticated. If not, the user is redirected back to the login user interface or to an error page and may try to log in again.
If the user is successfully authenticated, the tenant user is provided access to the service provided at the server machine 30.
[0041] Upon successful completion of the validation procedure, the tenant user initiates a service provided by an authoring module 42, which allows the tenant user to author content, such as course materials. For example, authoring module 42 provides a suitable user-interface 28 with an authoring environment for building pages for lessons and/or courses. In one example, the authoring environment comprises a discreet editing environment that provides drag and drop and keyboard-based controls for developing content. In one example, the same developed content is suitable for both print and digital experiences. As such, print and digital components that can be used for both print and digital end-user experiences divided into non-interactive components typically equivalent to HTML elements or small groupings of HTML elements such as, but not limited to headers, paragraphs, and images.
[0042] As shown in Figure lc, the system export capabilities can be divided into two categories of experiences from a content perspective, such as print-related experiences 59a and digital-related experiences 59b.
[0043] Print-related experiences 59a are experiences that are inherently dependent on text as a construct for delivery of the educational experience. These experiences include Date Recue/Date Received 2023-11-17 printed materials which can support individuals who have limited access to devices, such as computers, tablets, or smart phones, and individuals using assistive technologies, such as screen readers.
[0044] Digital-related experiences 59b are experiences that are inherently dependent on the text print-related experiences but are also progressively enhanced digitally. These experiences can support individuals with access to devices, such as computers, tablets, or smart phones, who may or may not have consistent access to the internet. For example, in remote communities, individuals may not have access, or at least reliable access to the internet, however they may have access to devices that can present a digital experience.
These internet-limited devices can thereby present the digital experience in offline mode.
For individuals who have access to devices and reliable internet access several experiences can be supported, such as but not limited to, direct hosted experiences where the individual visits a website or downloads a mobile app and studies within that environment, traditional LMS experiences where the content is uploaded to the LMS and learners study the material within that environment, or live hosted LMS
experiences where the learners study the material within their LMS but the content is centrally distributed to them through a hosted experience on the server computer 30.
[0045] Figure 2 shows a tenant administration environment 60 and tenant environment infrastructure 61 of tenant user device 21.
[0046] Tenant administration environment 60 comprises a set of processor-executable instructions stored for a tenants administration SaaS application 62 with subsets of processor-executable instructions or services, such as: sign-in service 63a comprising an identity and access management (JAM) service for administrators, customers, and applications throughout the tenant administration system;
system monitoring service 63b for collecting and visualizing infrastructure performance and activities across all tenants; tenant registration service 63c comprising both account managed and self-serve functions for signing up a new tenant; tenant management service 63d comprising all tenant account related functions such as tenant infrastructure configuration settings, tenant infrastructure performance monitoring, and billing; and Date Recue/Date Received 2023-11-17 tenant provisioning service 63e for controlling the provisioning and reprovisioning tenant infrastructure.
[0047] Tenants shared microservices 64 are made available centrally across all tenant environments for shared tenant benefits, typically designed to learn from all tenant content and activities. For example, adaptive learning microservices 65 that are made available to all tenants using the shared data of all such tenants to train models, refine them, and process anonymized learned data for student learning progression indicators.
[0048] Tenants shared databases 32 comprise complementary data to the shared microservices across all tenant environments, such as learner knowledge graph 66a and anonymized learner event store data 66b; and tenant environments databases 67 of the tenants shared database 32 that stores all tenant account, configuration, and provisioning details used by the tenants administrations SaaS application 62 and tenant provisioning compute service 68 which works in conjunction with tenant provisioning service 63e and tenant environments databases 67 via API gateway 69.
[0049] Accordingly, tenant provisioning compute service 68 called via tenant provisioning service 63e when a tenant infrastructure is initially setup or in need of reconfiguration. The process accesses the tenant environments database 67 for configuration settings and context and manages a tenant environment provisioning service 70 responsible for the processes for building, managing, and provisioning each tenant environment through Infrastructure as Code (IaC). All infrastructure for hosting of applications or microservices within each tenant environment 61 can be independently of one another be composed of siloed (fully isolated infrastructure to that tenant), or pooled (shared infrastructure with software tenant isolation only), or a mix of the two.
[0050] Tenant environment 61 comprises a set of processor-executable instructions for a tenants administration SaaS application 62 with subsets of processor-executable instructions or services, such as: sign-in module 40; authoring module 42;
content management module 44; content distribution module 46; lifecycle management module 48; export management module 50; application management module 52; media Date Recue/Date Received 2023-11-17 management module 54; packaging and distribution module 56; and content API
module 58.
[0051]
Each tenant environment 61 is comprised of a combination of tenant applications 71, tenant microservices 72, and the tenants shared microservices 64 and the tenants shared databases 32. Tenant environment 61 comprises several services, such as, sign-in module 40 comprising an identity and access management (TAM) service for administrators, customers, and applications throughout the tenant system;
authoring module 42 for providing a lesson and page builder environment, a discreet editing environment that provides drag and drop and keyboard-based controls for developing content that supports print and digital experiences for the same set of content. Example features of the system include but are not limited to print and digital components that can be used for both print and digital student experiences divided into non-interactive components typically equivalent to HTML elements or small groupings of HTML
elements such as, but not limited to headers, paragraphs, and images, and an assessment engine which manages all components and question types related to quizzing, exams, and other assessments of student experiences. Digital only components that can only be used for digital student experiences in view of their interactivity and technology requirements are divided into interactive components typically equivalent to HTML elements or small groupings of HTML elements and associated interaction such as, but not limited to, accordions, tabs, carousels, dynamic tables and iFrames. These components often wrap, nest, or elevate other Print and Digital or Digital Only experiences and may have configuration options for tailoring the expected experiences; interactive learning objects (IL0s) which are interactive components that have been specifically designed around learning outcomes, and enable students to better visually understand and virtually interact with phenomena they learn in the course material, such as, but not limited to, periodic table of elements, environment simulations, and virtual labs; and preset experience library components which are standalone experiences with minimal configuration options such as, but not limited to standalone games which can be included in the curriculum largely "as-is". Other features of the system associated with the authoring module 42 comprise Date Recue/Date Received 2023-11-17 asset manager 54 which handles uploading, editing, metadata, and inclusion of media such as images, audio, and video into the authored experience; collaboration tools for visualizing and managing shared manipulation of content asynchronously or synchronously as the material is built and reviewed. Functionality includes, but is not limited to, visibility of simultaneous user activity, commenting, and review process sharing and management; adaptive learning content management including tagging functionality, knowledge graph use and extension, and content section management.
[0052]
Content Management module 44 is responsible for learning content development system for creating, editing, and managing the lessons and supplementary materials for each course package. The system loads the authoring system for each content piece that is being developed and enables the organization and grouping of the resulting materials into a course outline that instructs the packaging of course packages upon publication ("publishing") of a finalized course. Example features of the authoring system include but are not limited to: course builder, an overarching system for creating, editing, and managing courses within the system; course outlines, a system for organizing all learning content of a particular course or course instance in preparation for publication;
a content repository which stores content produced within the authoring system as headless content which is content that is described independently from its presentation layer save for reflections of components that were used. For example, but not limited to, a reference to the inclusion of a video as a video ID and platform reference, but no code for producing the appropriate player for that video experience; course packaging, a system for publishing a finalized course into the appropriate formats in preparation for distribution; catalogue management; a system for grouping a collection of one or more courses together that can be made available through content distribution module 46 to either other tenants or the public for various uses, such as but not limited to direct registration; version control, a system that tracks and manages all changes within the system, both at a authoring level and within other areas of the content management system; article builder, an overarching system for creating, editing, and managing all content produced by the system that is not a course, such as but not limited to knowledge Date Recue/Date Received 2023-11-17 base/help articles and blog posts; the overarching system uses the same authoring system for content management as the course builder, with learning components reduced or suppressed in favour of expanded journalist components.
[0053] Content Distribution module 46 comprises a system responsible for creating, editing, and managing the distribution of these materials to other tenants or public end points. Some features of the content distribution system 46 include, but are not limited to: reporting and management of how and where the courses are distributed via automated tracking of any "live hosted" experiences; reporting and management of how and where the courses are distributed via manually tracking for any non-"live hosted"
experiences;
and the systems for managing such distributions, such as but not limited to, sending new live updates or exporting new versions for non-"live hosted" experiences and manually updating distribution details.
[0054] Lifecycle management module 48 is a system and environment for the overall tenant SaaS application. Some features of the lifecycle management module 48 include, but are not limited to: a reporting engine for all data related reporting functions of the application, such as but not limited to, systems usage and performance, distribution tracking, learner progression, class progression; notification services for managing user and system notifications both within and outside of the application; an update manager for managing application updates automated or otherwise; federation and access control for managing users, permissions, and groups and for turning on and off features and settings from the system; and security and monitoring for managing security related concerns.
[0055] Export management module 50 is system responsible for transcompiling courses and articles to the tenant's format, styling, and output requirements.
Some examples of outputs include, but are not limited to: a PDF format for users with limited or no access to devices who are looking for a printable copy of a course.; an accessible-first HTML version of a course for users using assistive technology such as a screen reader; an offline version of the course with full digital interactivity enabled for users with limited or no access to the internet but who do have access to a digital device such Date Recue/Date Received 2023-11-17 as a computer or smartphone; a traditional LMS package for administrators looking to upload a static or traditional SCORM (or similar format) package to a LMS for students to study from; a remotely managed LMS package for administrators looking to distribute courses to LMSes that can be updated directly and in real-time from within the platform without the need to upload a new version; and directly hosted standalone experiences, whether public or behind a managed login, which are not dependent on a third party LMS.
[0056] Application management module 52 is responsible for the tenant's account related functions such as but not limited to, billing, knowledge base, technical support, account management, third party integrations, theming, licensing, and shared service subscriptions, and permissions.
[0057] Media management module 54 comprises the microservices behind the system's asset manager for handling uploading, editing, and metadata of media.
Key features of the media management module 54 include, but are not limited to:
asset variants from such actions as cropping, colour manipulation etc. that are saved independently from but in direct relationship to the source material; compression and optimization services for reducing and streamlining file sizes and metadata of assets; and services for managing assets between local and remote file systems such as cloud storage providers.
[0058] Packaging and distribution module 56 comprises microservices responsible for supporting the course packaging module 44 and content distribution 46 services of the system, as will be described in more detail with reference to Figures 3 and 5.
[0059] Content API module 58 comprises microservices responsible for transferring data and meaning of the content between the content store 73 of databases and the requesting services.
[0060] Content store 73 comprises databases responsible for the digital headless content produced by the authoring system 42 and accessed by the content API
module 58 by various systems throughout the tenant application 71.
[0061] Learning record store 74 comprises a data store system that serves as the repository for learning records collected by the tenant between various connected systems and connected to an individual learner of the tenant. The learning record store 74 data is Date Recue/Date Received 2023-11-17 anonymized when accessing tenant shared microservices 64 such as adaptive learning microservices.
[0062] Figure 3 shows a tenant content packaging infrastructure 80 for publishing content suitable to a plurality of content end-users or consumers, the tenant content packaging infrastructure 80 comprises a set of processor-executable instructions for a tenants administration SaaS application 62 with subsets of processor-executable instructions or services associated with content management module 48 for carrying out method steps 102-122 of the flowchart 80 of Figure 4. The flowchart 80 comprises example steps for a process for publishing content suitable to a plurality of content end-users or consumers. The process will now be described with reference to Figures 3 and 4.
[0063] In step 102, a tenant user logs into server computer 30 via tenant user device 21 and uses the content management system 44 within the tenant SaaS
application 62 running on the client device 21 to develop a course package in preparation for publication, following an authentication process as described previously.
[0064] Next, a decision is made as to whether the developed course package is ready for publication, step 104. When the developed course package is deemed not ready for publication, then the process loops back to step 102 for further edits, otherwise the course package is assigned a version identifier and details of the course package are stored in memory device 23, and a publishing request is initiated, and a tenant packaging compute service (TPC) is called to manage the request (step 106).
[0065] In step 108, the TPC requests details on the package version, including one or more packaging instructions indicating the format, style, and output requirements for the desired learner experience.
[0066] In step 110, the TPC accesses a content API service and retrieves all content associated with the course package as described by the course outline system, via an API
gateway.
[0067] Next, the TPC accesses the settings from the tenant application's export Management for system level instructions for the format, styling, and output requirements, via an API gateway (step 112).

Date Recue/Date Received 2023-11-17
[0068] In step 114, for each requested package export the TPC calls the tenant transcompiler compute service (TTC) to transcompile the content received from the Content API into the appropriate packages. As such, a transcompiler generates the packages in a format as dictated by the output requirements suitable the desired learner experience. For example, the output requirements may be different for printed and non-printed formats, or device specifications and capabilities.
[0069] Next, as the TTC processes each package it parses through the content and leverages the media management microservices to pull down the appropriate version of each media asset (step 116).
[0070] In step 118, the resulting transcompiled package is saved to a database store in its rendered form, and the details of the package are also saved to the database store.
[0071] The files are then uploaded as rendered files to a hosted endpoint for further action by the end-users of the system (step 120).
[0072] On completion of all packaging activities the TPC sends a notification of completion with details that were stored in the data store to the content management system 44 of the tenants SaaS application 62 enabling further action by the tenant user (step 122).
[0073] Figure 5 shows a tenant content distribution infrastructure and workflow 130 comprising content distribution module 46 and content management module 44 stored in memory device 23 of tenant client device 21 running a tenant SaaS application 62. The content distribution module 46 and the content management module 44 carry out example steps 202-216 for publishing, transcompiling, packaging and distributing the content in accordance with a desired learning experience. In more detail, example steps will now be described with reference to Figure 6, showing a flowchart 200 with the example steps 202-216.
[0074] Now looking at Figure 6, there is shown a flowchart 200 illustrating an example workflow for layering experiences to generate enhanced content from the created content described above, and subsequent distribution thereof.
Date Recue/Date Received 2023-11-17
[0075] In step 202, a tenant user accesses the content distribution system 46 within the tenants administration SaaS application 62 to initiate a process to fully distribute published courses to end user experiences.
[0076] In step 204, the tenant user with the appropriate user permissions selects from one or more learner experience types, and initiates a distribution request.
The learner experience types comprise a combination of the expected learner environments and the format or method of published files needed, to bundle and execute on a content distribution of a published course. Each content distribution action undertaken is distinct and a published course can have multiple content distributions attached to it.
[0077] In step 206, when a distribution request is made, a tenant distribution compute service (TDC) is called to manage the request. The 1DC processes each learner experience type selected in step 204 and bundles each of them into a single distribution activity record.
[0078] In step 208, to determine what is required to process the distribution the TDC
looks up the learner environment, including but not limited to print, screen readers, learning management systems, mobile apps, and directly hosted web.
[0079] In step 210, the TDC then narrows down the format, method and technological requirements to fulfill an experience type selected in step 204. Examples include, but are not limited to: Print for PDF; Print for Braille; Screen Readers via media-less/text only HTML 5; LMSes via traditional learning technology interoperability standard packages such as SCORM/AICC/xAPI which contain full course materials (the industry standard method); LMSes via "remote lms packages" using a technique to use traditional learning technology interoperability standard packages such as SCORM/AICC/xAPI as a vehicle to distribute iFramed and learning tools interoperability (LTI) enabled content which remotely reference full course materials; LMSes via "remotely managed" content where the system builds and updates the iFramed and LTI enabled content dynamically using the LMS's APIs while maintaining ongoing and active management of the content centrally; and mobile apps or website experiences without a LMS via direct hosting of APIs, HTML5 and similar technologies.

Date Recue/Date Received 2023-11-17
[0080] In step 212, the TDC then determines the distribution process required for each of experience type and either makes available the appropriate package for manual distribution or automatically manages the connection and distribution of the materials.
Examples include, but are not limited to: Print and Screen Reader environments which require a download and either printing or distributing of the digital files offline to learners;
LMS packages which require a download of the package and manual upload into the respective LMS; LMS remotely managed content that utilize API connectivity details stored in the tenant environments database to build and distribute the course automatically in real-time; and directly hosted content that is also built and distributed through real-time automatic means.
[0081] In step 214, the [DC then records the details of the distribution for management purposes, including all relevant information on the connection and what was built out without user intervention. For manual distributions the system requires input from the tenant user distributing the experience detailing the scope of the distribution for "offline use" tracking details. All digital experiences that are centrally hosted are also setup at this stage to track ongoing learner event activity. This includes both automated distribution processes and the "Remote LMS Package" option which, while requiring an initial manual upload to the LMS, can track use once setup on the LMS that is hosting the package.
[0082] In step 216, once the content has been distributed, the content is managed via the content management application via either real-time content management of distributed courses via API updates or by downloading a new version and manually re-distributing the course materials to the destinations recorded in the distribution details step.
[0083] The system and the methods described herein are configured to build e-learning experiences that are accessible-first and reflect inclusive-design with minimal additional effort. This is accomplished by biasing the editing experience towards print and accessible-first considerations accompanied by component considerations that are designed for the progressive enhancement of content experiences. Content that is Date Recue/Date Received 2023-11-17 produced in this editing experience is saved in a "headless" format, a format that decouples the presentation of the content from its structure, which enables a method of centralized content management that supports numerous exported experiences.
When an author chooses to publish and package their e-learning experience this "headless" content is transcompiled into various formats selected by the author. During transcompilation key aspects of presentation such as the theming/styling of the content and selecting the appropriate technologies for inclusion such as video streaming providers are applied to the content.
[0084] Looking at Figure 7, there is shown a workflow 330 comprising example steps for a tenant authoring experience. One or more users of the origin tenant, also known as the publisher, associated with one or more of the client devices 21, upon successful authentication and verification as described above, accesses services and applications on a server machine 30 over the network 31. The tenant user initiates a service provided by the content management module 44, which allows the tenant user to create, edit and manage lessons and supplementary materials for each course package. In an example, in step 302 the publisher launches a course builder application, a tenant SaaS
application 62 running on the client device 21, and the content management module 44 provides a suitable user-interface with an authoring environment for building pages for lessons and/or courses.
[0085] In step 304, the publisher chooses to create a new course in the course builder application.
[0086] In step 306, the publisher populates a course outline with all the pertinent information about the course, including but not limited to information such as course title(s), course description(s), course code(s), cover art/thumbnails. The publisher may also build out the course outline for the actual course materials, including but not limited to, units, sub-units, lessons, supplementary materials, and information pages.
Each course material may comprise a title, optional description, and a link to one or more content pages that can be edited by a content page builder associated with the authoring module 42.

Date Recue/Date Received 2023-11-17
[0087] In step 308, for each course material within the course outline, one or more users may build out the content with the authoring module 42.
[0088] In step 310, the course materials and the corresponding course outline are populated, reviewed, and then a publisher with appropriate credentials or system privileges initiates a request to publish the course. As described above, with reference to Figure 2, the publish request calls the content packaging services, such as tenant packaging compute service (TPC) which sets the state of the edition and version of the course (a unique identifier e.g. version number of the course) to "read only"
so that no further editing can be done to the version. Any further work would require creation of a new version, which would allow further editing (steps 306 and 308) and eventual republication as a new version. The TPC requests details of the package version, including one or more packaging instructions indicating the format, style, and output requirements, and retrieves all content associated with the course package, as described by the course outline system. The TPC also accesses the settings from the tenant application's export management module 50 for system level instructions for the format, styling, and output requirements.
[0089] In step 312, the published course is included in a catalogue which may contain other courses as well.
[0090] In step 314, the catalogue can then be shared with the appropriate subscriber(s) or receiving tenant(s) for review. The sharing action makes the catalogue available to the applicable subscriber(s) for viewing desired courses, and importing desired courses, and sends the appropriate notification of the catalogue's availability. The publisher may create different catalogues and searching considerations across multiple subscribers simultaneously from the same version of a course.
[0091] Next, a sub-workflow associated with the receiving tenant ensues. In step 316, one or more users of that subscriber can log into the system to review the courses included within the shared catalogue.
[0092] In step 318, one or more users of that subscriber can then choose to import a variant of the course into their own system as a draft. This variant maintains a relationship Date Recue/Date Received 2023-11-17 with the publisher copy edition and version but creates a unique copy of the course that can be edited by one or more of the subscriber's users.
[0093] In step 320, optionally a course outline variant may have changes made that override the supplied publisher information.
[0094] In step 322, optionally any course materials can be edited.
For example, the changes that are made to the course materials are isolated to the section being edited within each specific course material (as described in further detail in Figure 9) but otherwise retain an active relationship with the source course material unedited sections such that updates from those courses can be passed down to a subscriber's course variant without impacting the subscriber's updates.
[0095] In step 324, once any edits have been made to the imported course an authorized user can publish their variant of the course. This action performs the same function as described in step 310.
[0096] In step 326, once a tenant has a published course in their system, the tenant determines whether the course is ready for distribution, when the course is ready for distribution then the course is distributed in accordance with the desired learner experiences using the content distribution application (step 328), as described in Figures 4 and 5, and learners and educators use the course materials as desired (step 330).
Otherwise, when the course is not ready for distribution then the course is shared with a sub-user group (an internal user group within the subscriber's tenancy) using similar steps of the publisher to subscriber catalogue function (i.e. steps 312 and 314) with the variation of selecting a sub-user group rather than a receiving tenant (subscriber).
[0097] In step 332, once the catalogue is shared with a subscriber's sub-user group, one or more users of that sub-user group can log into the system to review the courses included within the catalogue.
[0098] In step 334, one or more users of that sub-user group can then choose to import a variant of the course into their system as a draft. This variant maintains a relationship with the subscriber's published and shared version but creates a unique copy of the course that can be edited by one or more of the sub-user group users.
Date Recue/Date Received 2023-11-17
[0099]
In step 336, optionally a course outline variant can have changes made that override the supplied subscriber's published course information.
[00100] In step 338, optionally any course materials can be edited in a similar manner as described in step 322, with inheritance coming from the immediately preceding shared course variant as opposed to the publisher course.
[00101] In step 340, once any edits have been made to the imported course an authorized user can publish their variant of the course. This action performs the same function as described in step 324.
[00102] Next in step 326, once the receiving tenant user group has a published course in their system, the receiving tenant user group determines whether the course is ready for distribution, and when the course is ready for distribution then the course is distributed in accordance with the desired learner experiences using the content distribution application (step 328), as described in Figures 4 and 5, and learners and educators use the course materials as desired (step 330). Otherwise, when the course is not ready for distribution then the course is shared again with a sub-user group (an internal user group within the subscriber's tenancy) using similar steps of the publisher to subscriber catalogue function (i.e. steps 312 and 314) with the variation of selecting a sub-user group rather than a receiving tenant (subscriber).
[00103] Now turning to Figure 8, there is described a course inheritance workflow 400.
Course inheritance allows users who have imported a course from another tenant or parent user group to have sections of the course material that have not been edited by them updatable automatically in a non-destructive and modular fashion. The workflow is such that the source course is comprised of course materials, which can include but are not limited to lessons (1.1, 1.2 ¨ x. ..N), supplementary materials such as teacher guides, and information pages. In step 401, each course material page is divided up into numerous sections (e.g., A...Z) which represent the unique editable blocks of content that the course inheritance is structured around. Once a course is published, each section in the course materials is uniquely identified and shared to imported courses accordingly.

Date Recue/Date Received 2023-11-17
[00104] In step 404, when a subscriber has imported a course, all sections initially link directly to the publisher's section IDs, such that if the publisher updates that section, subscribers can inherit the update. In this example, Section C has been edited (denoted in grey) and a new ID "Section F" has been assigned to indicate the removal of a Section C inclusion and addition of a Section F in its place. If the publisher updates their original version of the course all sections across all course materials can be updated except for Section C, which no longer exists for the subscriber and the new Section F
will not be touched by the update.
[00105] Step 406 shows where a variant of a course (the one created by the subscriber in Step 404) is inherited by the sharing party. In this case the subscriber shared their published version of the course to one of their sub-user groups, who did not change anything in the course. Therefore, the sub-user groups inherit the same experience of only Section C being removed and Section F added from their parent.
[00106] In step 408, if the user group in Step 3 shared the course to a sub-user group and that sub-user group added a new "Section G" to Lesson 1.1, then all the course materials would be updatable from the origin tenant (publisher) except for Section C
which was removed and Section F which was added by the subscriber and their own new Section G would be respected.
[00107] In summary, as shown in Figure 9, the typical experience for developing, publishing, and distributing a course using the system follows an example workflow 500.
[00108] In step 502, each lesson within this course outline may then be edited within the content editor (also known as the authoring canvas) of the authoring application. All content experience management for that lesson may be edited within this view and saved to a headless format.
[00109] In step 504, a publisher uses a course builder application in the content management application. The publisher creates the initial details of the course such as the title, course codes, thumbnails, etc. as well as developing the course outlines which comprise of lessons organized into structural elements such as units and sub-units.

Date Recue/Date Received 2023-11-17
[00110] In step 506, the publisher may publish the course after reviewing, amending, and approving the course, and thereby make the published course available for distribution. It should be noted that publishing a course represents a state of readiness for distribution only, analogous to printing a textbook, but not yet shipping it.
In step 508, once a course has been published it is available for various end points including in a catalogue for distribution to other tenants, direct distribution to end points configured within the publisher's tenant system, or export for indirect consumption. In one example, the publisher chooses to deliver the content via a live hosted LMS (a configured end point), the publisher selects the distribution end point(s) they desire to distribute the course to and submit a distribution request. The distribution request call is processed by the content packaging and Distribution Services and transcompile the headless formatted content into the desired publishing formats including applying styling (theming), and then leverage the connection details configured in the system to connect to the destination and build the live hosted course.
[00111] Once live hosted, the publisher can use the lifecycle management application to monitor course usage, learner usage, and manage future distributions and communications with the client, step 510.
[00112] In step 512, other services such as billing, knowledge base, technical support, account management, third party integrations, theming, licensing, and shared service subscriptions, and permissions, among others, are configured within the system.
[00113] Figure 10 illustrates a block diagram of an example machine 600, such as client device 21 or server computer 30, upon which any one or more of the techniques (e.g., methodologies) discussed herein may be performed. Machine 600 (e.g., computer system) may include a hardware processor 601 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof), a main memory 602 and a static memory 606, connected via an interlink 603 (e.g., link or bus), as some or all of these components may constitute hardware for systems or related implementations discussed above.

Date Recue/Date Received 2023-11-17
[00114] Generally, the hardware processor 601 may, for example, include at least one of a Central Processing Unit (CPU), a Reduced Instruction Set Computing (RISC) Processor, a Complex Instruction Set Computing (CISC) Processor, a Graphics Processing Unit (GPU), a Digital Signal Processor (DSP), a Tensor Processing Unit (TPU), a Neural Processing Unit (NPU), a Vision Processing Unit (VPU), a Machine Learning Accelerator, an Artificial Intelligence Accelerator, an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a Radio-Frequency Integrated Circuit (RFIC), a Neuromorphic Processor, a Quantum Processor, or any combination thereof. A processor circuit may further be a multi-core processor having two or more independent processors (sometimes referred to as "cores") that may execute instructions contemporaneously. Multi-core processors contain multiple computational cores on a single integrated circuit die, each of which can independently execute program instructions in parallel. Parallel processing on multi-core processors may be implemented via architectures like superscalar, VLIW, vector processing, or SIMD that allow each core to run separate instruction streams concurrently. A processor circuit may be emulated in software, running on a physical processor, as a virtual processor or virtual circuit. The virtual processor may behave like an independent processor but is implemented in software rather than hardware.
[00115] Specific examples of main memory 602 include Random Access Memory (RAM), and semiconductor memory devices, which may include storage locations in semiconductors such as registers. Specific examples of static memory 606 include non-volatile memory, such as semiconductor memory devices (e.g., Electrically Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM)) and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; RAM; or optical media such as CD-ROM and DVD-ROM disks.
[00116] The machine 21, 30 may further include a display device 610, an input device 612 (e.g., a keyboard), and a user interface (UI) navigation device 614 (e.g., a mouse). In an example, the display device 610, input device 612, and UI navigation device 614 may Date Recue/Date Received 2023-11-17 be a touch-screen display. The machine 21, 30 may include a mass storage device 616 (e.g., drive unit), a signal generation device 618 (e.g., a speaker), a network interface device 620. The machine 21, 30 may include an output controller 723, such as a serial (e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR), near field communication (NFC), etc.) connection to communicate or control one or more peripheral devices (e.g., a printer, card reader, etc.).
[00117] The mass storage device 616 may comprise a machine-readable medium 622 on which is stored one or more sets of data structures or instructions 604 (e.g., software) embodying or utilized by any one or more of the techniques or functions described herein.
The instructions 604 may also reside, completely or at least partially, within the main memory 602, within static memory 606, or within the hardware processor 601 during execution thereof by the machine 21, 30. In an example, one or any combination of the hardware processor 601, the main memory 602, the static memory 606, or the mass storage device 616 comprises a machine readable medium.
[00118] Specific examples of machine-readable media include, one or more of non-volatile memory, such as semiconductor memory devices (e.g., EPROM or EEPROM) and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; RAM; or optical media such as CD-ROM and DVD-ROM

disks. While the machine-readable medium is illustrated as a single medium, the term "machine readable medium" may include a single medium or multiple media (e.g., a centralized or distributed database, or associated caches and servers) configured to store the one or more instructions 604.
[00119] The term "machine readable medium" includes, for example, any medium that is capable of storing, encoding, or carrying instructions for execution by the machine 21, 30 and that cause the machine 21, 30 to perform any one or more of the techniques of the present disclosure or causes another apparatus or system to perform any one or more of the techniques, or that is capable of storing, encoding or carrying data structures used by or associated with such instructions. Non-limiting machine-readable medium examples include solid-state memories, optical media, or magnetic media. Specific examples of Date Recue/Date Received 2023-11-17 machine-readable media include: non-volatile memory, such as semiconductor memory devices (e.g., Electrically Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM)) and flash memory devices;
magnetic disks, such as internal hard disks and removable disks; magneto-optical disks;
Random Access Memory (RAM); or optical media such as CD-ROM and DVD-ROM
disks. In some examples, machine readable media includes non-transitory machine-readable media. In some examples, machine readable media includes machine readable media that is not a transitory propagating signal.
[00120] The instructions 604 may be transmitted or received, for example, over a communications network 605 using a transmission medium via the network interface device 620 utilizing any one of a number of transfer protocols (e.g., frame relay, internet protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.). Example communication networks include a local area network (LAN), a wide area network (WAN), a packet data network (e.g., the Internet), mobile telephone networks (e.g., cellular networks), Plain Old Telephone (POTS) networks, and wireless data networks (e.g., Institute of Electrical and Electronics Engineers (IEEE) 802.11 family of standards known as Wi-Fi0), IEEE 802.15.4 family of standards, a Long Term Evolution (LTE) 4G or 5G family of standards, a Universal Mobile Telecommunications System (UMTS) family of standards, peer-to-peer (P2P) networks, satellite communication networks, among others.
[00121] In an example, the network interface device 620 includes one or more physical jacks (e.g., Ethernet, coaxial, or other interconnection) or one or more antennas to access the communications network 605. In an example, the network interface device includes one or more antennas to wirelessly communicate using at least one of single-input multiple-output (SIMO), multiple-input multiple-output (MIMO), or multiple-input single-output (MISO) techniques. In some examples, the network interface device 620 wirelessly communicates using Multiple User MIMO techniques. The term "transmission medium" shall be taken to include any intangible medium that is capable of storing, encoding or carrying instructions for execution by the machine 600, and includes digital Date Recue/Date Received 2023-11-17 or analog communications signals or other intangible medium to facilitate communication of such software.
[00122] Examples, as described herein, can include, or can operate on, logic or a number of components, modules, or mechanisms (all referred to hereinafter as "modules"). Modules are tangible entities (e.g., hardware) capable of performing specified operations and is configured or arranged in a certain manner. In an example, circuits are arranged (e.g., internally or with respect to external entities such as other circuits) in a specified manner as a module. In an example, the whole or part of one or more computer systems (e.g., a standalone, client or server computer system) or one or more hardware processors are configured by firmware or software (e.g., instructions, an application portion, or an application) as a module that operates to perform specified operations. In an example, the software can reside on a non-transitory computer readable storage medium or other machine-readable medium. In an example, the software, when executed by the underlying hardware of the module, causes the hardware to perform the specified operations.
[00123] Accordingly, the term "module" is understood to encompass a tangible entity, be that an entity that is physically constructed, specifically configured (e.g., hardwired), or temporarily (e.g., transitorily) configured (e.g., programmed) to operate in a specified manner or to perform part or all of any operation described herein.
Considering examples in which modules are temporarily configured, each of the modules need not be instantiated at any one moment in time. For example, where the modules comprise a general-purpose hardware processor configured using software, the general-purpose hardware processor is configured as respective different modules at different times.
Software can accordingly configure a hardware processor, for example, to constitute a particular module at one instance of time and to constitute a different module at a different instance of time.
[00124] Implementations of the subject matter and the functional operations described in this specification can be implemented in digital electronic circuitry, in tangibly embodied computer software or firmware, in computer hardware, including the structures Date Recue/Date Received 2023-11-17 disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Implementations of the subject matter described in this specification can be implemented as one or more computer programs, i.e., one or more modules of computer program instructions encoded on a tangible, non-transitory computer-storage medium for execution by, or to control the operation of, data processing apparatus.
Alternatively or in addition, the program instructions can be encoded on an artificially generated propagated signal, e.g., a machine-generated electrical, optical, or electromagnetic signal that is generated to encode information for transmission to suitable receiver apparatus for execution by a data processing apparatus. The computer-storage medium can be a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory device, or a combination of one or more of them.
[00125] A computer program, which may also be referred to or described as a program, software, a software application, a module, a software module, a script, or code can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data, e.g., one or more scripts stored in a markup language document, in a single file dedicated to the program in question, or in multiple coordinated files, e.g., files that store one or more modules, sub-programs, or portions of code. A
computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network. While portions of the programs illustrated in the various figures are shown as individual modules that implement the various features and functionality through various objects, methods, or other processes, the programs may instead include a number of sub-modules, third-party services, components, libraries, and such, as appropriate. Conversely, the features and functionality of various components can be combined into single components, as appropriate.

Date Recue/Date Received 2023-11-17
[00126] The processes and logic flows described in this specification can be performed by one or more programmable computers executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, e.g., a CPU, a GPU, an FPGA, or an ASIC.
[00127] The term "graphical user interface," or "GUI," may be used in the singular or the plural to describe one or more graphical user interfaces and each of the displays of a particular graphical user interface. Therefore, a GUI may represent any graphical user interface, including but not limited to, a web browser, a touch screen, or a command line interface (CLI) that processes information and efficiently presents the information results to the user. In general, a GUI may include a plurality of user interface (UT) elements, some or all associated with a web browser, such as interactive fields, pull-down lists, and buttons operable by the user. These and other UI elements may be related to or represent the functions of the web browser.
[00128] Implementations of the subject matter described in this specification can be implemented in a computing system that includes a back-end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front-end component, e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the subject matter described in this specification, or any combination of one or more such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of wireline and/or wireless digital data communication, e.g., a communications network 605.
[00129] Various Notes
[00130] Each of the non-limiting aspects in this document can stand on its own or can be combined in various permutations or combinations with one or more of the other aspects or other subject matter described in this document.
[00131] The above detailed description includes references to the accompanying drawings, which form a part of the detailed description. The drawings show, by way of Date Recue/Date Received 2023-11-17 illustration, specific embodiments in which the invention can be practiced.
These embodiments are also referred to generally as "examples." Such examples can include elements in addition to those shown or described. However, the present inventors also contemplate examples in which only those elements shown or described are provided.
Moreover, the present inventors also contemplate examples using any combination or permutation of those elements shown or described (or one or more aspects thereof), either with respect to a particular example (or one or more aspects thereof), or with respect to other examples (or one or more aspects thereof) shown or described herein.
[00132] In this document, the terms "a" or "an" are used, as is common in patent documents, to include one or more than one, independent of any other instances or usages of "at least one" or "one or more." In this document, the term "or" is used to refer to a nonexclusive or, such that "A or B" includes "A but not B," "B but not A," and "A and B," unless otherwise indicated. In this document, the terms "including" and "in which"
are used as the plain-English equivalents of the respective terms "comprising"
and "wherein." Also, in the following claims, the terms "including" and "comprising" are open-ended, that is, a system, device, article, composition, formulation, or process that includes elements in addition to those listed after such a term in a claim are still deemed to fall within the scope of that claim. Moreover, in the following claims, the terms "first,"
"second," and "third," etc., are used merely as labels, and are not intended to impose numerical requirements on their objects.
[00133] Method examples described herein can be machine or computer-implemented at least in part. Some examples can include a computer-readable medium or machine-readable medium encoded with instructions operable to configure an electronic device to perform methods as described in the above examples. An implementation of such methods can include code, such as microcode, assembly language code, a higher-level language code, or the like. Such code can include computer readable instructions for performing various methods. The code may form portions of computer program products. Such instructions can be read and executed by one or more processors to enable performance of operations comprising a method, for example. The instructions are in any Date Recue/Date Received 2023-11-17 suitable form, such as but not limited to source code, compiled code, interpreted code, executable code, static code, dynamic code, and the like.
[00134] Further, in an example, the code can be tangibly stored on one or more volatile, non-transitory, or non-volatile tangible computer-readable media, such as during execution or at other times. Examples of these tangible computer-readable media can include, but are not limited to, hard disks, removable magnetic disks, removable optical disks (e.g., compact disks and digital video disks), magnetic cassettes, memory cards or sticks, random access memories (RAMs), read only memories (ROMs), and the like.
[00135]
The above description is intended to be illustrative, and not restrictive. For example, the above-described examples (or one or more aspects thereof) may be used in combination with each other. Other embodiments can be used, such as by one of ordinary skill in the art upon reviewing the above description. The Abstract is provided to allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. Also, in the above Detailed Description, various features may be grouped together to streamline the disclosure. This should not be interpreted as intending that an unclaimed disclosed feature is essential to any claim. Rather, inventive subject matter may lie in less than all features of a particular disclosed embodiment. Thus, the following claims are hereby incorporated into the Detailed Description as examples or embodiments, with each claim standing on its own as a separate embodiment, and it is contemplated that such embodiments can be combined with each other in various combinations or permutations. The scope of the invention should be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.

Date Recue/Date Received 2023-11-17

Claims (21)

  1. CLAIMS:
    I. A system for distributing at least one published course content, the system comprising:
    at least one memory device configured for storing instructions; and at least one processor coupled to the at least one memory device and configured to execute the instructions to at least:
    initiate a process to distribute the at least one published course content;
    receive a selection of at least one learner experience type for the at least one published course content;
    determine a learner environment associated with the at least one learner experience type;
    for each at least one learner experience type assign at least one predefined format of the at least one published course content for distribution;
    determine a distribution process required for each of the at least one learner experience type;
    assemble the at least one published course content in at least one distribution package, wherein the at least one distribution package comprises the at least one published course content with the at least one predefined format; and distribute the at least one distribution package via at least one distribution process.
  2. 2. The system of claim 1, wherein the at least one learner experience type is suitable for a learner environment comprising at least one of print, screen readers, learning management systems, mobile apps, and directly hosted web.

    Date Recue/Date Received 2023-11-17
  3. 3. The system of claim 2, wherein the learner environment comprises at least one of print, screen readers, learning management systems, mobile apps, and directly hosted web.
  4. 4. The system of claim 3, wherein the at least one learner experience type comprises at least one of Print for PDF; Print for Braille; Screen Readers via media-less/text only HTML 5; LMSes via traditional learning technology interoperability standard packages such as SCORM/AICC/xAPI which contain full course materials (the industry standard method); LMSes via "remote lms packages" using a technique to use traditional learning technology interoperability standard packages such as SCORM/AICC/xAPI as a vehicle to distribute iFramed and LTI enabled content which remotely reference full course materials; LMSes via "remotely managed" content where the system builds and updates the iFramed and LTI enabled content dynamically using the LMS's APIs while maintaining ongoing and active management of the content centrally; and mobile apps or website experiences without a LMS via direct hosting of APIs, HTML5 and similar technologies.
  5. 5. The system of claim 1, wherein the at least one distribution process is a manual distribution.
  6. 6. The system of claim 3, wherein the at least one distribution process comprises downloading the at least one distribution package from a server computer.
  7. 7. The system of claim 6, further comprising instructions for automatically managing a communication connection between the server computer and a recipient device and for automatically managing the distribution of the at least one distribution package.

    Date Recue/Date Received 2023-11-17
  8. 8. The system of claim 7, wherein when the learner environment is at least one of print and screen readers, the at least one distribution package is downloaded, printed or distributed offline to the learners.
  9. 9. The system of claim 7, wherein when the learner environment is a learning management system the at least one distribution package is downloaded and manually uploaded into the respective LMS.
  10. 10. The system of claim 7, wherein when the learner environment is a learning management system LMS remotely managed content that utilize API connectivity details stored in the tenant environments database to build and distribute the course automatically in real-time.
  11. 11. The system of claim 7, wherein when the learner environment is directly hosted web, the hosted content is built and distributed through real-time automatic means.
  12. 12. The system of claim 9, wherein details of the distribution are recorded for management purposes.
  13. 13. The system of claim 11, wherein learner event activity is recorded for the learner environments comprising learning management systems, mobile apps, and directly hosted web.
  14. 14. The system of claim 1, wherein once the content has been distributed the content is managed via a content management application via either real-time content management of distributed courses via API updates or by downloading a new version and manually re-distributing the course materials to the destinations recorded in the distribution step.

    Date Recue/Date Received 2023-11-17
  15. 15. The system of claim 1, wherein the instructions comprise at least one set of instructions for content management comprising creating, editing, and managing the lessons and supplementary materials for each course package.
  16. 16. The system of claim 1, wherein the instructions comprise at least one set of instructions for content distribution for managing the distribution of materials to the first user device and the at least second user device.
  17. 17. The system of claim 1, wherein the instructions comprise at least one set of instructions for content lifecycle management comprising a reporting engine for data related reporting functions of the application, comprising at least one of systems usage and performance, distribution tracking, learner progression, class progression;
    notification services for managing user and system notifications both within and outside of the application; managing application updates automated or otherwise;
    managing users, pennissions, and groups and for turning on and off features and settings from the system; and managing security.
  18. 18. The system of claim 1, wherein the instructions comprise at least one set of instructions for application management comprising managing tenant account-related functions comprising at least one of billing, knowledge base, technical support, account management, third party integrations, theming, licensing, and shared service subscriptions, and permissions.
  19. 19. The system of claim 1, wherein the instructions comprise at least one set of instructions for course packaging and distribution of the content materials.
  20. 20. A method for distributing at least one published course content, with a processor coupled to at least one memory device storing instructions, wherein the processor executes the instructions to at least perform the operations of:
    Date Recue/Date Received 2023-11-17 initiating a process to distribute the at least one published course content;
    receiving a selection of at least one learner experience type for the at least one published course content;
    determining a learner environment associated with the at least one learner experience type;
    for each at least one learner experience type assigning at least one predefined format of the at least one published course content for distribution;
    determining a distribution process required for each of the at least one learner experience type;
    assembling the at least one published course content in at least one distribution package, wherein the at least one distribution package comprises the at least one published course content with the at least one predefined format; and distributing the at least one distribution package via at least one distribution process.
  21. 21. A computer readable medium storing instructions executable by a processor to carry out the operations comprising:
    initiating a process to distribute the at least one published course content;
    receiving a selection of at least one learner experience type for the at least one published course content;
    determining a learner environment associated with the at least one learner experience type;
    for each at least one learner experience type assigning at least one predefined format of the at least one published course content for distribution;
    determining a distribution process required for each of the at least one learner experience type;
    assembling the at least one published course content in at least one distribution package, wherein the at least one distribution package comprises Date Recue/Date Received 2023-11-17 the at least one published course content with the at least one predefined fomiat; and distributing the at least one distribution package via at least one di stributi on process.

    Date Recue/Date Received 2023-11-17
CA3220443A 2023-11-17 2023-11-17 Publishing and distribution system and method for e-learning content across multiple learning environments Pending CA3220443A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA3220443A CA3220443A1 (en) 2023-11-17 2023-11-17 Publishing and distribution system and method for e-learning content across multiple learning environments

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA3220443A CA3220443A1 (en) 2023-11-17 2023-11-17 Publishing and distribution system and method for e-learning content across multiple learning environments

Publications (1)

Publication Number Publication Date
CA3220443A1 true CA3220443A1 (en) 2024-02-06

Family

ID=89834553

Family Applications (1)

Application Number Title Priority Date Filing Date
CA3220443A Pending CA3220443A1 (en) 2023-11-17 2023-11-17 Publishing and distribution system and method for e-learning content across multiple learning environments

Country Status (1)

Country Link
CA (1) CA3220443A1 (en)

Similar Documents

Publication Publication Date Title
Velev Challenges and opportunities of cloud-based mobile learning
KR20210038971A (en) Curriculum package development method and device, system, device and storage medium
Zhou et al. A collaborative and open solution for large‐scale online learning
Halimi et al. Standardization layers for remote laboratories as services and open educational resources
US11042482B2 (en) Content encapsulation structure, and content provision method and system using same
Oneto et al. Making today’s learning management systems adaptive
US20190385472A1 (en) Assessment item generation and scoring
CA3220443A1 (en) Publishing and distribution system and method for e-learning content across multiple learning environments
CA3220415A1 (en) Accessible e-learning systems and methods
CA3220419A1 (en) System and method for centrally managing adaptive learning across multiple distributed e-learning experiences
Partheeban et al. e-Learning management system using web services
KR102326261B1 (en) Apparatus for Micro Learning and Driving Method Thereof
Westera et al. Achieving e-learning with IMS Learning Design-Workflow implications at the Open University of the Netherlands
Cappellato et al. The PREFORMA project: federating memory institutions for better compliance of preservation formats
Vossen et al. Maintenance and Exchange of Learning Objects in a Web Services Based e‑Learning System
Choi et al. Is Ansible Good for Network Automation?
Kessler et al. Creating, consuming, remixing, and sharing accessible Open Educational Resources (OERs) using an authoring tool
Jobe The future of e-learning: interaction, collaboration and individualization with HTML5
Yang et al. Study on the design and optimization of learning environment based on artificial intelligence and virtual reality technology
Noesgaard Bridging eLearning and social networks.
McAndrew et al. Implementing Learning Design to support web-based learning
Raciti et al. D5. 1 Workshop with research infrastructures
Shivakumar et al. EXP Strategy
Kabashkin et al. Mobility Education as a Service: General Concept, Model and Demo Portal
Rupin et al. Office Management Chatbot Using Artificial Intelligence