Performance-Based Testing System and Method Employing Emulation and Virtualization

Information

  • Patent Application
  • 20080070222
  • Publication Number
    20080070222
  • Date Filed
    August 29, 2006
    17 years ago
  • Date Published
    March 20, 2008
    16 years ago
Abstract
A system permitting virtual server images to be reused and repurposed to provide for different application environments for performance-based testing by providing a plurality of virtual hard drive images.
Description

BRIEF DESCRIPTIONS OF DRAWINGS


FIG. 1 illustrates in diagrammatic form an exemplary system server of the present invention; and



FIG. 2 is a diagram of the logical layers of the hardware and software architecture for an emulated operating environment in computer system.





DETAILED DESCRIPTION OF THE INVENTION

The demonstration of the knowledge of certain facts in a test does not equate with the ability of the test taker to apply that knowledge in a meaning way. In order to more appropriately adjudge learning and understanding, it has been suggested that performance-based testing be employed. One type of performance-based testing is interactive computer simulation, wherein test items simulate the behavior of a particular software product and ask the user to perform a specified function correctly within that simulation.


A problem associated with interactive computer simulation is that it may be desirable that the test taker demonstrate efficiency with respect to a number of software products not designed to run on the same operating system. Testing of skill in using each of these products in the past might require the employment of a number of different computers. Recently, however, emulation strategies have been developed in the computing environment which allows one of more disparate family software programs to be run on a common piece of hardware.



FIG. 2 illustrates a diagram of the logical layers of the hardware and software architecture for an exemplary conventional emulated operating environment in computer system 107. Emulation program 111 runs on host operating system 109 and host hardware architecture 108. Emulation program 111 emulates guest computer system 113, including guest operating system 115. Guest software application 117 runs on guest operating system 115. In the emulated operating environment of FIG. 2, because of the operation of emulation program 111, guest software application 117 can run on computer system 107 even though guest software application 117 might be designed to run on an operating system that may be generally incompatible with host operating system 109 and host hardware architecture 108.


Such emulation strategies allow for a single piece of hardware, such as a server, to be segregated so as to permit the running of software applications on the common hardware although such applications are normally only executable using a different operating system.


In embodiments of the present invention, emulation strategies are employed to permit individual test takers to be challenged with a number of different software applications irrespectively of the operating system for which they were configured. Such system, for example, would allow a test taker to be tested on his or her skills with Macintosh drawing programs as well as Microsoft Word. However, it is recognized herein that segregation of a server into a number of stand alone virtual servers in itself does not overcome the problem faced by administrators of performance-based tests in having to constantly update and reformat testing to assure that subsequent test takers do not learn from previous test takers.


To overcome such problem, in one embodiment there is provided a number of virtual hard drive images, each of which is directed to a different scenario executable by an application hosted by the virtual server. Such virtual hard drive images can be used by the virtual server image to recreate different application environments, and to proffer different test takers different data within the same application. By changing out the different virtual hard drive image the virtual server image can be reused and re-purposed dramatically reducing the cost to develop performance-based assessment scenarios.


For example, a test taker seeking to show his or her abilities with respect to Visio, or another proprietary drawing program, may be asked to prepare certain charts or drawings. If the test taker is seeking employment in the marketing department of an electrical engineering company, the virtual hard drive image associated with the program may be selected from one or more virtual hard drive images that propose a scenario that requires the test taker to demonstrate proficiency in importing drawings or preparing flow charts. If the test taker is seeking employment as an electrical engineer, the virtual hard drive image for testing purposes may be selected from one or more virtual hard drive images proposing a scenario that requires the test taker to prepare a electric circuit diagram. In each case, the test taker is tested with respect to the test taker's abilities with the drawing program, but each is faced with real-life scenarios that are important to their anticipated tasks at the company.


In one embodiment, the particular virtual hard drive image selected for testing purposes of the application may be in whole or in part selected at random. For example, one test taker electrical engineer may be faced with the task of computer drafting one type of electrical circuit, while another may be faced with the task of computer drafting another type of electrical circuit. The initial selection of virtual hard drive images may be selected in a directed fashion (e.g., an electrical circuit diagram scenario); however, the final selection of which virtual hard drive image is presented to any particular test taker used may be at random. Randomization is useful in preventing one test taker from affecting the response of another test taker, at the time of the test, or at a later date.


The scenario presented to a test taker may be in the form of a series of commands or requests for the test taker to perform. For example, the test taker may be requested to use a software program to determine the stresses and strains on a particular engineered structure, to resolve an IT problem indicated by the scenario to have occurred, or to summarize data necessary to resolve a scenario.


In one embodiment there is provided a software program which automatically grades a test taker's responses to a given PBT. Such program is configured to compare responses (keystrokes, etc,) against a library of responses, each of which has been given a pre-determined point grade value. Such library of responses may be compiled from prior responses or may be actively compiled as a test taker takes the PBT (with appropriate “grading” added thereafter). If a response of a test taker is not found in the library, manual grading may be required.


Now turning to FIG. 1, there is shown an exemplary embodiment system server 105 of the present disclosure. Such system server 105 comprises a server partitioned into a number of virtual servers, e.g., virtual server no. 1 (10) to virtual server no. N (10′). Each virtual server may have one or more users (5, 5′, 5″, 5′″, and 5″″) that are authorized to have root (15, 15′) access to the virtual server. Each virtual server may be designed to emulate different system software (30, 30′) which may make use of different system libraries (35, 35′). System libraries (35, 35′) may comprise a collection of precompiled routines that system software (30, 30′) may uses and which allow linkage to a number of programs.


