WO2002029762A1 - System and method for delivering content in a computerized distance-learning environment - Google Patents

System and method for delivering content in a computerized distance-learning environment Download PDF

Info

Publication number
WO2002029762A1
WO2002029762A1 PCT/US2000/041039 US0041039W WO0229762A1 WO 2002029762 A1 WO2002029762 A1 WO 2002029762A1 US 0041039 W US0041039 W US 0041039W WO 0229762 A1 WO0229762 A1 WO 0229762A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
user
processor
areas
data element
Prior art date
Application number
PCT/US2000/041039
Other languages
French (fr)
Inventor
Mark A. Weakly
Charlotte I. Hazzard
Darrell D. Wheaton
Arthur I. Zygielbaum
Original Assignee
The Board Of Regents Of The University Of Nebraska
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 The Board Of Regents Of The University Of Nebraska filed Critical The Board Of Regents Of The University Of Nebraska
Priority to AU2001214949A priority Critical patent/AU2001214949A1/en
Priority to PCT/US2000/041039 priority patent/WO2002029762A1/en
Publication of WO2002029762A1 publication Critical patent/WO2002029762A1/en

Links

Classifications

    • 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
    • G09B7/00Electrically-operated teaching apparatus or devices working with questions and answers
    • 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

Definitions

  • the present invention relates to a system and method in the field of computerized distance-learning.
  • this invention relates to a system and method for requesting data with a processor in a distance-learning environment.
  • a cache is a temporary data storage area.
  • a cache temporarily stores the data associated with visited web pages ("content") .
  • Web pages are electronic documents that have been created using the hypertext markup language (HTML) or other language used for creating documents to be communicated over the Internet.
  • HTML hypertext markup language
  • the web browser stores a copy of the viewed web page on the user's local machine. This first-time content retrieval happens at the data rate supported by the network connection.
  • the web browser delivers the requested web page from the local cache, unless the web page has been updated on the remote site.
  • the web browser retrieves the updated web page from the remote site, stores a copy of the updated web page on the user's local machine, and displays the updated web page to the user. Subsequent requests for the same data will be much faster because the web browser maintains a copy of the requested data. In this manner, data transfers across the Internet occur only when the user requests a web page that has not been viewed previously or has been updated since the last viewing.
  • Caches are user-configurable to a specific size limit or expiration date. When the cache exceeds the size limit, the data in the cache is generally purged in a first-in, first-out (FIFO) manner to maintain the desired size of the cache. When the cache reaches an expiration date (i.e., 60 days) , all data in the cache older than the expiration date is purged.
  • the system of the invention is for use by a user with a processor for delivering data to the user in a distance learning (DL) environment.
  • the system comprises a plurality of DL data areas and a resource utility.
  • the plurality of DL data areas stores at least one version of at least one DL data element .
  • At least one of the DL data areas is remote from the user's processor and accessible by the user's processor at a first data rate.
  • At least one of the DL data areas is resident at the user's processor and accessible at a second data rate.
  • the resource utility at the user's processor receives a request from the user for a specific DL data element available in one of the plurality of DL data areas.
  • the requested DL data element is to be provided to the user's processor for use by the user in the DL environment.
  • the resource utility determines which one of the DL data areas contains the most recent version of the requested DL data element.
  • the user's processor receives the most recent version of the requested DL data element from the determined DL data area in response to the determination made by the resource utility.
  • the most recent version of the requested DL data element is made available to the user in the DL environment .
  • the invention includes a method for delivering data to a user in a distance learning (DL) environment.
  • a plurality of DL data areas store at least one version of at least one DL data element .
  • At least one of the DL data areas is remote from a user's processor and accessible by the user's processor at a first data rate. At least one of the DL data areas is resident at the user's processor and accessible at a second data rate.
  • the method comprises : receiving a request from the user for a specific DL data element available in one of the plurality of DL data areas, said requested DL data element to be provided to the user's processor for use by the user in the DL environment; determining which one of the DL data areas contains the most recent version of the requested DL data element; and causing the user's processor to receive the most recent version of the requested DL data element from the determined DL data area whereby the most recent version of the requested DL data element is available to the user in the DL environment .
  • the invention includes a computer data signal embodied in a carrier wave.
  • the computer data signal comprises computer instructions for delivering data to a user in a distance learning (DL) environment.
  • a plurality of DL data areas store at least one version of at least one DL data element.
  • At least one of the DL data areas is remote from a user's processor and accessible by the user's processor at a first data rate.
  • At least one of the DL data areas is resident at the user's processor and accessible at a second data rate.
  • the computer instructions comprise : a first code segment for receiving a request from the user for a specific DL data element available in one of the plurality of DL data areas, said requested DL data element to be provided to the user's processor for use by the user in the DL environment; a second code segment for determining which one of the DL data areas contains the most recent version of the requested DL data element; and a third code segment for causing the user's processor to receive the most recent version of the requested DL data element from the determined DL data area whereby the most recent version of the requested DL data element is available to the user in the DL environment .
  • FIG. 1 is a block diagram of one embodiment of the system of the invention illustrating the main components of the system.
  • FIG. 2 is a flow chart of one embodiment of the invention in which the resource utility services user requests for data.
  • FIG. 3 is a block diagram of one embodiment of the system in which the client computer communicates with the web server, resource server, and configuration server via the Internet .
  • Corresponding reference characters indicate corresponding parts throughout the drawings.
  • the system 100 delivers data to a user 102 in a computerized distance learning (DL) environment.
  • the delivered data includes computerized instruction between at least one instructor and at least one user 102 remote from the instructor.
  • the computerized instruction in the DL environment is organized into DL courses which contain educational material related to various subjects.
  • the DL environment may include a table of contents for each DL course, a DL course notebook, a communications center, a search engine, an assessment tool, and a manual.
  • the table of contents shows the organization of the DL course.
  • the DL course notebook allows the user to create and review electronic notes.
  • the communications center allows the user to communicate with other users and/or a DL course instructor.
  • the search engine responsive to user input, locates specific DL data elements associated with the DL course.
  • the assessment tool grades the user's progress through the DL course.
  • the manual provides instructions to the user relating to the DL environment .
  • the user 102 interacts with at least one user processor 104 to request and receive data.
  • the user processor 104 can be part of any device which is capable of transmitting and receiving data, including, but not limited to, personal computers, laptop computers, handheld personal digital assistants, and cellular telephones.
  • the user processor 104 requests and receives data from DL data areas via a resource utility 106 (see below) .
  • the user processor 104 communicates with different DL data areas at differing data rates.
  • the requested data includes data such as the content associated with a web page.
  • Such content includes, but is not limited to, text, graphics, audio, video, and other data downloadable from a web site.
  • multiple user processors operate cooperatively to further enhance data delivery to the user 102.
  • N resident DL data areas 110 are part of the system 100 and are resident to the user processor 104.
  • M remote DL data areas 108 are part of the system 100 and are remote from the user processor 104.
  • Each of the DL data areas stores DL data elements.
  • different DL data areas store different versions of the same DL data element and the user processor 104 accesses the resident DL data areas 110 at a faster rate than the remote DL data areas 108.
  • the data rate is compared relative to the other DL data areas. If the data rate at which the user processor 104 accesses the specific DL data area is relatively fast compared to the data rates of the other DL data areas, then the specific DL data area is considered to be one of the resident DL data areas 110. If the data rate at which the user processor 104 accesses the specific DL data area is relatively slow compared to the data rates of the other DL data areas, then the specific DL data area is considered to be one of the remote DL data areas 108.
  • one of the resident DL data areas 110 such as a CDROM
  • one of the remote DL data areas 108 such as a hard disk accessible through a network
  • updates can either supersede and/or replace the static version.
  • the updates supercede the static version.
  • the resident DL data area 110 is a medium writeable by the user processor 104
  • the updates replace the static DL data elements in the resident DL data area 110.
  • the resource utility 106 receives the request and determines at 204 which DL ' data area contains the most recent version of the specific DL data element. In one embodiment, the resource utility 106 determines the DL data area which contains the most recent version of the specific DL data element by comparing the dates associated with the corresponding DL data elements in each DL data area. In an alternative embodiment, each DL data area has only one date for all the DL data elements in that DL data area. In this embodiment, the resource utility 106 determines the DL data area which contains the most recent version of the specific DL data element by comparing the dates associated with the DL data areas containing the corresponding DL data element .
  • the singleton date associated with each DL data area is stored as a designated DL data element accessible by the resource utility 106.
  • the resource utility 106 then requests the DL data element from the determined DL data area via a processor with access to the determined DL data area.
  • the processor with access to the resident DL data area 110 is the user processor 104.
  • the resource utility 106 either requests at 206 the DL data element from one of the resident DL data areas 110 or requests at 208 the DL data element from one of the remote DL data areas 108. If more than one DL data area is determined to contain the most recent version of the DL data element, then the resource utility 106 requests the DL data element from one of the resident DL data areas 110 determined to contain the DL data element .
  • the resource utility 106 receives the specific DL data element from the determined DL data area (either resident at 210 or remote 212) . In a preferred embodiment, the resource utility 106 directly reads the DL data element from the determined DL data area via a processor with access to the determined DL data area.
  • the resource utility 106 forwards at 214 the specific DL data element received from the determined DL data area to the user processor 104.
  • the user 102 then further processes the specific DL data element.
  • the DL data areas store content associated with a web page
  • the user 102 views, listens to, executes, modifies, or otherwise further processes the specific DL data element .
  • the resident DL data areas 110 contain appropriate versions of the DL data elements such that the resident DL data areas 110 service the majority of the requests for specific DL data elements. Delivering the majority of the DL data elements from the resident DL data areas 110 instead of from the remote DL data areas 108 results in a higher net data rate from the perspective of the user 102.
  • the net data rate is the average of the data rates of the resident and remote DL data areas 110, 108. This design allows the user 102 to retrieve high volume content at a rate faster than that achievable if the same content was delivered primarily from the remote DL data areas 108.
  • a block diagram illustrates one embodiment of the system 100 in which a client computer 302 communicates with a web server 312, a resource server 314, and a configuration server 316 via the Internet 310.
  • the client computer 302 includes a web browser 304, a local resource disk (LRD) 306, and the resource utility 106.
  • the client computer 302 contains the user processor 104.
  • the web browser 304 is a typical software program providing the user 102 with access to the network.
  • the network is the Internet 310.
  • the resource utility 106 is a software program which receives requests for DL data elements from the web browser 304, and delivers the requested DL data elements to the web browser 304 from either the LRD 306 or the web server 312.
  • the resource utility 106 is not browser specific in operation.
  • the web server 312, one of the remote DL data areas 108 stores various DL data elements remote from the client computer 302 and contains a processor which, among other tasks, interacts with the resource utility 106.
  • the resource server 314 performs two primary functions. One function includes creating, on demand from the resource utility 106, a course selection web page specific to the user 102 which shows DL courses for which a specific user 102 is enrolled. Another function includes initializing the resource utility 106 (see below) .
  • the resource server 314 contains a processor which, among other tasks, interacts with the resource utility 106.
  • the configuration server 316 stores course content information in at least one database.
  • the course content information includes, but is not limited to, the file system structures of the resident and remote DL data areas 110, 108, user enrollment information relating to each DL course, and personal information relating to each user 102.
  • the configuration server 316 also contains a processor which, among other tasks, interacts with the resource server 314.
  • the configuration server 316 includes a structured query language (SQL) database.
  • SQL structured query language
  • the functionality of any combination of the web server 312, resource server 314, and configuration server 316 is performed by a single computer or any combination of computers .
  • the network facilitates communication between the resource utility 106 and the remote DL data areas 108.
  • the network is any medium for transmitting and receiving data between two processors.
  • the medium can be wired and/or wireless.
  • the network includes, but is not limited to, the Internet 310, an intranet, a wide area network, and a local area network. Those skilled in the art will recognize that the invention does not require any particular configuration of either the network or the computers connected thereto.
  • the storage media of the LRD 306, the resource server 314, the web server 312, and the configuration server 316 include, but are not limited to, fixed and removable media such as hard disks, floppy disks, CDROMs, DVDs, magnetic tapes, and other media accessible by a computer for storing information in a specific structure.
  • the LRD 306 or another one of the resident DL data areas 110 is a writeable medium
  • the DL data elements and their associated version dates received from the remote DL data areas 108 via the resource utility 106 are written to the LRD 306. In this manner, a subsequent request for that same DL data element will result in delivery from the LRD 306 instead of from the remote DL data area 108, further improving the net data rate.
  • the electronic storage devices of the resident and remote DL data areas 110, 108 are selected with the overall intent to obtain high net data rates while allowing the DL data elements to be updated transparent to the user 102.
  • the resident DL data area 110 is a CDROM and the remote DL data area 108 is a web site accessible via the Internet 310.
  • a hard disk is the resident DL data area 110, and a CDROM or web site is the remote DL data area 108.
  • This embodiment represents the situation where a computer with pre-installed DL courses has been leased or purchased by the user 102.
  • a CDROM or web site provides updates to the DL data elements.
  • a personal digital assistant is the resident DL data area 110 storing the DL data elements in memory.
  • a web site or removable memory card is the remote DL data area 108 containing the updates to the DL data elements stored in the PDA.
  • the resident and remote DL data areas 110, 108 can be any two data areas communicating with the user processor 104 at differing data rates .
  • the actual throughput of the system 100 depends on the speed of the network for retrieving DL data elements from the remote DL data area 108, the speed of the CDROM drive in retrieving DL data elements from the resident DL data area 110, and the speed and efficiency of the user processor 104.
  • applications other than the resource utility 106 may compete with the resource utility 106 for use of the user processor 104.
  • content delivery can reach data rates in excess of 250 kilobytes per second.
  • the DL data elements are the content associated with web pages. As designed by the content provider, these web pages are selectively linked to each other via hypertext link definitions.
  • the hypertext link definitions specify the location of a linked web page. By selecting one of the hypertext links, the content associated with the linked web page is presented to the user
  • the course designer provides the content and selective linking.
  • the content of the DL course includes educational material related to the DL course. Such educational material may include, but is not limited to, text, graphics, audio and video.
  • the web pages on the LRD 306 are identical in structure to the web pages residing on the web server 312.
  • Information on a computer is often represented as a sequence of instructions to be executed by a processor. Such information may be transmitted between computers, for example, in the form of a computer data signal embodied in a carrier wave.
  • the resource utility 106 can be considered such a computer data signal embodied in a carrier wave.
  • the sequence of instructions associated with the resource utility 106 include a code segment for receiving requests from the user 102 for specific DL data elements. Another code segment of the resource utility 106 determines which of the DL data areas contains the most recent version of the requested DL data element . Another code segment of the resource utility 106 causes the user processor 104 to receive the most recent version of the requested DL data element from the determined DL data area.
  • the system 100 also includes a method for initializing the resource utility 106.
  • the resource utility 106 communicates two initializing requests to the resource server 314.
  • the resource utility 106 requests the file system structures of the resident and remote DL data areas 110, 108.
  • the file system structures show the hierarchy and location of the files containing the content associated with the DL courses.
  • the file system structures and their associated dates are used by the resource utility 106 in servicing requests for DL data elements from the web browser 304.
  • the resource utility 106 also requests the text associated with a course selection web page from the resource server 314.
  • the other content associated with the course selection web page i.e., images and other multi-media
  • the initialization sequence for the resource utility 106 includes creating a connection to the resource server 314 and making a request for the file system structures of the resident and remote DL data areas 110, 108.
  • the resource server 314 communicates with the configuration server 316 to obtain the file system structures.
  • the resource utility 106 does not communicate directly with the configuration server 316.
  • the resource utility 106 stores the file system structures in a local memory area accessible by the resource utility 106.
  • the resource utility 106 receives and stores the file system structures for all the DL courses, regardless of the DL courses for which the user 102 has enrolled.
  • the resource utility 106 launches the web browser 304 with a uniform resource locator (URL) directing the web browser 304 to the resource utility 106.
  • the resource utility 106 receives a course selection web page request from the web browser 304 to obtain the course selection web page.
  • the resource utility 106 forwards this request to the resource server 314. If the request does not include authentication information, the resource server 314 responds with an authentication challenge.
  • the authentication information includes a header on the request which has login and password information indicating the identity of the user 102.
  • the resource utility 106 forwards the authentication challenge to the web browser 304.
  • the web browser 304 allows the user 102 to input login and password information.
  • the browser then reformats the course selection web page request to include the login and password information.
  • the resource utility 106 processes the re-formatted request by redirecting it to the resource server 314.
  • the web server 312 stores authentication information for the users 102.
  • the resource server 314 communicates with the web server 312 to authenticate the user 102. If the login and password information supplied by the user 102 matches an entry in a database maintained by the web server 312, then authentication is successful. The authentication process repeats if the supplied information does not match an entry in the database maintained by the web server 312.
  • the resource server 314 After a successful authentication, the resource server 314 creates the course selection web page specific to the user 102 initiating the request.
  • the course selection web page is received from the resource server 314 by the resource utility 106.
  • the resource utility 106 then redirects the course selection web page to the browser for display to the user 102.
  • the resource server 314 awaits requests from the resource utility 106 by listening on a certain port.
  • a port is a channel through which a computer can receive network communications. In a preferred embodiment, the resource server listens on port 8080.
  • the functionality of the resource server 314 is replaced by two servlets operating on the web server 314.
  • the web server 314 acts as the resource server 314.
  • Servlets are software programs which support the operations of the computer servers to which they are assigned.
  • the servlets are written in the Java computer language.
  • the resource utility 106 communicates directly with the web server 312. One servlet assists in creating the course selection web page while the other servlet assists in communicating the file system structures of the resident and remote DL data areas 110, 108 to the resource utility 106.
  • the configuration server 316 stores course content information in at least one database containing various tables.
  • the course content information includes, but is not limited to, the file system structures of the resident and remote DL data areas 110, 108, user enrollment information relating to each DL course, and personal information relating to each user 102.
  • one database table includes the file system structure and location of the DL data elements specific to each DL course in the remote DL data areas.
  • Another database table stores the file system structure and location of the DL data elements which are shared by the DL courses in the remote DL data areas .
  • Another database table stores information about each user 102 including the user's social security number, full name, email address, etc.
  • Another database table stores user enrollment information showing the DL courses in which a specific user 102 has enrolled.
  • the invention further includes at least one proxy server for implementing at least one firewall between the resource utility 106, the web server 312, and/or the configuration server 316.
  • the proxy server and firewall are software programs running on a computer that implement security features designed to protect selected computers. Typically, all transmissions between an the selected computers and an external network pass through the proxy server.
  • the proxy server can limit the communications that can be received by the selected computers to onl ' those communications received on specific ports. By reducing the number of ports available for communication, hacking or otherwise potentially harmful communications sent to the selected computers are minimized.
  • all web page requests from the web browser 304 which are forwarded by the resource utility 106 to the web server 312 pass through the proxy server before transmission over the network.
  • the delivered web page is first received by the proxy server and then forwarded to the resource utility 106.
  • the resource utility 106 then delivers the requested web page to the web browser 304 for access by the user 102.
  • the web browser 304 communicates only with the resource utility 106.
  • the web browser 304 and the resource utility 106 are configured to communicate via a "loopback" address.
  • the loopback address prevents the communications from being transmitted over the network, inherently bypassing the proxy server. In this manner, transmissions between the web browser 304 and the resource utility 106 remain local to the user processor 104. Such a configuration avoids unnecessary network traffic and reduces the load on the proxy server.
  • the loopback address is standard in the network interface industry, and is typically associated with Internet Protocol address 127.0.0.1.
  • the servlets listen for requests from the resource utility 106 on port 80. Since port 80 is a standard port for communications between computers on the Internet, this configuration is inherently reliable. That is, the use of non-standard ports, such as port 8080, may be problematic as various intermediate routers, gateways, or firewalls may block communications on those non-standard ports for security reasons.
  • the system 100 includes a method for delivering data to the user 102 in a DL environment.
  • One step includes storing at least one version of each of the DL data elements in the resident and remote DL data areas 110, 108.
  • Another step includes receiving a request from the user 102 for a specific DL data element available in one of the DL data areas. The requested DL data element is to be provided to the user processor 104 for use by the user 102 in the DL environment .
  • Another step includes determining which DL data area contains the most recent version of the requested DL data element.
  • Another step includes causing the user processor 104 to receive the most recent version of the requested DL data element from the determined DL data area.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A system for use by a user with a processor for delivering data to the user in a distance learning (DL) environment. A plurality of DL data areas store at least one version of at least one DL data element wherein at least one of the DL data areas is remote from the user's processor and accessible by the user's processor at a first data rate and at least one of the DL data areas is resident at the user's processor and accessible at a second data rate. A resource utility at the user's processor receives a request from the user for a specific DL data element available in one of the plurality of DL data areas, where the requested DL data element is to be provided to the user's processor for use by the user in the DL environment. The resource utility determines which one of the DL data areas contains the most recent version of the requested DL data element wherein the user's processor receives the most recent version of the requested DL data element form the determined DL data area.

