Overall, RAINBOW provides fast and efficient response times to user actions. However, several operations may be slow in comparison to operations that are completed within the time of one second or less. The following two sections are a breakdown of which features we believe will be effectively instantaneous and those we believe will be more computationally intensive.
A number of operations are effectively instantaneous, or from the end-user's perspective, do not take a noticable amount of time to complete. Provided no delay from outside of the system, the following operations are considered to be effecively instantaneous:
Some operations are more computationally intensive, and take more time to execute; these commands we consider to be not instantaneous and make take more than one or two seconds to complete. We do not consider the following operations to not be instantaneous:
The largest space concern is the question bank storage space. A teacher could potenttially have tens, to hundreds, to thousands of questions stored in a single bank, and potentially tens to thousands question banks. Each question may occupy a small amount of stroage space, but their compounded memory usage can add up to lots of data.
The data itself is stored on the user's local system; for administrative or teacher type users, this means all questions and question banks are stored on his/her hard drive. To mediate this storage concern, the question banks are stored in a compressed format to limit the amount of memory required to store the question banks.
The second space concern is storing tests. For the administrative user, or teacher user, the concern about test storage is much greater than for student users because teachers must store the original copy of the test as well as any taken test for each student, and potentially multiple years of test responses, if the teacher chooses to do so.
To mediate the number of tests the teacher client must store, RAINBOW stores the tests in compressed format, except when being actively reviewed by a teacher user.