System server 105 comprises a virtualization software layer 40 which permits creation and execution of different virtual servers (10 to 10′) on the server. System server 105 runs on its own host operating system 45, which may be distinct from the virtual server environments. System server 105 comprises both software and hardware (50) components, and typically is run in a network environment (55) allowing for access by multiple workstations simultaneously.


Each virtual server (10 to 10′) is operatively configured to allow for section of among a plurality of application images (85/90 to 100) and a plurality of virtual hard drive images (60, 65, 70, 75 to 80) to permit a user (5, 5′, 5″, 5′″, and 5″″) to allow for different scenarios with respect to any application program for various test takers based upon the selection of the virtual server (10 to 10′), application image (85/90 to 100) and virtual hard drive image (60, 65, 70, 75 to 80) selected. Virtual hard drive image (60, 65, 70, 75 to 80) may be selected randomly, in whole or in part, to provide for differing scenarios being tendered to test takers on a random basis. By randomly changing the scenario with which a test taker may be confronted, the test taker is not allowed to cheat or rotely learn to pass the test.


Statement Regarding Preferred Embodiments

While the invention has been described with respect to the foregoing, those skilled in the art will readily appreciate that various changes and/or modifications can be made to the invention without departing from the spirit or scope of the invention as defined by the appended claims.

Claims
  • 1. A computer implemented system of providing a set of performance based tests to a test taker, said system comprising: a server having a base operating system;an emulator residing on said server, said emulator emulating at least one operating system in an operating system family;data storage operatively associated with said emulator, said data storage storing an image of at least one application program executable using the said at least one emulated operating system, and said data storage storing a plurality of distinct virtual hard drive images executable using the said at least one emulated operating system, each virtual hard drive being operatively configured to portray different scenarios to said test taker.
  • 2. The computer implemented system of claim 1, wherein said emulator's operating system is distinct from the said server's base operating system.
  • 3. The computer implemented system of claim 1, wherein said emulator's operating system is not distinct from the said server's base operating system.
  • 4. The computer implemented system of claim 1, wherein said emulator is a software emulator.
  • 5. The computer implemented system of claim 1, wherein said emulator is a hardware emulator.
  • 6. The computer implemented system of claim 1, wherein said emulator comprises both hardware and software.
  • 7. The computer implemented system of claim 1, wherein said data storage is part of said server.
  • 8. The computer implemented system of claim 1, wherein said data storage is remote from said server.
  • 9. The computer implemented system of claim 1, wherein one or more virtual hard drive images is operatively associated with two or more application program images.
  • 10. The computer implemented system of claim 1, further comprising a random selection software operatively configured to randomly select one virtual hard drive image from among a plurality of virtual hard drive images.
  • 11. The computer implemented system of claim 1, wherein said portrayal with respect to one or more virtual hard drives requires a set of responses from said test taker.
  • 12. The computer implemented system of claim 11, further comprising a program defining a set of rules for automatically analyzing the appropriateness of the set of responses from said test taker with respect to said portrayal.
  • 13. A computer implemented method for providing different performance based tests utilizing software to a plurality of test takers, said method comprising: emulating operating systems on a single server, to form a plurality of virtual server images;associating with each of said plurality of virtual server images a plurality of hard drive images representative of a plurality of different performance-based tests, and a plurality of application images executable using one of said plurality of virtual server images to allow for interaction of one or more application images with at least one of said plurality of hard drive images.
  • 14. The computer implemented method of claim 13, wherein at least one emulated operating system is in the same family of operating systems as the base server operating system.
  • 15. The computer implemented method of claim 13, wherein at least one emulated operating system is not in the same family of operating systems as the base server operating system.
  • 16. The computer implemented method of claim 13, further comprising: randomly selecting one of said plurality of hard drive images for interaction with said virtual server image.
  • 17. The computer implemented method of claim 13, wherein one or more of said virtual hard drive images is a word processing document.
  • 18. The computer implemented method of claim 13, wherein one or more of said virtual hard drive images is a graphical depiction.
  • 19. A computer-readable data transmission containing data structure comprising: a first portion identifying a virtual server image that a client is requesting from a server housing a plurality of virtual server images;a second portion identifying an application image and hard drive image stored on a storage device associated with said server, said storage device housing a plurality of application images and hard drive images associated with said application images.
  • 20. A computer-readable data transmission of claim 19, further comprising: a third portion identifying the client from other clients.
  • 21. A computer implemented method of providing a set of performance based tests to a first user and a second user comprising: emulating with a shared hardware on a common hardware architecture an operating system, one or more application software programs, and two or more hard drives to generate a first signal associated with said first user and a distinctly different second signal associated with said second user; andstoring said first signal and said second signal.
  • 22. The computer implemented method of claim 21, wherein the step of emulating uses virtualization techniques.
  • 23. The computer implemented method of claim 21, further comprising transmitting said first signal and said second signal.
  • 24. The computer implemented method of claim 21, wherein at least one software program is selected from the group comprising: a word processing program, a graphics processing program, a drawing processing program, a video processing program, an audio processing program.