Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
COMPUTER READABLE STORAGE MEDIA, APPARATUSES, SYSTEMS, AND METHODS FOR A LEARNING ARCHITECTURE
Document Type and Number:
WIPO Patent Application WO/2015/168597
Kind Code:
A1
Abstract:
Examples of methods, systems, and computer-readable media for a learning architecture are described herein. An example system may include an content authoring tool configured to build a page of a learning activity responsive to user inputs. The content authoring tool may be configured to add one or more objects to the page stored in a content library responsive to an input from a user. The content authoring tool may be further configured to build a path through the one or more objects associated with the page responsive to input from a user. The content authoring tool may be further configured to store a representation of the page with pointers to the one or more objects in the content library.

Inventors:
HUBER THOMAS JOSEPH (US)
HUBER ERIC MICHAEL (US)
HUBER JOHN THOMAS (US)
FOSTER SCOTT (US)
BATO MAEBELLINE R (US)
ZAMMIT CHRISTOPHER THOMAS (US)
FOSTER JEREMY (US)
PADLEY NICHOLAS (US)
BARTLETT DENA (US)
BARTLETT RICH (US)
DAVIS KARLA M (US)
Application Number:
PCT/US2015/028848
Publication Date:
November 05, 2015
Filing Date:
May 01, 2015
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
CONTENT DRIVEN DELIVERY PLATFORM LLC (US)
International Classes:
G06Q50/20; G06Q50/10
Foreign References:
US20080189684A12008-08-07
US20090311658A12009-12-17
US20120240061A12012-09-20
US20110200978A12011-08-18
US20090031215A12009-01-29
JP2010243662A2010-10-28
Attorney, Agent or Firm:
HEGSTROM, Brandon et al. (701 5TH AveSuite 610, Seattle Washington, US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A system comprising:

a learning content management program comprising a content authoring tool configured to build a page of a learning activity responsive to user inputs, wherein the content authoring tool is configured to add one or more objects to the page stored in a content library responsive to an input from a user, wherein the content authoring tool is further configured to build a path through the one or more objects associated with the page responsive to input from a user, wherein the content authoring tool is further configured to store a representation of the page with pointers to the one or more objects in the content library.

2. The system of claim 1, wherein the learning content management program further comprises a rapid content authoring tool configured to capture a rapid content item using a mobile device, the rapid content authoring tool configured to, via the mobile device, create a rapid learning activity using the captured rapid content.

3. The system of claim 1, wherein the learning content management program further comprises an evaluation tool configured to perform a post-assessment of the learning activity to determine whether user has a learning deficiency, the evaluation tool further configured to determine whether an extra learning activity is required based on the post assessment, and responsive to a determination that the extra learning activity is required, constructing the extra learning activity using pages and/or other learning activities that address the learning deficiency.

4. The system of claim 1, wherein the content authoring tool is further configured to select the one or more objects from object types that include sprites, receivers, text inputs, video, audio, dialog boxes, variables, or combinations thereof.

5. The system of claim 1, wherein the content authoring tool is further configured to assign two or more states to at least one of the one or more objects.

6. The system of claim 1, wherein the content authoring tool is further configured to build more than one path through the one or more objects associated with the page.

7. A method comprising:

receiving a request to load a learning activity at a learning content management program;

retrieving the learning activity page or pages from a content library;

reading object pointers from a page of the learning activity;

retrieving one or more objects from the content library based on the read object pointers;

reading path pointers from the page of the learning activity; and

retrieving one or more paths from the library based on the read path pointers.

8. The method of claim 7, further comprising constructing the page of the learning activity based on the object pointers and the one or more paths retrieved from the content library.

9. The method of claim 7, further comprising accessing the content library in data storage.

10. The method of claim 7, further comprising presenting the learning activity to a user.

11. A non-transitory computer-readable medium comprising instructions that, when executed by one or more processing units, cause the one or more processing units to: receive a request to go to a next page of a learning activity;

responsive to the request, determine whether a user is authorized or required to view the next page;

if the user is authorized or required to view the next page, load the next page; and if the user is not authorized and not required to view the next page, skip the next page.

12. The non-transitory computer-readable medium of claim 1 1, wherein the determination as to whether the user is authorized or required to view the next page includes instructions that, when executed by the one or more processing units, cause the one or more processing units to retrieve attributes associated with the user.

13. The non-transitory computer-readable medium of claim 12, wherein the determination as to whether the user is authorized or required to view the next page includes instructions that, when executed by the one or more processing units, cause the one or more processing units to compare the attributes associated with the user with access attributes associated with the next page.

14. A method comprising:

evaluating subscales to determine performance of a user in a learning activity;

for each of one or more subscales, determining whether additional learning is required for the user;

if additional learning is required, selecting additional content associated with the subscale to construct an extra learning activity; and

constructing the extra learning activity using the selected additional content associated with the subscale.

15. The method of claim 14, wherein evaluating subscales to determine performance of a user in a learning activity is performed after completion of the learning activity.

16. The method of claim 14, wherein selecting the additional content associated with the subscale to construct the extra learning activity comprises accessing pages from other learning activities.

17. A method comprising:

receiving a request to capture a content item at a mobile device;

capturing the content item using the mobile device responsive to an input from a user; presenting the user an option to upload the captured content item to a content library; responsive to an input from the user declining upload, storing the captured content item on the mobile device;

responsive to an input from the user requesting upload, uploading the captured content item to the content library using the mobile device; and

showing a list of content items shared with the user from the content library via the mobile device.

18. The method of claim 17, further comprising associating a barcode or QR code with the captured content item.

19. The method of claim 17, wherein uploading the captured content item to the content library using the mobile device comprises uploading identification of the user, content type, size, category associated with the captured content item.

20. A method comprising:

receiving a request to create a rapid learning activity at a mobile device;

providing a request for access to a content library to access content items authorized for a user account;

receiving, at the mobile device, access to the content items stored in the content library that are authorized for the user account;

selecting a content item of the accessed content items to be included in the rapid learning activity;

generating the rapid learning activity using the selected content item using the mobile device; and

publishing the rapid learning activity to one or more selected learners.

21. The method of claim 20, further comprising requesting user input of a name associated with the rapid learning activity.

22. The method of claim 20, further comprising selecting a user or group of users to be the one or more selected learners.

23. The method of claim 20, further comprising generating the rapid learning activity having multiple pages.

24. The method of claim 20, further comprising positioning the selected content item on a page of the rapid learning activity responsive to an input from a user.

Description:
COMPUTER READABLE STORAGE MEDIA. APPARATUSES. SYSTEMS, AND

METHODS FOR A LE ARNING ARCHITECTURE

CROSS REFERENCE TO RELATED APPLICATIONS

[0001] This application claims priority to pending U.S. Provisional Patent Application No.

61/987, 142, filed May 1 , 2014, which is incorporated herein by reference in its entirety.

BACKGROUND

[0002] Traditional learning management systems treat content as whole lessons or courses.

This practice has evolved from the early days of eLearning, at which time, paper-based training, manuals, and content were transformed into electronic formats to be distributed on CD. More recently, lessons and courses have been compiled in course authoring tools, developed in PowerPoint presentations, recorded from webinars, etc. and then imported into learning management systems platforms and used to create training programs. However, courses and lessons continue to be treated as a single entity with an inability to select portions of a course or lesson to create new lessons. The industry trend is moving toward learning architectures that combine traditional learning management capabilities with human capital management components such as performance management, succession planning, etc. However the basis of these systems remains focused on eLearning in terms of lessons and courses.

SUMMARY

[0003] Example systems are disclosed herein. An example system may include a learning content management program that includes a content authoring tool configured to build a page of a learning activity responsive to user inputs. The content authoring tool may be configured to add one or more objects to the page stored in a content library responsive to an input from a user, and to build a path through the one or more objects associated with the page responsive to input from a user. The content authoring tool may be further configured to store a representation of the page with pointers to the one or more objects in the content library.

[0004] Examples of methods are described herein. An example method may include receiving a request to load a learning activity at a learning content management program, and retrieving the learning activity page or pages from a content library. The example method may further include reading object pointers from a page of the learning activity, and retrieving one or more objects from the content library based on the read object pointers. The example method may further include reading path pointers from the page of the learning activity, and retrieving one or more paths from the library based on the read path pointers.

[0005] Another example method may include receiving a request to go to a next page of a learning activity, and, responsive to the request, determining whether a user is authorized or required to view the next page. The example method may further include, if the user is authorized or required to view the next page, loading the next page, and, if the user is not authorized and not required to view the next page, skipping the next page.

[0006] Another example method may include evaluating subscales to determine performance of a user in a learning activity, and, for each of one or more subscales, determining whether additional learning is required for the user. The example method may further include, if additional learning is required, selecting additional content associated with the subscale to construct an extra learning activity, and constructing the extra learning activity using the selected additional content associated with the subscale.

[0007] Another example method may include receiving a request to capture a content item at a mobile device, and capturing the content item using the mobile device responsive to an input from a user. The example method may further include presenting the user an option to upload the captured content item to a content library, and responsive to an input from the user declining upload, storing the captured content item on the mobile device. The example method may further include, responsive to an input from the user requesting upload, uploading the captured content item to the content library using the mobile device, and showing a list of content items shared with the user from the content library via the mobile device.

[0008] Another example method may include receiving a request to create a rapid learning activity at a mobile device, and providing a request for access to a content library to access content items authorized for a user account. The example method may further include receiving, at the mobile device, access to the content items stored in the content library that are authorized for the user account. The example method may further include selecting a content item of the accessed content items to be included in the rapid learning activity, and generating the rapid learning activity using the selected content item using the mobile device.

9 The example method may further include publishing the rapid learning activity to one or more selected learners.

BRIEF DESCRIPTION OF THE DRAWINGS

[0009] Figure 1 is a schematic illustration of a learning architecture in accordance with an embodiment of the disclosure.

[0010] Figure 2 is a block diagram of a page created using a content authoring tool of a learning architecture in accordance with an embodiment of the disclosure.

[0011] Figure 3 is a flow chart of a method for loading a learning activity using a learning content management program of a learning architecture in accordance with an embodiment of the disclosure.

[0012] Figure 4 is a flow chart of a method for evaluating a conditional page of a learning activity using a learning content management program of a learning architecture in accordance with an embodiment of the disclosure.

[0013] Figure 5 is a flow chart of a method for generating a personal learning path based on performance of a learning activity using an evaluation tool and/or a learning content management program of a learning architecture in accordance with an embodiment of the disclosure.

[0014] Figure 6 is a flow chart of a method for capturing and uploading content to a content library from a mobile device in accordance with an embodiment of the disclosure.

[0015] Figure 7 is a flow chart of a method for generating a rapid learning activity from a mobile device using content from content library in accordance with an embodiment of the disclosure.

DETAILED DESCRIPTION

[0016] Certain details are set forth below to provide a sufficient understanding of embodiments of the disclosure. However, it will be clear to one skilled in the art that embodiments of the disclosure may be practiced without various aspects of these particular details. In some instances, well-known circuits, control signals, timing protocols, computer system components, and software operations have not been shown in detail in order to avoid unnecessarily obscuring the described embodiments of the disclosure. For the purpose of this disclosure, user device may include mobile devices, tablets, laptops, computers, and any other computing device. 017] This disclosure describes embodiments of a learning architecture that includes several tools facilitate provision of Human Capital Management (HCM) capabilities. The learning architecture may include a variety of tools, ranging from learning and content management tools, as well as tools for content and course authoring, social collaboration, performance management, strategic alignment of individual and organizational goals, and process mapping. Individual tools within the learning architecture may be used independently from other tools, but all tools may be tightly integrated within the learning architecture to maintain the ability to work with content components as building blocks at their lowest level.