Description

SYSTEM AND METHOD FOR DELIVERING CONTENT IN A COMPUTERIZED DISTANCE-LEARNING ENVIRONMENT
BACKGROUND OF THE INVENTION
1. Field of the Invention The present invention relates to a system and method in the field of computerized distance-learning. In particular, this invention relates to a system and method for requesting data with a processor in a distance-learning environment.
2. Description of the Prior Art A cache is a temporary data storage area. In the context of the Internet, a cache temporarily stores the data associated with visited web pages ("content") . Web pages are electronic documents that have been created using the hypertext markup language (HTML) or other language used for creating documents to be communicated over the Internet. For example, when a user first views a web page delivered from a remote site with a web browser, the web browser stores a copy of the viewed web page on the user's local machine. This first-time content retrieval happens at the data rate supported by the network connection. When the same web page is later requested for viewing by the user, the web browser delivers the requested web page from the local cache, unless the web page has been updated on the remote site. If the web browser determines that the requested web page has been updated on the remote site, then the web browser retrieves the updated web page from the remote site, stores a copy of the updated web page on the user's local machine, and displays the updated web page to the user. Subsequent requests for the same data will be much faster because the web browser maintains a copy of the requested data. In this manner, data transfers across the Internet occur only when the user requests a web page that has not been viewed previously or has been updated since the last viewing. Caches are user-configurable to a specific size limit or expiration date. When the cache exceeds the size limit, the data in the cache is generally purged in a first-in, first-out (FIFO) manner to maintain the desired size of the cache. When the cache reaches an expiration date (i.e., 60 days) , all data in the cache older than the expiration date is purged.
There is a need for an improved caching system for requesting data with a processor in a distance-learning environment which system improves the data delivery rate for first-time retrieval of content. There is also a need for a system which allows content developers to feasibly incorporate high-volume content into web sites. There is also a need for a system in a distance learning environment which allows software to be distributed on CDROM and updated via the Internet transparent to the user.
SUMMARY OF THE INVENTION
It is an object of this invention to provide a system for requesting data with a processor in a distance-learning environment which system improves the data delivery rate for first-time retrieval of content.
It is another object of this invention to provide a system which allows content developers to feasibly incorporate high-volume content into web sites. It is another object of this invention to provide a system in a distance learning environment which allows software to be distributed on CDROM and updated via the Internet transparent to the user.
In one form, the system of the invention is for use by a user with a processor for delivering data to the user in a distance learning (DL) environment. The system comprises a plurality of DL data areas and a resource utility. The plurality of DL data areas stores at least one version of at least one DL data element . At least one of the DL data areas is remote from the user's processor and accessible by the user's processor at a first data rate. At least one of the DL data areas is resident at the user's processor and accessible at a second data rate. The resource utility at the user's processor receives a request from the user for a specific DL data element available in one of the plurality of DL data areas. The requested DL data element is to be provided to the user's processor for use by the user in the DL environment. The resource utility determines which one of the DL data areas contains the most recent version of the requested DL data element. The user's processor receives the most recent version of the requested DL data element from the determined DL data area in response to the determination made by the resource utility. The most recent version of the requested DL data element is made available to the user in the DL environment . In another form, the invention includes a method for delivering data to a user in a distance learning (DL) environment. A plurality of DL data areas store at least one version of at least one DL data element . At least one of the DL data areas is remote from a user's processor and accessible by the user's processor at a first data rate. At least one of the DL data areas is resident at the user's processor and accessible at a second data rate. The method comprises : receiving a request from the user for a specific DL data element available in one of the plurality of DL data areas, said requested DL data element to be provided to the user's processor for use by the user in the DL environment; determining which one of the DL data areas contains the most recent version of the requested DL data element; and causing the user's processor to receive the most recent version of the requested DL data element from the determined DL data area whereby the most recent version of the requested DL data element is available to the user in the DL environment . In yet another form, the invention includes a computer data signal embodied in a carrier wave. The computer data signal comprises computer instructions for delivering data to a user in a distance learning (DL) environment. A plurality of DL data areas store at least one version of at least one DL data element. At least one of the DL data areas is remote from a user's processor and accessible by the user's processor at a first data rate. At least one of the DL data areas is resident at the user's processor and accessible at a second data rate. The computer instructions comprise : a first code segment for receiving a request from the user for a specific DL data element available in one of the plurality of DL data areas, said requested DL data element to be provided to the user's processor for use by the user in the DL environment; a second code segment for determining which one of the DL data areas contains the most recent version of the requested DL data element; and a third code segment for causing the user's processor to receive the most recent version of the requested DL data element from the determined DL data area whereby the most recent version of the requested DL data element is available to the user in the DL environment . Other objects and features will be in part apparent and in part pointed out hereinafter.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of one embodiment of the system of the invention illustrating the main components of the system.
FIG. 2 is a flow chart of one embodiment of the invention in which the resource utility services user requests for data. FIG. 3 is a block diagram of one embodiment of the system in which the client computer communicates with the web server, resource server, and configuration server via the Internet . Corresponding reference characters indicate corresponding parts throughout the drawings.
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
In general, a system and method (hereinafter, "the system 100") of the invention is shown in block diagram form in FIG. 1. The system 100 delivers data to a user 102 in a computerized distance learning (DL) environment. In the DL environment, the delivered data includes computerized instruction between at least one instructor and at least one user 102 remote from the instructor. The computerized instruction in the DL environment is organized into DL courses which contain educational material related to various subjects. Additionally, the DL environment may include a table of contents for each DL course, a DL course notebook, a communications center, a search engine, an assessment tool, and a manual. The table of contents shows the organization of the DL course. The DL course notebook allows the user to create and review electronic notes. The communications center allows the user to communicate with other users and/or a DL course instructor. The search engine, responsive to user input, locates specific DL data elements associated with the DL course. The assessment tool grades the user's progress through the DL course. The manual provides instructions to the user relating to the DL environment . During the process of instruction, the user 102 interacts with at least one user processor 104 to request and receive data. The user processor 104 can be part of any device which is capable of transmitting and receiving data, including, but not limited to, personal computers, laptop computers, handheld personal digital assistants, and cellular telephones. The user processor 104 requests and receives data from DL data areas via a resource utility 106 (see below) . The user processor 104 communicates with different DL data areas at differing data rates. In one embodiment, the requested data includes data such as the content associated with a web page. Such content includes, but is not limited to, text, graphics, audio, video, and other data downloadable from a web site. In another embodiment, multiple user processors operate cooperatively to further enhance data delivery to the user 102. As shown in Figure 1, N resident DL data areas 110 are part of the system 100 and are resident to the user processor 104. In addition, M remote DL data areas 108 are part of the system 100 and are remote from the user processor 104. Each of the DL data areas stores DL data elements. In a preferred embodiment, different DL data areas store different versions of the same DL data element and the user processor 104 accesses the resident DL data areas 110 at a faster rate than the remote DL data areas 108. In classifying a specific DL data area as either resident 110 or remote 108, the data rate is compared relative to the other DL data areas. If the data rate at which the user processor 104 accesses the specific DL data area is relatively fast compared to the data rates of the other DL data areas, then the specific DL data area is considered to be one of the resident DL data areas 110. If the data rate at which the user processor 104 accesses the specific DL data area is relatively slow compared to the data rates of the other DL data areas, then the specific DL data area is considered to be one of the remote DL data areas 108.
For example, if the DL data elements are web pages, one of the resident DL data areas 110, such as a CDROM, stores a static version of a web page while one of the remote DL data areas 108, such as a hard disk accessible through a network, stores updates to that static version. Updates can either supersede and/or replace the static version. In a preferred embodiment, the updates supercede the static version. In an alternative embodiment in which the resident DL data area 110 is a medium writeable by the user processor 104, the updates replace the static DL data elements in the resident DL data area 110. Referring next to Figure 2, a flow chart illustrates one embodiment of the invention in which the resource utility services user 102 requests for data. When the user 102 requests at 202 a specific DL data element, the resource utility 106 receives the request and determines at 204 which DL' data area contains the most recent version of the specific DL data element. In one embodiment, the resource utility 106 determines the DL data area which contains the most recent version of the specific DL data element by comparing the dates associated with the corresponding DL data elements in each DL data area. In an alternative embodiment, each DL data area has only one date for all the DL data elements in that DL data area. In this embodiment, the resource utility 106 determines the DL data area which contains the most recent version of the specific DL data element by comparing the dates associated with the DL data areas containing the corresponding DL data element . The singleton date associated with each DL data area is stored as a designated DL data element accessible by the resource utility 106. The resource utility 106 then requests the DL data element from the determined DL data area via a processor with access to the determined DL data area. The processor with access to the resident DL data area 110 is the user processor 104. The resource utility 106 either requests at 206 the DL data element from one of the resident DL data areas 110 or requests at 208 the DL data element from one of the remote DL data areas 108. If more than one DL data area is determined to contain the most recent version of the DL data element, then the resource utility 106 requests the DL data element from one of the resident DL data areas 110 determined to contain the DL data element . The resource utility 106 receives the specific DL data element from the determined DL data area (either resident at 210 or remote 212) . In a preferred embodiment, the resource utility 106 directly reads the DL data element from the determined DL data area via a processor with access to the determined DL data area.
The resource utility 106 forwards at 214 the specific DL data element received from the determined DL data area to the user processor 104. The user 102 then further processes the specific DL data element. In one embodiment where the DL data areas store content associated with a web page, the user 102 views, listens to, executes, modifies, or otherwise further processes the specific DL data element .
In a preferred embodiment, the resident DL data areas 110 contain appropriate versions of the DL data elements such that the resident DL data areas 110 service the majority of the requests for specific DL data elements. Delivering the majority of the DL data elements from the resident DL data areas 110 instead of from the remote DL data areas 108 results in a higher net data rate from the perspective of the user 102. The net data rate is the average of the data rates of the resident and remote DL data areas 110, 108. This design allows the user 102 to retrieve high volume content at a rate faster than that achievable if the same content was delivered primarily from the remote DL data areas 108.
Referring next to Figure 3, a block diagram illustrates one embodiment of the system 100 in which a client computer 302 communicates with a web server 312, a resource server 314, and a configuration server 316 via the Internet 310. The client computer 302 includes a web browser 304, a local resource disk (LRD) 306, and the resource utility 106. In this embodiment, the client computer 302 contains the user processor 104. The web browser 304 is a typical software program providing the user 102 with access to the network. In this embodiment, the network is the Internet 310. The LRD 306, one of the resident DL data areas 110, stores various DL data elements local to the client computer 302. The resource utility 106 is a software program which receives requests for DL data elements from the web browser 304, and delivers the requested DL data elements to the web browser 304 from either the LRD 306 or the web server 312. The resource utility 106 is not browser specific in operation. The web server 312, one of the remote DL data areas 108, stores various DL data elements remote from the client computer 302 and contains a processor which, among other tasks, interacts with the resource utility 106. The resource server 314 performs two primary functions. One function includes creating, on demand from the resource utility 106, a course selection web page specific to the user 102 which shows DL courses for which a specific user 102 is enrolled. Another function includes initializing the resource utility 106 (see below) . The resource server 314 contains a processor which, among other tasks, interacts with the resource utility 106. The configuration server 316 stores course content information in at least one database. The course content information includes, but is not limited to, the file system structures of the resident and remote DL data areas 110, 108, user enrollment information relating to each DL course, and personal information relating to each user 102. The configuration server 316 also contains a processor which, among other tasks, interacts with the resource server 314. In a preferred embodiment, the configuration server 316 includes a structured query language (SQL) database. In a preferred embodiment, the functionality of any combination of the web server 312, resource server 314, and configuration server 316 is performed by a single computer or any combination of computers .
In a preferred embodiment as shown in Figure 3 , the network facilitates communication between the resource utility 106 and the remote DL data areas 108. The network is any medium for transmitting and receiving data between two processors. The medium can be wired and/or wireless. The network includes, but is not limited to, the Internet 310, an intranet, a wide area network, and a local area network. Those skilled in the art will recognize that the invention does not require any particular configuration of either the network or the computers connected thereto. The storage media of the LRD 306, the resource server 314, the web server 312, and the configuration server 316 include, but are not limited to, fixed and removable media such as hard disks, floppy disks, CDROMs, DVDs, magnetic tapes, and other media accessible by a computer for storing information in a specific structure. In a preferred embodiment in which the LRD 306 or another one of the resident DL data areas 110 is a writeable medium, the DL data elements and their associated version dates received from the remote DL data areas 108 via the resource utility 106 are written to the LRD 306. In this manner, a subsequent request for that same DL data element will result in delivery from the LRD 306 instead of from the remote DL data area 108, further improving the net data rate.
The electronic storage devices of the resident and remote DL data areas 110, 108 are selected with the overall intent to obtain high net data rates while allowing the DL data elements to be updated transparent to the user 102. In a preferred embodiment, the resident DL data area 110 is a CDROM and the remote DL data area 108 is a web site accessible via the Internet 310. In an alternative embodiments, a hard disk is the resident DL data area 110, and a CDROM or web site is the remote DL data area 108. This embodiment represents the situation where a computer with pre-installed DL courses has been leased or purchased by the user 102. A CDROM or web site provides updates to the DL data elements. In another alternative embodiment, a personal digital assistant (PDA) is the resident DL data area 110 storing the DL data elements in memory. A web site or removable memory card is the remote DL data area 108 containing the updates to the DL data elements stored in the PDA. As those skilled in the art will note, the resident and remote DL data areas 110, 108 can be any two data areas communicating with the user processor 104 at differing data rates .
The actual throughput of the system 100 depends on the speed of the network for retrieving DL data elements from the remote DL data area 108, the speed of the CDROM drive in retrieving DL data elements from the resident DL data area 110, and the speed and efficiency of the user processor 104. For example, applications other than the resource utility 106 may compete with the resource utility 106 for use of the user processor 104. Typically, if the CDROM has 16X sampling and the user processor 104 has a 266MHz clock speed, content delivery can reach data rates in excess of 250 kilobytes per second.
In a preferred embodiment, the DL data elements are the content associated with web pages. As designed by the content provider, these web pages are selectively linked to each other via hypertext link definitions. The hypertext link definitions specify the location of a linked web page. By selecting one of the hypertext links, the content associated with the linked web page is presented to the user
102. In the context of a DL course, the course designer provides the content and selective linking. The content of the DL course includes educational material related to the DL course. Such educational material may include, but is not limited to, text, graphics, audio and video. The web pages on the LRD 306 are identical in structure to the web pages residing on the web server 312.
Information on a computer is often represented as a sequence of instructions to be executed by a processor. Such information may be transmitted between computers, for example, in the form of a computer data signal embodied in a carrier wave. The resource utility 106 can be considered such a computer data signal embodied in a carrier wave. The sequence of instructions associated with the resource utility 106 include a code segment for receiving requests from the user 102 for specific DL data elements. Another code segment of the resource utility 106 determines which of the DL data areas contains the most recent version of the requested DL data element . Another code segment of the resource utility 106 causes the user processor 104 to receive the most recent version of the requested DL data element from the determined DL data area.
The system 100 also includes a method for initializing the resource utility 106. During initialization, the resource utility 106 communicates two initializing requests to the resource server 314. The resource utility 106 requests the file system structures of the resident and remote DL data areas 110, 108. The file system structures show the hierarchy and location of the files containing the content associated with the DL courses. The file system structures and their associated dates are used by the resource utility 106 in servicing requests for DL data elements from the web browser 304. During initialization, the resource utility 106 also requests the text associated with a course selection web page from the resource server 314. The other content associated with the course selection web page (i.e., images and other multi-media) is delivered from one of the resident or remote DL data areas 110, 108, whichever data area has the most recent version of the content .
In particular, the initialization sequence for the resource utility 106 includes creating a connection to the resource server 314 and making a request for the file system structures of the resident and remote DL data areas 110, 108. The resource server 314 communicates with the configuration server 316 to obtain the file system structures. In a preferred embodiment, the resource utility 106 does not communicate directly with the configuration server 316.
The resource utility 106 stores the file system structures in a local memory area accessible by the resource utility 106. In a preferred embodiment, the resource utility 106 receives and stores the file system structures for all the DL courses, regardless of the DL courses for which the user 102 has enrolled. The resource utility 106 launches the web browser 304 with a uniform resource locator (URL) directing the web browser 304 to the resource utility 106. The resource utility 106 receives a course selection web page request from the web browser 304 to obtain the course selection web page. The resource utility 106 forwards this request to the resource server 314. If the request does not include authentication information, the resource server 314 responds with an authentication challenge. The authentication information includes a header on the request which has login and password information indicating the identity of the user 102. The resource utility 106 forwards the authentication challenge to the web browser 304. The web browser 304 allows the user 102 to input login and password information. The browser then reformats the course selection web page request to include the login and password information. The resource utility 106 processes the re-formatted request by redirecting it to the resource server 314. The web server 312 stores authentication information for the users 102. The resource server 314 communicates with the web server 312 to authenticate the user 102. If the login and password information supplied by the user 102 matches an entry in a database maintained by the web server 312, then authentication is successful. The authentication process repeats if the supplied information does not match an entry in the database maintained by the web server 312.
After a successful authentication, the resource server 314 creates the course selection web page specific to the user 102 initiating the request. The course selection web page is received from the resource server 314 by the resource utility 106. The resource utility 106 then redirects the course selection web page to the browser for display to the user 102. The resource server 314 awaits requests from the resource utility 106 by listening on a certain port. A port is a channel through which a computer can receive network communications. In a preferred embodiment, the resource server listens on port 8080.
In an alternative embodiment, the functionality of the resource server 314 is replaced by two servlets operating on the web server 314. In this embodiment, the web server 314 acts as the resource server 314. Servlets are software programs which support the operations of the computer servers to which they are assigned. In a preferred embodiment of the invention, the servlets are written in the Java computer language. In this embodiment, the resource utility 106 communicates directly with the web server 312. One servlet assists in creating the course selection web page while the other servlet assists in communicating the file system structures of the resident and remote DL data areas 110, 108 to the resource utility 106.
The configuration server 316 stores course content information in at least one database containing various tables. The course content information includes, but is not limited to, the file system structures of the resident and remote DL data areas 110, 108, user enrollment information relating to each DL course, and personal information relating to each user 102. In a preferred embodiment, one database table includes the file system structure and location of the DL data elements specific to each DL course in the remote DL data areas. Another database table stores the file system structure and location of the DL data elements which are shared by the DL courses in the remote DL data areas . Another database table stores information about each user 102 including the user's social security number, full name, email address, etc. Another database table stores user enrollment information showing the DL courses in which a specific user 102 has enrolled. Another database table stores the file system structure and location of the DL data elements specific to each DL course in the resident DL data areas. Another database table stores the file system structure and location of the DL data elements which are shared by the DL courses in the resident DL data areas . In one embodiment, the invention further includes at least one proxy server for implementing at least one firewall between the resource utility 106, the web server 312, and/or the configuration server 316. The proxy server and firewall are software programs running on a computer that implement security features designed to protect selected computers. Typically, all transmissions between an the selected computers and an external network pass through the proxy server. For example, the proxy server can limit the communications that can be received by the selected computers to onl 'those communications received on specific ports. By reducing the number of ports available for communication, hacking or otherwise potentially harmful communications sent to the selected computers are minimized.
In a preferred embodiment, all web page requests from the web browser 304 which are forwarded by the resource utility 106 to the web server 312 pass through the proxy server before transmission over the network. The delivered web page is first received by the proxy server and then forwarded to the resource utility 106. The resource utility 106 then delivers the requested web page to the web browser 304 for access by the user 102.
Typically, browsers are configured to communicate directly with proxy servers. However, in the invention, to implement the functionality of the resource utility 106, the web browser 304 communicates only with the resource utility 106. The web browser 304 and the resource utility 106 are configured to communicate via a "loopback" address. The loopback address prevents the communications from being transmitted over the network, inherently bypassing the proxy server. In this manner, transmissions between the web browser 304 and the resource utility 106 remain local to the user processor 104. Such a configuration avoids unnecessary network traffic and reduces the load on the proxy server. The loopback address is standard in the network interface industry, and is typically associated with Internet Protocol address 127.0.0.1.
In the embodiment in which the resource server 314 has been replaced by the servlets operating on the web server 312, the servlets listen for requests from the resource utility 106 on port 80. Since port 80 is a standard port for communications between computers on the Internet, this configuration is inherently reliable. That is, the use of non-standard ports, such as port 8080, may be problematic as various intermediate routers, gateways, or firewalls may block communications on those non-standard ports for security reasons.
In operation, the system 100 includes a method for delivering data to the user 102 in a DL environment. One step includes storing at least one version of each of the DL data elements in the resident and remote DL data areas 110, 108. Another step includes receiving a request from the user 102 for a specific DL data element available in one of the DL data areas. The requested DL data element is to be provided to the user processor 104 for use by the user 102 in the DL environment . Another step includes determining which DL data area contains the most recent version of the requested DL data element. Another step includes causing the user processor 104 to receive the most recent version of the requested DL data element from the determined DL data area.
In view of the above, it will be seen that the several objects of the invention are achieved and other advantageous results attained.
As various changes could be made in the above constructions, products, and methods without departing from the scope of the invention, it is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative and not in a limiting sense.

