Broadly, an Online Test or Institute management solution can be divided into two major components, Software and Server Environment. But it is not just a Software or a Server in isolation...the solution depends on an optimal mixture of several parameters.
Software capability and Environment capability are 2 different things. The same Online Test Software can handle 10 or 10000 candidates if it is supported by a suitably capable Application Server having proportionate resources, appropriate Data Transfer Bandwidth at Server and good internet bandwidth at user end.
Besides buying the same software, the type of need determines the server infrastructure. If you have a low-end requirement with minimum budget, like a coaching center distributing free tests, so accordingly cloud deployment with basic bandwidth that support 0-10 concurrent users should be opted. Increasing bandwidth to keep provision for entertaining higher number of simultaneous 25-50 users will be a wastage of resources in anticipation of maximum load. It is better to plan workload by time sharing.
However, if your tests are of critical importance even for 25 students, you must buy surplus bandwidth at the server level and ensure candidates appear in a Lab, or have a broadband connection at home or 3G/4G connection in smart device.
If you plan to conduct tests of more number of candidates like 50-100, then you should opt for an in-house server in the lab, eliminating all dependency on internet and bandwidth. Because if server is on cloud and users in lab, that lab must have consistent internet with high bandwidth is the range of 10+ MBPS. If the server is on cloud and the users are distributed in their homes, cyber café or using their smart devices with mobile internet, they will have different experiences depending on their internet.
There are 4 stages of delivery of an online service (Server-Client/Browser based).
The overall experience of delivery is dependent on smooth synchronous functioning of all 4 components. If any of these is having a bottle neck, the entire performance will go down.
|Service Delivery Component||CBT Software running Online
from Cloud Server
|CBT Software running Offline
from Owned Server in Lab
|CBT Software running Online
from Owned Server in Lab
Processing power of the server
|These are unquestionable because professionally planned for specific use and to handle huge loads.
Each server is catering to multiple customers and is always surplus in resources.
These servers are real time scalable so there is never short of resources
|Generally these servers are bought on the criteria of optimal configuration for minimal budget. Their performance is obviously low as compared to cloud servers but the major advantage of bypassing internet gives a faster feel.
Ofcourse these are servers with fixed configuration so they have load limits.
|Same as mentioned in column 2 for CBT Software running Offline
from Owned Server in Lab
Delivery bandwidth of the server
|Again these are unquestionable because professionally planned for multiple customers and has sufficient allowance for surges. Again the resources on cloud are real time scalable so there is never a situation of shortage or clogging.||In case of use within the lab, though the dependency on internet connectivity and speed has been surpassed by local LAN connectivity, but still it is important to assess if the network switch or router is compatible for proper distribution of sufficient bandwidth to each terminal.
For this reason Lab Testing is very essential.
|When a in-house offline server is made to behave as online server, then the roles of Stage 2 and Stage 3 swap. The local internet connection was used as receiving bandwidth when users were access test in lab from online server. But now if the Lab server is delivering to online candidates, then the local connection becomes the delivering connection, so it requires high upload bandwidth. Generally local connections have very low upload bandwidths as compared to download bandwidths.|
Receiving Bandwidth of the User
|Servers process and deliver unquestionably fast. A server may have processing ability and bandwidth to answer 1000 calls a second, but at the user end if the internet connectivity is not sufficient to download questions fast then the user experience will be poor. Even in case of high bandwidth in lab if after distribution one user can not have enough bandwidth then again the experience will be low.
Generally these days individual users at home or App user may not face bandwidth issues, because in most cases bandwidths are either broadband or 3G/4G so there is not limitation in case of individual distributed users, but in case of multiple users in a single lab depending upon a single shared internet connection may report limitations in not sufficient for each
|In case of within the Lab test system working on LAN, this parameter is mostly unquestionable unless the router or network switch is unsuited to the requirement. The analysis obtained by Lab testing data will indicate towards this.||Same as mentioned in column 1 for CBT Software running Online
from Cloud Server
Processing power of the User Device (Computer/ Smartphone)
|In case of computers this does not effect much in terms of processing power because not much processing power is required. Small amount of resources are used to open browser and the software opens in the browser a s a normal website. The test is not downloaded into the computer so there is no effect of storage space. Also there is no calculation at the user computer so processing ability also does not effect. The only effect might be of certain computer specific browser settings.
But in case of Android devices where the user is attempting test on app, the resources and health of the device is utmost important, because the test is loaded onto the device and works locally from the device. Any hiccups in the operation are purely due to the device, because when attempting test from the android device, the server and internet are not used, all activity is held within the device. There are certain guidelines which must be emphasized to app users.
|Same as in case of online or offline system, the terminal computer resources do not have much impact, unless otherwise observed for some specific computer by running the Lab testing utility. In case offline test inside lab is held on Tabs/App then the same guidelines as for android devices prevail.||Same as mentioned in column 1 for CBT Software running Online
from Cloud Server
Server environment includes Processor Cores, RAM and Storage type (affecting processing ability), Operating System, Database Server and transfer bandwidth suitable to meet required work load.
|Version||Limit on X86||Limit on X64|
|Windows Server 2008 Standard||4 GB||32 GB|
|Windows Web Server||4 GB||32 GB|
|Windows Server 2008 R2 Standard||-||32 GB|
|Windows Web Server R2||-||32 GB|
|Windows Server 2008 Enterprise||-||2 TB|
|Windows Server 2012 Standard||-||4 TB|
|Type of User||Minimum Internet Requirement||Optimal Internet Requirement|
|Single User on Browser||Normal dial-up is sufficient to work but, screen loading time will be slow, might be subject to disconnections and timeouts||The more speed the better. Faster speeds will facilitate faster downloads.|
|Single User on App||2G connection is OK to download but it will take time to download. No issues while working because it works locally on device, without internet connectivity but slow speed at time of uploading can be risky. Also devices with poor processors, smaller screens might perform slow and face limitations.||3G connection is good, though it is required only for a limited period to download and upload the test at the start and end of the process, but even if this is smooth and fast, it will create a better user experience.|
|Multiple User in Test Lab||Bandwidth requirement depends on number of users. 50 users will need in range of 8 MBPS, 100 users might need 10+MBPS.||For this high concurrency, it is suggested to conduct test only in Lab with local server to avoid all dependency on internet bandwidth.|
If the same OS Windows 10 is loaded on an old Pentium computer, will it work same as it works on i3 or i5?
If the same movie from same source is downloaded or viewed on an i3 with GPRS connection and other i3 with Broadband connection, will it be same? No because there is effect of receiving bandwidth at the user end.
If the same movie is watched by a single user having broadband connection of same bandwidth, and on the other hand there are several users in a lab where the bandwidth is shared. Will the experience be same?
For example, some user might have deployed a very high end server, but may be the network switch has problem so the overall delivery to the terminal computers is delayed. In two labs with same number of users watching same movie with same server, same internet but one has a smaller capacity network switch and the other has a high bandwidth network switch, will the experience be same?
So it is obvious that each component has its effect on the overall experience of the user. It is important to test your lab to know what is the optimal performance achieved out of whatever combination of components is available.
It is utmost important and ideal to run a lab simulation for a similar test whenever you are planning a near-full-load event . This will indicate the sync and health of lab resources at that moment.
Addmen provides a Lab Testing utility that simulates the online test load from multiple computers and the data thus generated clearly indicates the capability of the current lab infrastructure to cater to how many users. By analyzing the data, you can draw out inferences about question delivery speed. This will also help you identify the extent to which you can load your server beyond the planned load. This will also help to identify if any of the terminal computer is specially slower than the rest.
Also the lab test done once should not be taken for granted for long. The professionally managed cloud servers always have a intense maintenance activity on, which is not true for a single user owned server and Lab that does not have a dedicated server manager. It is possible that like any other computer your server is getting loaded with trash over time and its performance today is not the same as the day when it was installed.
By doing so, the customers who have questions – “Earlier CBT software was working fine, now it is slow?” – they will automatically have an answer.
We have to know that there is nothing like a good today or bad tomorrow software performance. Software is simply a logic to perform a given task in a predefined way. The same software will work with same efficiency if it has the same input and same environment even if you run it after one hundred years or a millennium. The performance of the activity depends on the resources facilitated to the software. Whenever the performance or result changes, it is either due to change in input or change in environment.