[0018] The learning architecture may maintain a library of content items as individual components such as blocks of text, video and audio segments, sprites, images, an interactive exercise, etc. The learning architecture may use the library of content items to develop learning courses and curriculum (e.g., a series of courses), as well as interactive learning activities and tools (referred to herein as "learning activities") to train learners, manage talent and strategically align and track organizational and individual goals. Thus, learning activity creation using the learning architecture may start with the basic building blocks (e.g., content items and collaboration), and may incorporate the basic building blocks into the learning activity and throughout the system. Portions of the created learning activities may be allocated subscales (e.g., outcomes) that identify a particular competency. By focusing on content items (e.g. videos, questionnaires, tests, training text, simulations, etc.) as a basic unit of learning activity building, systems described herein may advantageously be more flexible than systems that treat a complete lesson as a basic building block. In this manner, users of the described systems may more easily create or modify learning activities to include particular selected content, to leave out particular content, etc., without having to completely recreate an entire prepackaged learning activity. [0019] Generally, devices described herein may include devices having one or more processing unit(s) (e.g. processors) and computer readable media (e.g. memory) encoded with executable instructions causing the device to perform functions described herein, and/or display user interfaces described and/or shown herein.

[0020] Figure 1 illustrates a learning architecture (architecture) 100 according to an embodiment of the disclosure. Each of a plurality of devices 102(1-N) may be implemented using a computing device, including but not limited to a laptop, a desktop, a computer, a tablet, a media device, a smart phone, cellular phone or other mobile device, or any combination or subcombination of the same. Each of the plurality of devices 102(1 -N) may include a computer readable medium 103(1-N) (or multiple computer readable media in some examples) encoded with executable instructions that may be executable by one or more processing units (not shown in Figure 1) of the device 102(1-N) to provide a user interface for transmitting, receiving, encoding, and/or decoding data related to the designated driver application on the respective device 102(1-N).