Claims

WHAT IS CLAIMED IS:
1. A system for use by a user with a processor for delivering data to the user in a distance learning (DL) environment comprising: a plurality of DL data areas for storing at least one version of at least one DL data element wherein at least one of the DL data areas is remote from the user's processor and accessible by the user's processor at a first data rate and at least one of the DL data areas is resident at the user's processor and accessible at a second data rate; and a resource utility at the user's processor for receiving a request from the user for a specific DL data element available in one of the plurality of DL data areas, said requested DL data element to be provided to the user's processor for use by the user in the DL environment, said resource utility determining which one of the DL data areas contains the most recent version of the requested DL data element wherein the user's processor receives the most recent version of the requested DL data element from the determined DL data area in response to the determination made by the resource utility whereby the most recent version of the requested DL data element is available to the user in the DL environment .
2. The system of claim 1 wherein a specific remote DL data area and a specific resident DL data area each contain versions of the requested DL data element, and wherein the resource utility determines which one of the specific DL data areas contains the most recent version of the requested DL data element by comparing dates associated with the versions .
3. The system of claim 1 wherein at least one of the DL data elements includes educational material related to the DL environment .
4. The system of claim 1 wherein at least one DL data element is selectively linked to at least one other DL data element .
5. The system of claim 1 wherein at least one of the DL data elements is a hypertext document containing at least one hypertext link definition that references at least one other DL data element .
6. The system of claim 5 wherein the user initiates the request by selecting the hypertext link definition.
7. The system of claim 5 further comprising a browser operative with the user's processor for displaying the hypertext documents.
8. The system of claim 1 wherein the remote DL data areas are accessible by the user's processor via a network.
9. The system of claim 1 wherein the first rate is different from the second rate.
10. The system of claim 1 wherein the DL data areas resident at the user's processor store primary DL data elements and the DL data areas remote from the user's processor store secondary DL data elements which update the primary DL data elements.
11. The system of claim 1 further comprising a configuration server for storing course content information.
12. The system of claim 11, wherein the configuration server is remote from the user's processor.
13. The system of claim 1 further comprising a resource server responsive to the resource utility for obtaining user enrollment information and initializing the resource utility.
14. The system of claim 13, wherein the resource server is remote from the user's processor.
15. The system of claim 13 wherein the resource server authenticates the user by comparing first data input by the user with second data available to the resource server to verify the identity of the user.
16. The system of claim 1 wherein the resident and remote DL data areas include fixed media and/or removable media .
17. The system of claim 1 wherein a DL course comprises a selected set of DL data elements, said system further comprising: a table of contents for showing the organization of the DL course; a DL course notebook allowing the user to create and review electronic notes; a communications center allowing the user to communicate with other users and/or a DL course instructor; a search engine responsive to user input, said search tool locating specific DL data elements associated with the DL course; an assessment tool for grading the user's progress through the DL course; and a manual for providing instructions to the user relating to the DL environment.
18. A method for delivering data to a user in a distance learning (DL) environment, wherein a plurality of DL data areas store at least one version of at least one DL data element and wherein at least one of the DL data areas is remote from a user's processor and accessible by the user's processor at a first data rate and at least one of the DL data areas is resident at the user's processor and accessible at a second data rate, said method comprising: receiving a request from the user for a specific DL data element available in one of the plurality of DL data areas, said requested DL data element to be provided to the user's processor for use by the user in the DL environment; determining which one of the DL data areas contains the most recent version of the requested DL data element; and causing the user's processor to receive the most recent version of the requested DL data element from the determined DL data area whereby the most recent version of the requested DL data element is available to the user in the DL environment .
19. The method of claim 18 wherein a specific remote DL data area and a specific resident DL data area each contain versions of the requested DL data element, wherein the step of determining comprises the step of comparing the dates associated with the versions.
20. The method of claim 18 wherein at least one DL data elements is selectively linked to at least one other DL data element .
21. The method of claim 18 wherein at least one of the DL data elements is a hypertext document containing at least one hypertext link definition that references at least one other DL data element .
22. The method of claim 21 further comprising the step of the user initiating the request by selecting the hypertext link definition.
23. The method of claim 21 further comprising the step of a browser operative with the user's processor displaying the hypertext documents.
24. The method of claim 18 wherein the remote DL data areas are accessible by the user's processor via a network.
25. The method of claim 18 wherein the first rate is different from the second rate.
26. The method of claim 18 further comprising the steps of storing primary DL data elements at the DL data areas resident at the user's processor and storing secondary DL data elements at the DL data areas remote from the user's processor, wherein said secondary DL data elements update said primary DL data elements.
27. The method of claim 18, wherein at least one of the DL data elements is a hypertext document containing at least one hypertext link definition that references at least one other DL data element, wherein prior to the step of receiving, said method further comprising the steps of: requesting a first data structure representing the organization and content of the remote DL data areas and a second data structure representing the organization and content of the resident DL data areas; launching a browser with a specific uniform resource locator (URL) request; receiving the URL request from the browser; forwarding the URL request to a resource server; authenticating the user to the resource server; receiving in response to a successful authentication a course selection hypertext document showing the courses available to the user; receiving the course selection hypertext document from the resource server; forwarding the course selection hypertext document to the browser; and allowing the user to select a course from the course selection hypertext document .
28. The method of claim 27 wherein the step of authenticating comprises the steps of: receiving an authorization challenge from the resource server in response to the URL request; forwarding the authorization challenge to the browser; receiving a re-formatted URL request with authentication information supplied by the user via the browser; receiving the re-formatted URL request; and forwarding the re-formatted URL request to the resource server.
29. A computer data signal embodied in a carrier wave comprising computer instructions for delivering data to a user in a distance learning (DL) environment, wherein a plurality of DL data areas store at least one version of at least one DL data element and wherein at least one of the DL data areas is remote from a user's processor and accessible by the user's processor at a first data rate and at least one of the DL data areas is resident at the user's processor and accessible at a second data rate, said computer instructions comprising: a first code segment for receiving a request from the user for a specific DL data element available in one of the plurality of DL data areas, said requested DL data element to be provided to the user's processor for use by the user in the DL environment; a second code segment for determining which one of the DL data areas contains the most recent version of the requested DL data element; and a third code segment for causing the user's processor to receive the most recent version of the requested DL data element from the determined DL data area whereby the most recent version of the requested DL data element is available to the user in the DL environment .
PCT/US2000/041039 2000-09-29 2000-09-29 System and method for delivering content in a computerized distance-learning environment WO2002029762A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
AU2001214949A AU2001214949A1 (en) 2000-09-29 2000-09-29 System and method for delivering content in a computerized distance-learning environment
PCT/US2000/041039 WO2002029762A1 (en) 2000-09-29 2000-09-29 System and method for delivering content in a computerized distance-learning environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2000/041039 WO2002029762A1 (en) 2000-09-29 2000-09-29 System and method for delivering content in a computerized distance-learning environment

