System and method for distance learning
First Claim
1. A computer implemented method for enabling a plurality of users at a plurality of respective client systems to remotely perform one or more respective exercises using the plurality of respective client systems, the method comprising:
- storing in a course database course information including a list of exercises, and for a given exercise one or more virtual machines associated with the exercise;
receiving a request to connect to a remote system from at least one user;
accessing, by the remote system, the course database to determine one or more courses associated with the user;
transmitting, by the remote system, a list of the courses associated with the user to the respective client system associated with the user;
receiving, by the remote system, a selection of at least one of the courses in the course list from the user;
accessing, by the remote system, the course database to determine one or more exercises associated with the selected course;
transmitting, by the remote system, a list of the exercises associated with the selected course to the respective client system associated with the user;
receiving, by the remote system, a selection of at least one of the exercises in the transmitted exercise list from the user;
accessing, by the remote system, the course database to determine at least one virtual machine associated with the selected exercise;
launching, by the remote system, the virtual machine associated with the selected exercise, wherein the launched virtual machine generates a user interface for performing the selected exercise; and
transmitting, by the remote system, a view of the user interface to the respective client system associated with the user, wherein the user performs the selected exercise by remotely interacting with the virtual machine via the view of the user interface.
16 Assignments
0 Petitions
Accused Products
Abstract
A system and method for distance learning that can be used to teach a typical IT training course. In one aspect, a student that desires to perform remotely an exercise from an IT training course uses his/her Java-capable browser to connect to a distance learning web server. The web server downloads to the browser a list of exercises that the student can choose from. After the student selects an exercise, the web server launches the virtual machines that are needed for the student to perform the selected exercise. The virtual machines are launched on a computer system that is remote from the student, but the computer system includes a remote display server. After the virtual machines are launched on the remote system, a remote display viewer is loaded in the student'"'"'s browser and the remote display viewer connects to the remote display server. After the viewer connects to the remote display server, the viewer displays one or more of the virtual machines in a window on the student'"'"'s computer. Thus, after the viewer connects to the remote display server, the student can remotely interact with the virtual machines that are required for the student to perform the exercise.
95 Citations
20 Claims
-
1. A computer implemented method for enabling a plurality of users at a plurality of respective client systems to remotely perform one or more respective exercises using the plurality of respective client systems, the method comprising:
-
storing in a course database course information including a list of exercises, and for a given exercise one or more virtual machines associated with the exercise; receiving a request to connect to a remote system from at least one user; accessing, by the remote system, the course database to determine one or more courses associated with the user; transmitting, by the remote system, a list of the courses associated with the user to the respective client system associated with the user; receiving, by the remote system, a selection of at least one of the courses in the course list from the user; accessing, by the remote system, the course database to determine one or more exercises associated with the selected course; transmitting, by the remote system, a list of the exercises associated with the selected course to the respective client system associated with the user; receiving, by the remote system, a selection of at least one of the exercises in the transmitted exercise list from the user; accessing, by the remote system, the course database to determine at least one virtual machine associated with the selected exercise; launching, by the remote system, the virtual machine associated with the selected exercise, wherein the launched virtual machine generates a user interface for performing the selected exercise; and transmitting, by the remote system, a view of the user interface to the respective client system associated with the user, wherein the user performs the selected exercise by remotely interacting with the virtual machine via the view of the user interface. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer implemented method for enabling a plurality of students at a plurality of respective client systems to remotely perform one or more respective exercises using the plurality of respective client systems, the method comprising:
-
storing in a course database associated with a remote system course information including a list of exercises, and for a given exercise one or more virtual machines associated with the exercise; accessing, by the remote system, the course database to determine one or more courses associated with at least one student; displaying for the student, at the respective client system associated with the student, a list of the courses associated with the student; upon receiving a selection of at least one of the displayed courses from the student, displaying for the student, at the respective client system associated with the student, a list of exercises associated with the selected course; and upon receiving a selection of at least one of the displayed exercises from the student, launching, by the remote system, at least one virtual machine associated with the selected exercise, wherein the launched virtual machine generates a user interface for performing the selected exercise; and displaying for the student, at the respective client system associated with the student, a view of the user interface, wherein the student performs the selected exercise by remotely interacting with the virtual machine via the view of the user interface. - View Dependent Claims (7, 8, 9)
-
-
10. A system for enabling a plurality of students at a plurality of respective client systems to remotely perform one or more respective exercises using the plurality of respective client systems, each of the plurality of respective client systems having a respective web browser and a respective viewer application, the system comprising:
-
a server remote from the plurality of respective client systems; a plurality of computer systems coupled to the remote server, each computer system associated with at least one course and comprising; a virtual machine platform for running virtual machines, a virtual machine launcher for launching the virtual machines on the virtual machine platform, and a remote display server for handling sessions between the virtual machines and the plurality of respective client systems; and a course database that stores course information including a list of exercises, and for a given exercise one or more virtual machines associated with the exercise, the course database coupled to the remote server, wherein the system is operable to; access the course database to determine one or more courses associated with at least one student; transmit a list of the courses associated with the student to the respective client system associated with the student; receive a selection of at least one of the courses in the course list from the respective client system associated with the student; transmit a list of exercises associated with the selected course to the respective client system associated with the student; receive a selection of at least one of the exercises in the transmitted exercise list from the respective client system associated with the student; select one of the plurality of computer systems based on the selected course; invoke the virtual machine launcher at the selected computer system to launch at least one virtual machine associated with the selected exercise, wherein the launched virtual machine runs on the virtual machine platform at the selected computer system and generates a user interface for performing the selected exercise; and launch the remote display server at the selected computer system to handle a session with the respective client system associated with the student, wherein the remote display server is operable to transmit views of the user interface to the respective viewer application at the respective client system during the session, the respective viewer application displaying the view of the user interface to the student, wherein the student performs the selected exercise by remotely interacting with the virtual machine during the session via the views of the user interface. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A computer readable medium for enabling a plurality of users at a plurality of respective client systems to remotely perform one or more respective exercises using the plurality of respective client systems, the computer readable medium comprising computer-executable instructions for:
-
storing in a course database course information including a list of exercises, and for a given exercise one or more virtual machines associated with the exercise; receiving a request to connect to a remote system from at least one user; accessing, by the remote system, the course database to determine one or more courses associated with the user; transmitting, by the remote system, a list of the courses associated with the user to the respective client system associated with the user; receiving, by the remote system, a selection of at least one of the courses in the course list from the user; accessing, by the remote system, the course database to determine one or more exercises associated with the selected course; transmitting, by the remote system, a list of the exercises associated with the selected course to the respective client system associated with the user; receiving, by the remote system, a selection of at least one of the exercises in the transmitted exercise list from the user; accessing, by the remote system, the course database to determine at least one virtual machine associated with the selected exercise; launching, by the remote system, the virtual machine associated with the selected exercise, wherein the launched virtual machine generates a user interface for performing the selected exercise; and transmitting, by the remote system, a view of the user interface to the respective client system associated with the user, wherein the user performs the selected exercise by remotely interacting with the virtual machine via the view of the user interface. - View Dependent Claims (17, 18, 19)
-
-
20. A computer implemented method for enabling a plurality of users at a plurality of respective client systems to remotely perform one or more respective exercises using the plurality of respective client systems, the method comprising:
-
storing in a course database course information including a list of exercises, and for a given exercise one or more virtual machines associated with the exercise; receiving a request to connect to a remote system from at least one user; accessing, by the remote system, the course database to determine one or more courses associated with the user; transmitting, by the remote system, a list of the courses associated with the user to the respective client system associated with the user; receiving, by the remote system, a selection of at least one of the courses in the course list from the user; accessing, by the remote system, the course database to determine one or more exercises associated with the selected course; transmitting, by the remote system, a list of the exercises associated with the selected course to the respective client system associated with the user; receiving, by the remote system, a selection of at least one of the exercises in the transmitted exercise list from the user; selecting, by the remote system, at least one available virtual machine launcher associated with the selected course, wherein the selected virtual machine launcher is running on a computer onto which the selected course is installed, the computer being associated with remote system; transmitting, by the remote system, a message including at least one identifier that identifies the selected exercise to the selected virtual machine launcher, wherein the selected virtual machine launcher is operable to; access the course database to determine at least one virtual machine associated with the selected exercise; and launch the virtual machine associated with the selected exercise, wherein the launched virtual machine generates a user interface for performing the selected exercise; and transmitting, by the remote system, a view of the user interface to the respective client system associated with the user, wherein the user performs the selected exercise by remotely interacting with the virtual machine via the view of the user interface.
-
Specification