[0021] Each of the devices 102(1-N) may be coupled to a network 110 to send and receive data.

The network 110 may be implemented using one or more networks, such as local area networks (LANs), wide area networks (WANs), metropolitan area networks (MANs), cellular networks, and/or the Internet. Communications provided to, from, and within the network 110 may wired and/or wireless, and further may be provided by any networking devices known in the art, now or in the future. Devices communicating over the network 110 may communicate with any communication protocol, including, but not limited to, TCP/IP, UDP, RS-232, and IEEE 802.11.

[0022] Each of the devices 102(1-N) may communicate with the data servers 120. Generally, servers described herein may include one or more processing unit(s) (e.g. processors) and computer readable media (e.g. memory) encoded with executable instructions to perform server functions described herein. It is to be understood that the arrangement of components is quite flexible, and in some examples, a device may perform some or all of the functions described herein as being performed by a server. In some embodiments, the devices 102(1 -N) may communicate to the data servers 120 via the network 110 to provide or retrieve data. For example, a device 102(1-N) may provide/receive new content items, lessons, selections, to the content server through the application 103(1-N) running on the user device.

[0023] The application 103(1-N) running on the device 102(1-N) may include an internet browser, a mobile application, or another application type that is configured to access and/or execute tools of a learning content management program 124. The application 103(1-N) running on the device 102(1-N) may cause the device to display graphical user interface (GUI) elements associated with the architecture 100, for example, GUI elements associated with executing the learning content management program 124 on the data server 120.

[0024] The data server 120 may include one or more processing units 121 and computer readable medium 123. The computer readable medium 123 may store instructions that may be executed on the one or more processing units 121 or other processing units. The computer readable medium 123 may encode instructions for executing the learning content management program 124 responsive to inputs from the devices 102(1-N). For example, a first device may cause the content authoring tool 181 to create a new learning activity, a second device may cause the rapid content authoring tool 183 to download a new content item, a third device may cause an evaluation tool 182 to create a new individualized lesson, a fourth device may cause the process tool 184 to update a process map, and/or a fifth device may cause the learning content management program 124 to execute a learning activity. In some examples, a same device may activate multiple of the described tools. The data server 120 may provide data to the devices 102(0-N) for interacting with the learning content management program 124.

[0025] The data server 120 executing the learning content management program 124 may facilitate human capital management capabilities that manage many different aspects associated with training and learning, and is configurable to adapt to required needs. For example, the data server 120 executing the learning content management program 124 may facilitate creation and administration of learning activities, collaborative user contribution to learning activities, creation and administration of individualized/personalized learning activities, perform assessments to track progress of a user, create learning activities that have varied content based on the user, lesson or course in progress, and perform pre or post assessments associated with the learning activity, etc. [0026] The data server 120 executing the content authoring tool 181 may facilitate creation of learning activities that include multiple paths, assignment of paths and scoring criteria, etc. The learning activities associated with the content authoring tool 181 may be object oriented, and may include complex interactions between objects included in a learning activity. The content authoring tool 181 may support different assessment types of learning activities, including test, survey, and simulation. A test assessment may score a user's responses while performing the learning activity. A survey assessment may include an unscored test that tabulates responses from many different users. A simulation may include an unscored test that allows a user to perform the learning activity as many times as desired, with each performance stored. In some embodiments, the content authoring tool 181 may operate based on common web standards, and may be used on web browsers without use of plugins or other additional programs. The content authoring tool 181 objects may also be supported on mobile devices. Thus, content authoring tool 181 may be accessed via a web browser on a user device. The content authoring tool 181 may also generate conditional learning pages in a learning activity at the direction of a creator. Conditional pages may include attributes that limit accessibility of the conditional page to certain users or groups of users performing the learning activity, or may only become available based on a user's selections while performing a learning activity. In an example, an instructor may create a conditional page that includes additional notes that are only to be viewed by the instructor, and not the users. Conditional pages may be nested such that sub- pages may flow from conditional pages, and are only viewed if the parent conditional page is accessible. The sub-page may also include additional conditions. The conditional page attributes may be embedded in metadata or properties of a page.