Publications (1)

Publication Number Publication Date
WO2002029762A1 true WO2002029762A1 (en) 2002-04-11

Family

ID=21742144

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/041039 WO2002029762A1 (en) 2000-09-29 2000-09-29 System and method for delivering content in a computerized distance-learning environment

Country Status (2)

Country Link
AU (1) AU2001214949A1 (en)
WO (1) WO2002029762A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5904485A (en) * 1994-03-24 1999-05-18 Ncr Corporation Automated lesson selection and examination in computer-assisted education
WO1999044162A1 (en) * 1998-02-24 1999-09-02 Luc Bessette Method and apparatus for the management of data files
US6055514A (en) * 1992-03-20 2000-04-25 Wren; Stephen Corey System for marketing foods and services utilizing computerized centraland remote facilities

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6055514A (en) * 1992-03-20 2000-04-25 Wren; Stephen Corey System for marketing foods and services utilizing computerized centraland remote facilities
US5904485A (en) * 1994-03-24 1999-05-18 Ncr Corporation Automated lesson selection and examination in computer-assisted education
WO1999044162A1 (en) * 1998-02-24 1999-09-02 Luc Bessette Method and apparatus for the management of data files

Also Published As

Publication number Publication date
AU2001214949A1 (en) 2002-04-15

Similar Documents