[0027] The data server 120 executing the learning content management program 124 may facilitate administration of the learning activities created by the content authoring tool 181, including post-assessment evaluation of scoring criteria included in the learning activity, tracking progress through a learning activity, etc. The learning content management program 124 may provide feedback a user based on the post-assessment evaluation. In some embodiments, witen presenting a learning activity to the user, the learning content management program 124 may evaluate conditional pages of the learning to determine whether or not to display the conditional page to the user based on a comparison of the conditional page criteria with attributes associated with the user. Thus, a single learning activity may be created that can be personalized for multiple different groups or users by including conditional pages to be presented only to selected subset of groups or users.

[0028] The data server 120 executing the evaluation tool 182 and/or the learning content management program 124 may facilitate configuring criteria for generating individualized lessons, creation of individualized lessons based on the criteria, and administering the individualized lessons associated with a user. The criteria may include assessment score thresholds for one or more outcomes (e.g., subscales), and selection of content from which to create the individualized lessons based on determination of a deficient outcome (e.g., subscale).

[0029] The data server 120 executing the rapid content authoring tool 183 and/or the learning content management program 124 may facilitate downloading of a new content item, rapid learning activity, or creating of a new rapid learning activity. The rapid content authoring tool 183 facilitates upload of new building blocks (e.g., text, videos, audio, photos, etc.) to the library from the application 103(1-N) running on the device 102(1-N). In some examples, the application 103(1-N) may be developed using Icenium or Kendo. The rapid content authoring tool 183 may also an ability to remotely create a rapid learning activity via a user's device and upload the rapid learning activity to be shared with other selected users. That is, the rapid learning activities may be quickly created "on-the-fly" in response to a recognized teaching opportunity. In some examples, the rapid content items and created learning activities may only be accessible by the user associated with uploading or creating the content, and users or groups assigned to view the rapid learning activity or content item. In some embodiments, the rapid content authoring tool 183 may create a library of rapid content items and learning activities for each user. In other embodiments, the rapid content authoring tool 183 may assign an attribute to rapid content items and learning activities that designate limited access to a user or subset of users. In some examples, portions of the rapid content authoring tool may also be included in the application 103(1-N) running on the device 102(1 -N). The rapid content authoring tool 183 facilitates upload of new building blocks (e.g., text, videos, audio, photos, etc.) to the library from user devices. In order to access the rapid content authoring tool 183, a user may log into the application 103(1-N) or website running on the device 102(1-N) using login credentials. The interface of the application 103(1-N) or website may validate user permissions, and display a list of tools for the rapid content authoring tool 183. The rapid content authoring tool 183 may include three basic components: rapid content management; rapid learning activity management, and rapid content collaboration management. The rapid content management component may manage creating, capturing, storing, and uploading content items. The rapid learning activity management component may facilitate creation of rapid learning activities.

[0030] The rapid content collaboration management component of the rapid content authoring tool 183 may facilitate the rapid learning activities to be shared with other users, such as members of an institution, class, department, company, etc., e.g., using typical social media tools and techniques. The rapid content collaboration management component may manage collaboration around rapid learning activities. For example, the rapid content collaboration management component may include a capability to allow selected users to interact with each other regarding content included in a rapid learning activity, such as commenting on the lesson, asking questions, suggesting alternative approaches, etc. This capability may allow users to more thoroughly and deeply explore topics associated with the rapid learning activity.

[0031] The data server 120 executing the process tool 184 may facilitate creation of a process map, updating of status of a user within a process map based on inputs from one or more devices 102(1-N) (e.g., based on interactions from user, instructors/managers, coaches, content creators, etc.), facilitating collaboration between users, performing assessments based on inputs from devices 102(1 -N), etc. The process map may provide users an opportunity to view work performed by other users, allow users to discuss approaches to portions of the process, allow an instructor to control flow through the process for other users, etc. Examples of process maps may be related to a sales process, a coaching process, a study process, a hiring process, etc. The process tool 184 may generate the process maps from templates. The collaborative portion may include several users going through the process, and the process map may provide a user access to progress of other users within a process, an ability to see how another user completed a step in the process map, allow a user to ask questions, provide feedback or share ideas regarding execution of a step in the process, provide an instructor to provide feedback during the execution of the process. The process tool 184 may also facilitate control by an instructor/manager approve completion of a step in the process, and allow access to materials associated with a subsequent step. For example, an instruction may review work product associated with a step in the process, and grant approval responsive to approving the work product. The process tool 184 may also set up automatic approvals for moving to a next step in a process, such as taking a test and meeting a threshold score. The process map may include taking courses, learning activities, completing an interaction such as a simulation, completing an external degree program, interacting with other members of an organization, completing an internal certification program, etc., (e.g., learning activities). 032] The data server 120 may store data created by the learning content management program 124 and data received from the devices 102(1-N) in one or more content libraries at data storage 130. The content libraries may be included in one or more databases. For example, the data server 120 (e.g., at the data storage 130) may maintain a content library of content items, learning activities, statistical data associated with learning activities and/or users, credentials associated with each user, and any other data created using the learning content management program 124.

[0033] Now turning to Figure 2, a block diagram of a page 210 of a learning activity 200 created using a content authoring tool of a learning architecture in accordance with an embodiment of the disclosure. The content authoring tool, may be implemented in content authoring tool 181 of Figure 1, may be an integrated tool within the learning content management program 124 of Figure 1. The content authoring tool may provide registered users with the ability to create interactive learning activities from drag-drop operations to complex, descision-driven simulations. The content authoring tool may allow a content creator to design and develop learning activities to apply, stimulate, and/or assess learning. By using object- oriented interactions, the content authoring tool allows development of an approach that focuses on objects and their attributes. Thus, in order to develop the learning activity 200, a designer may create objects (e.g., or use existing objects in a content library) that exhibit a specific behavior, and the using the specified behaviors, the objects may compartmentalize useful functions. The content authoring tool may include four basic modes: build, path, test, and test & submit.

[0034] The build mode may be for creating and editing sprites and defining interactions. For example, in Figure 2, a page 210 associated with one or more learning activities is provided for a creator to develop the learning activity 200 using the content authoring tool. Part of the development may include adding objects to the page 210, such as objects 240, 250, 260, and 270. One of skill in the art would recognize that fewer or more objects may be included in the page 210. The page 210 may provide an area to arrange a physical layout of the objects 240, 250, 260, and 270. The page 210 size area may be configurable, and the content authoring tool may provide more than one layer of objects on the page 210. Additionally, the objects 240, 250, 260, and 270 added to the page 210 may have configurable sizes. The objects 240, 250, 260, and 270 added to the page 210 may be stored in a content library, such as a content library stored in the data storage 130 of Figure 1. Once one or more of the objects 240, 250, 260, and 270 have been created, the content authoring tool may allow allocation of properties of a template object to a selected object of the objects 240, 250, 260, and 270. The template object may be any existing object. That is, after selecting an object, the content authoring tool may present the user with an option to allocate properties of a template object to the selected object without affecting properties of the original object. 035] The learning activity 200 may include complex simulations that involve interactions between one or more of the objects 240, 250, 260, and 270 on the page 210. hi some examples, the page 210 may be a single page within the learning activity 200 that includes multiple pages, and each page of the learning activity 200 may include multiple objects. In some examples, the content authoring tool may be designed to generate dynamic interactions between the page 210 and/or between the objects 240, 250, 260, and 270. In some embodiments, the page 210 and/or the objects 240, 250, 260, and 270 may be coded with HTML5 compatible technology. The content authoring tool may automatically generate the programming code needed to create the dynamic interactions between the page 210 and/or between the objects 240, 250, 260, and 270 based on inputs received from a content creator.

[0036] The objects 240, 250, 260, and 270 that are used to populate the page 210 of the learning activity 200 may include several different object types. For example, object types may include sprites (e.g., images and/or shapes that have multiple states), receivers (e.g., boxes that the user can drag other objects into), text inputs (e.g., form input boxes), video (e.g., multimedia objects in MP4 format), audio (e.g., multimedia objects in MP3 format), dialog (e.g., windows that can display information to the user or take input), variable (e.g., stores strings and numerical values). In some examples, one or more object types may allow for information to be drawn from content libraries for personalized simulations (e.g., evaluations using Java Script engine DB Query). By themselves, the objects 240, 250, 260, and 270 have various properties, including a location or position within the page 210, visible, hidden, size, type of interaction allowed, states, etc.

[0037] In some examples, the content authoring tool may create multiple states for the page 210 and/or one or more of the objects 240, 250, 260, and 270, as well as define the criteria for entering each state. The content authoring tool may facilitate definition of interactions with the page 210 and/or one or more of the objects 240, 250, 260, and 270 that may cause a change in state. In some embodiments, an interaction with one of the objects 240, 250, 260, and 270 may cause a change in state of one or more of the other objects 240, 250, 260, and 270. That is, by switching states, properties of one or more of the objects 240, 250, 260, and 270 may change or may cause interactions based upon an object of the objects 240, 250, 260, and 270 being set to a specific state. For example, one object could start off hidden on the screen and then move to a state where that object is visible on the screen based on an interaction with another object. A state of an object may be changed based on an input from a user, such as a mouse click, dragging an object into a receiver, or entering text on a keyboard, or a change in state of another object. In some examples, an object of the objects 240, 250, 260, and 270 may transition to a complete state when states of one or more of the other objects 240, 250, 260, and 270 are in states that indicate completion of the learning activity 200.

[0038] In some examples, the content authoring tool may further allow a user to define comparison operators for each of the objects 240, 250, 260, and 270. Comparison operators may provide a mechanism for a current state of a particular object prior to performing an interaction. For example, prior to hiding an object on a screen, the comparison operator may be used to verify that the object is currently visible on the screen. Comparison operators may be grouped together (e.g., using AND and OR conditional statements) to create more complex verifications. For example, prior to toggling states of two objects, the comparison operator may be used to verify one object is visible and another one is invisible. In some embodiments, a comparison operator may be used to transition an object of the objects 240, 250, 260, and 270 to a complete state indicating completion of the learning activity 200. For example, an object of the objects 240, 250, 260, and 270 may transition to a complete state when states of one or more of the other objects 240, 250, 260, and 270 are in states that indicate completion of the learning activity 200. [0039] The second mode of the content authoring tool is the path mode, which may be used to define a path through the learning activity 200. The content authoring tool may build the path based on inputs from a user, and may attach attributes (e.g., score and rationale) to the path. An end of a path may be based on an object reaching the completion state. More than one path may be created for learning activities where there is more than one route to arrive at a desired end point. For example, in Figure 2, a first path PATH 1 extends from object 1 240 to object 2 250, from object 2 250 to object 4 270, and from object 4 270 to object 3 260. A second path PATH 2 extends from object 4 270 to object 1 240, from object 1 240 to object 3 260, and from object 3 260 to object 2 250. The paths depicted are exemplary, and more or less or different paths may be generated. In execution of the first path PATH 1, the object 3 260 may reach a completion state responsive to completing each other step in the first path PATH 1. hi execution of the second path PATH 2, the object 2 250 may reach a completion state responsive to completing each other step in the second path PATH 2. In some embodiments, the content authoring tool may provide a capability to add checkpoints along a path to periodically tabulate scoring as certain milestones are reached. In some embodiments, the paths PATH 1 and PATH 2 may be alternative paths to completing the learning activity 200, or may be completely independent paths. To that end, the content authoring tool may support more than one object having a completion state, where multiple completion states may allow alternate paths that may end the simulation if the learner goes too far off track or if there is more than one way to end up at a proper solution.

[0040] By developing paths, such as the PATH 1 and the PATH 2 of Figure 2, the content authoring tool may use user-specified objects to score complex interactions of the learning activity 200. In some examples, a scoring path may require that at least one object reaches a completion state (e.g., object 3 260 for PATH 1 and object 2 250 for PATH 2), which is used to indicate an end of the learning activity 200. In some examples, the content authoring tool may only score interactions associated with a scoring path responsive to detection of a completion state or if a checkpoint has been reached.

[0041] The scoring path may be assigned at an object level or at a state of an object level (e.g., only certain object states are audited). As an example, objects along a path may have an attribute that indicates whether the object state is to be audited. In some examples, an object may have an audit start attribute or property associated with a particular state to begin the scoring. For example, in the first path PATH 1, if object 1 240 has the audit start attribute set for a particular state of object 1 240, then scoring may begin when object 1 240 reaches that intended state. Alternatively, if object 2 250 has the audit start attribute associated with a particular state of the object 2 250, scoring would not begin until object 2 250 reached the particular state (e.g., in the second step of PATH 1). In some examples, an audit start indication may not be required for a path. By selecting the objects 240, 250, 260, and 270 and/or states of the objects 240, 250, 260, and 270 to audit, the content authoring tool may limit scoring to important steps determined by the content creator. In some examples, the content authoring tool may allow a content creator may add a score and a rationale to a path. A rationale may indicate to the user whether the user's series of clicks match the desired path upon completion. A number of clicks and the click location necessary to reach an end of a path may also be included, and a score may be based on a number of clicks made by a user, in some examples.

[0042] The content authoring tool may store a representation of the page 210 in data storage, as well as storing a representation of the objects 240, 250, 260, and 270 and paths PATH 1 and PATH 2. The page 210 may be stored with pointers to the objects 240, 250, 260, and 270 and the corresponding paths PATH 1 and PATH 2. By storing the page 210 with pointers, the objects 240, 250, 260, and 270 may be updated without requiring a recompile of the page 210 prior to administration of the learning activity 200 by a learning content management program, such as the learning content management program 124 of Figure 1 (e.g., page 210 is automatically updated with the latest objects 240, 250, 260, and 270 when loaded). Further, by storing the objects individually as content items, the obejcts may be used in other pages or in other learning activities. When the page 210 of the learning activity 200 is administered, the learning content management program may provide feedback a user based on the post- assessment evaluation. In some embodiments,

[0043] In the test mode, the content authoring tool may allow r the content creator to ran the learning activity 200 as it would be viewed by a learner to debug and look for ways to improve the content and interactions. The test and submit mode is similar to the test mode, except that the content authoring tool may also provide a score and rationale may be upon completion to verify that the scoring of the path is operating properly. [0044] In determining scoring, the content authoring tool may be capable of tracking every user input (e.g., click) or interaction as it relates to the page 210 or the objects 240, 250, 260, and 270 while performing the learning activity. Tracking user inputs and interactions may provide a very fine grain of detail to the user and/or the instructor to evaluate performance of the user or effectiveness of the learning activity 200. The content authoring tool may present the scoring data to the user and/or the instructor/manager to highlight areas where the user was deficient. In some examples, the content authoring tool may provide additional learning to strengthen the user's competency in very specific areas responsive to the score. This may may make learning adaptable to individual learning styles and abilities.

[0045] Figure 3 a flow chart of a method 300 of loading a learning activity using a learning content management program of a learning architecture in accordance with an embodiment of the disclosure. The method 300 may be performed by learning content management program, such as the learning content management program 124 of Figure 1. When the learning activity is created, a content authoring tool, such as the content authoring tool 181 or the rapid content authoring tool 183 of Figure 1 may store a representation of the pages of a learning activity in a content library within data storage, as well as storing a representation of associated objects and associated paths. The pages of the learning activity may be stored with pointers to the associated objects and to the corresponding paths PATH 1 and PATH 2, rather than embedding and storing the obejcts and paths directly in the pages of the learning activity.

[0046] The method 300 may include receiving a request to load a learning activity at a learning content management program, at 310. The method 300 may further include retrieving the learning activity page or pages from a content library, at 320. The content library may be stored in the data storage 130 of Figure 1. The method 300 may further include reading object pointers from a page of the learning activity, at 330. The pointers may point to objects in the content library.

[0047] The method 300 may further include retrieving one or more objects from the content library based on the read object pointers, at 340. By retrieving the objects while loading, rather than the objects being embedded in the pages, updates to the objects may be reflected in the page of the learning activity every time the learning activity is administered. The method 300 may further include reading path pointers from the page of the learning activity, at 350. The method 300 may further include retrieving one or more paths from the library based on the read path pointers, at 340. hi some examples, the path information may be embedded in properties of the object, and may be loaded with the objects are loaded.

[0048] Figure 4 a flow chart of a method 400 for evaluating a conditional page of a learning activity using a learning content management program of a learning architecture in accordance with an embodiment of the disclosure. The method 400 may be performed by a learning content management program, such as the learning content management program 124 of Figure 1. The conditional learning pages may be generated by content authoring tool, such as the content authoring tool 181 or the rapid content authoring tool 183 of Figure 1 , at the direction of a creator. Conditional pages may include attributes that limit accessibility of the conditional page to certain users or groups of users performing the learning activity, or may only become available based on a user's selections while performing a learning activity. In an example, an instructor using the content authoring tool may create a conditional page that includes additional notes that are only to be viewed by the instructor, and not the users. Conditional pages may be nested such that sub-pages may flow from conditional pages, and are only viewed if the parent conditional page is accessible. The sub-page may also include additional conditions. The conditional page attributes may be embedded in metadata or properties of a page, such as in Meta data of the page 210 of Figure 2.

[0049] Moreover, conditional pages may be created which may be presented only to users having certain attributes, and/or may not be presented to users having certain attributes. The learning content management program may consult stored attributes about a user on receipt of a user request for a page, for example. When presenting a learning activity to the user, the conditional page may not be displayed (or may be displayed) unless the attributes of the user match certain predefined criteria. In this manner, certain pages may be accessible, for example, to only students at one university, while the pages may not be accessible to students from other universities. Thus, a single learning activity may be created by an instructor but personalized for multiple universities or other organizations by including conditional pages to be presented only to selected university students or members of other organizations.

[0050] The method 400 may include receiving a request to go to a next page of a learning activity, at 410. The request may be received at the learning content management program. Responsive to the request, the method 400 may include determining whether a user is authorized or required to view the next page, at 420. For example, the user may not have the proper attributes to view the page, or the performance up to and through the current page of the learning activity may dictate whether the conditional page is required to be provided to the user.

[0051] If the user is authorized or required to view the next page, at 430, the method 400 includes loading the next page, at 440. The method 400 may include providing the next page to the user. If the user is not authorized and not required to view the next page, at 430, the method 400 may include skipping the next page, at 450. If the next page is skipped, the method 400 may be performed on the subsequent page to determine whether it will be provided to the user.

[0052] Figure 5 a flow chart of a method 500 generating a personal learning path based on performance of a learning activity using an evaluation tool of a learning architecture in accordance with an embodiment of the disclosure. The method 500 may be performed by a learning content management program and/or an evaluation tool, such as the learning content management program 124 and/or the evaluation tool 182, respectively, of Figure 1. A personal learning path, which may be created during development of the learning activity by a content authoring tool, such as the content authoring tool 181 or the rapid content authoring tool 183 of Figure 1, may include additional learning activities that are dynamically assigned to a user based on a user's performance during a just-completed learning activity. For example, the learning content management program or the evaluation tool may provide a user access to an extra lesson or lessons in a learning activity to re-learn the concepts that the user may have missed based on evaluation of post-assessments the learning activity. The learning content management program or the evaluation tool may automatically build the extra learning activity based on defined conditions, and the built learning activity may be only made available to the specified user, in some examples. The personal learning path may require that the subscales (e.g., outcomes) have been associated with and/or assigned to the one or more portions of the learning activity (e.g., curriculum, lesson, pages and/or questions).

[0053] The method 500 may include evaluating subscales to determine performance of a user in a learning activity, at 510. For example, when a learning activity is created, a page may be associated with a subscale that identifies a particular outcome. The evaluation of the performance may be conducted after the learning activity has been completed. The method 500 may further include, for each of one or more subscales, determining whether additional learning is required for the user, at 520. If no additional learning is required, at 530, the method 500 may include determining that the learning activity is complete for the user, at 540.

[0054] If additional learning is required, at 530, the method 500 may selecting additional content associated with the subscale to construct an extra learning activity, at 550. The method 500 may further include constructing the extra learning activity using the selected additional content associated with the subscale, at 560. That is, based on the post assessment, the evaluation tool may select materials (e.g., lessons, pages, courses, etc.) and construct the extra learning activity such that it addresses outcomes associated with a deficiency of the user. For example, if a post-assessment score indicates a user does not meet passing criteria associated with a subscale, an extra learning activity directed to the concepts associated with the non- passing score may be dynamically created for the user using pages from other learning activities with the same subscales. The extra learning activity may specific to the particular deficiency and may assist a user in learning the missed concepts in order to pass the failed assessments. This may provide a more efficient and focused solution as compared with implementations that include a user retaking an entire course.

[0055] Construction of the original learning activity may include creating tables and relationships for personalized learning that are used to construct the extra learning activity and define an order to display the pages of the extra learning activity. The learning activity may be defined such that certain portions of the learning activity may be completed by a user prior to creating a personalized extra learning activity, as well as the other learning activities from which the extra learning activity content information should be pulled. In some examples, the method 500 may run after every post-assessment or run only once after execution of all post- assessment for a defined set of learning activities.

[0056] Figure 6 a flow chart of a method 600 a method for capturing and uploading content to a content library from a mobile device in accordance with an embodiment of the disclosure. The method 600 may be performed by a learning content management program and/or a rapid content authoring tool, such as the learning content management program 124 and/or the rapid content authoring tool 183, respectively, of Figure 1. The method 600 may also be supported by an application or website running on a mobile device, such as the application 103(1-N) or website running on the client 102(1-N). Rapid content management may manage creation and upload of rapid content items. Content items may be created via capture, upload or reference to social media using a mobile device. Rapid content management may include reference of items from YouTube, Facebook, Twitter, Instagram, Pinterest, or other website URLs from both mobile and computer via connection to the user library page. In some embodiments, rapid content management may include uploading content stored on the user device, and may allow designation of the content as a specific content type.

[0057] The method 600 may include receiving a request to capture a content item at a mobile device, at 610. The request may be received via an input from a user via the application or the website. Responsive to receiving the request capture the content item at the mobile device, the method 600 may further include presenting the user with options to capture video, audio and/or images. Responsive to receiving a request capture an image, the method 600 may further include activating a camera associated on the mobile device. Responsive to receiving a request to capture an audio recording, the method 600 may further include activating a microphone associated with the mobile device. Responsive to receiving a request to capture a video, the method 600 may further include activating a camera and/or a microphone associated with the mobile device.

[0058] The method 600 may include capturing the content item using the mobile device, at 620.

The capture may be responsive to an input from the user. The method 600 may further include, responsive to the capture, providing a preview of the captured content item. In some embodiments, the method 600 may further include providing options to a user, such as an option to recapture (e.g., retake) the content item. The method 600 may further include presenting the user an option to upload the captured content item to a content library, at 625. The content library may be a library associated with the user, and may be included in a database stored in data storage, such as the data storage 130 of Figure 1. Responsive to an input from the user declining upload, at 630, storing the captured content item on the mobile device, at 640.

[0059] Responsive to an input from the user requesting upload, at 630, uploading the captured content item to the content library using the mobile device, at 650. The method 600 may further include providing additional data with the upload, such as such as identification of the user, content type, size, category, etc. The method 600 may further include uploading existing content items from the mobile device. Responsive to receiving a selection to upload existing content items, the method 600 may further include options to select video, audio or images, such as photos, videos, or audio stored on the mobile device. The method 600 may further include providing the application or website permission to access media stored on the mobile device, such as a camera roll, iBooks, videos, music, etc. The method 600 may further include receiving an acknowledgment that the captured or existing content item was successfully uploaded. The method 600 may further include providing a capture screen that allows the user to take further action, such as associating a barcode or QR code with the captured content item.

[0060] The method 600 may further include showing a list of content items shared with the user from the content library via the mobile device, at 660. Responsive to receiving selection to view uploaded content items to which the user has access permissions, method 600 may further include providing the user access to the content items associated with the user (e.g., content items uploaded by the user, content items shared with the user via a shared library, and content items available from lessons to which the users has access permissions).

[0061] Figure 7 a flow chart of a method 700 a method for generating a rapid learning activity from a mobile device using content from content library in accordance with an embodiment of the disclosure. The method 700 may be performed by a learning content management program and/or a rapid content authoring tool, such as the learning content management program 124 and/or the rapid content authoring tool 183, respectively, of Figure 1. The method 700 may also be supported by an application or website running on a mobile device, such as the application 103(1-N) or w r ebsite running on the client 102(1-N). Rapid learning activity management may include managing creation, editing, and/or uploading of rapid learning activities. Rapid learning activity management may include also a capability to allow a user to quickly capture and create a rapid learning activity that can be shared with selected users, and may include content items uploaded using the rapid content management component. The rapid learning activity may be used for several classes, and the rapid learning activity may include several lessons, and creation of a new lesson may be added to the rapid learning activity that includes one or more existing lessons. In some embodiments, rapid learning activity management may only allow users having rapid content creator access permissions the ability to create rapid learning activities.

[0062] The method 700 may include receiving a request to create a rapid learning activity at a mobile device, at 710. Responsive to receiving the request, the method 700 may further include prompting the user to enter a name for the rapid learning activity. In some embodiments, the method 700 may include preventing the user from proceeding until a valid name is entered and saved. For each user account, the method 700 may further include creating a default learning activity to which the user uploads the rapid learning activities. The method 700 may further include allowing a user to create additional rapid learning activities. The default learning activity for each user may be associated with a user identifier. The default learning activity may be generated the first time the user accesses the rapid content authoring tool or the first time the user builds a rapid learning activity. The default learning activity may be a repository to hold new rapid learning activities until published. Once published, the rapid learning activities may be shared from storage areas associated with a rapid learning activity to which the rapid learning activity is being added. In some embodiments, the method 700 may include limiting access to the default learning activity to the associated user.

[0063] The method 700 may further include providing a request for access to a content library to access content items authorized for a user account, at 720. In some embodiments, access to content items may be limited for rapid content creators as compared with administrative content creators. For example, rapid content creators may only have an ability to access content items that have been uploaded by the user or shared with the user. The method 700 may further include receiving, at the mobile device, access to the content items stored in the content library that is authorized for the user account, at 730.

[0064] In some examples, the method 700 may further include using the audio/video capabilities of the mobile device and/or identifying internet resources to generate or locate content items. In some examples, the method 700 may further include searching existing rapid learning activities and content items, such as searching text in headers of tables/grids, text, metadata associated with uploaded content items, etc., to find content. The content items may include of a variety of multi -media formats including HTML, audio, video, images, etc. [0065] The method 700 may further include selecting a content item from the accessed content items to be included in the rapid learning activity, at 740. The rapid learning activity may include one or more pages, with each page including one or more content items. In some embodiments, the method 700 may further include creating additional pages and/or removing existing pages responsive to a request from a user.

[0066] The method 700 may further include generating the rapid learning activity using the selected content item using the mobile device, at 750. For example, generating the rapid learning activity may include arranging the content items on a page responsive to an input from the user. The input from the user may include use of traditional computer interface gestures, such as drag and drop.

[0067] The method 700 may further include publishing the rapid learning activity to one or more selected learners, at 760. In some examples, the method 700 may further include prompting the user to select a group if a selected learner is a member of more than one group or to select learners within the selected group to receive the rapid learning activity Users may be selected or deselected via a checkbox. Responsive to receiving a selection to publish the rapid learning activity, the method 700 may further include providing a confirmation message to the user that includes a list of users that the rapid learning activity was shared with for feedback. In some examples, method 700 may include providing an error message if the user has not selected any users. The method 700 may further include uploading content items and the rapid learning activity in the background, thus allowing a user to work on new content or rapid learning activities. After publishing, the method 700 may further include tracking a number of content accesses for some or all content types (e.g., content items, learning activities, etc.) In some examples, the method 700 may include preventing anyone by the user to that creating the rapid learning activity from editing or deleting the rapid learning activity.

[0068] While the methods 600 and 700 have been described in terms of use of a mobile device, one of skill in the art would recognize that all or portions each of the methods 600 and 700 may each be performed using devices other than mobile devices to capture and upload content (e.g., method 600) and to create rapid learning activities (e.g., method 700). The methods 400, 500, 600, and 700 of Figures 3-7, respectively, may be implemented by a processing unit such as a central processing unit (CPU), a digital signal processor (DSP), a controller, another hardware device, a firmware device, or any combination thereof. As an example, the methods 400, 500, 600, and 700 of Figures 3-7, respectively, may be implemented by a computing system using, for example, one or more processing units that may execute instructions for performing the method that may be encoded on a computer readable medium. The processing units may be implemented using, e.g. processors or other circuitry capable of processing (e.g. one or more controllers or other circuitry). The computer readable medium may be transitory or non-transitory and may be implemented, for example, using any suitable electronic memory, including but not limited to, system memory, flash memory, solid state drives, hard disk drives, etc. One or more processing units and computer readable mediums encoding executable instructions may be used to implement all or portions of encoders or encoding systems described herein.

[0069] Those of ordinary skill would further appreciate that the various illustrative logical blocks, configurations, modules, circuits, and algorithm steps described in comiection with the embodiments disclosed herein may be implemented as electronic hardware, computer software executed by a processor, or combinations of both. Various illustrative components, blocks, configurations, modules, circuits, and steps have been described above generally in terms of their functionality. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.

[0070] The previous description of the disclosed embodiments is provided to enable a person skilled in the art to make or use the disclosed embodiments. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the principles defined herein may be applied to other embodiments without departing from the scope of the disclosure. Thus, the present disclosure is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope possible consistent with the principles and novel features as defined by the following claims.