Publication Publication Date Title
US8429201B2 (en) Updating a database from a browser
US6105028A (en) Method and apparatus for accessing copies of documents using a web browser request interceptor
US5991760A (en) Method and apparatus for modifying copies of remotely stored documents using a web browser
US6480853B1 (en) Systems, methods and computer program products for performing internet searches utilizing bookmarks
US6610105B1 (en) Method and system for providing resource access in a mobile environment
US6772144B2 (en) Method and apparatus for applying an adaptive layout process to a layout template
US6061686A (en) Updating a copy of a remote document stored in a local computer system
US6564217B2 (en) Data communication system that transmits the selected contents and menu onto the network for delivery to the client computer
US6457060B1 (en) Method and apparatus for flexibly linking to remotely located content on a network server through use of aliases
US5966705A (en) Tracking a user across both secure and non-secure areas on the Internet, wherein the users is initially tracked using a globally unique identifier
US6145003A (en) Method of web crawling utilizing address mapping
US6907423B2 (en) Search engine interface and method of controlling client searches
US8607135B2 (en) Radio station buttons
US6571245B2 (en) Virtual desktop in a computer network
US7599915B2 (en) Portal linking tool
US6789201B2 (en) Anti-virus toolbar system and method for use with a network browser
US20050108418A1 (en) Method and system for updating/reloading the content of pages browsed over a network
EP0848338A1 (en) Server providing documents according to user profiles
EP0848339B1 (en) Server with automatic loading of menus
US20070162562A1 (en) Method and system for supporting information access and record media therefor
JP2000242658A (en) Individual information managing device, and customizing device
JP2000236349A (en) Remote bookmarking method, device and medium for radio client device
US20080033918A1 (en) Systems, methods and computer program products for supplemental data communication and utilization
EP0848336A1 (en) Server with automatic update tracking
US20060004785A1 (en) Saving multiple browser instances as a selectable web project

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP