• +91 922 911 3522
  • +91 922 911 3566
  • info@addmengroup.com
  • Sitemap
  • Get Demo
Submit
OMR & IT Solutions
Certified ISO 27001 & 9001

factors affecting performance online test system

Topics Covered on This Page

  1. Factors that affect the performance
  2. Delivery Stages of any Online Service or Online Test System
  3. Server Environment factors that affect performance
  4. Network and Connectivity factors that affect performance
  5. Importance of Checking your Lab Performance

Factors that affect the performance

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.

Delivery Stages of any Online Service or Online Test System

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
Stage 1
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
Stage 2
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.
Stage 3
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
Stage 4
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 factors that affect performance

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.

  1. Server Computing Resources: Server’s hardware resources like Processors/Cores, RAM, the free space on the server storage media that in-turn affects the size of cache files and paging files that can be created on the drive, and the efficiency of the storage media, all have a major impact on the server performance in serving the tests to a group of candidates.
    If there are more processes running on the server, it is always suggested to keep surplus resources to make available minimal resources for test process at any point of time.
  2. Operating System: The other major factor that is considered a component of the server resources is the version of OS installed. There are maximum RAM usage limitations for Operating Systems. So even if you have multiple Processor Cores and high RAM on your system and higher version of SQL, still if the OS has a limitation, it will form a bottleneck.
    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
  3. Database Server: Similarly, various versions of SQL have their respective limitations on the maximum amount of memory that they can use. So even if you have deployed a server with 64 GB RAM, but it is installed with SQL Express edition, the SQL shall not be using memory more than 4GB, and this would form the bottle neck in serving more than 10-20 users. So it is suggested to install SQL standard or Web edition with minimum 32 GBs to meet a workload of upto 50 concurrent users.

    To know more about SQL server variants, refer the following link:
    https://msdn.microsoft.com/sv-se/library/cc645993(v=sql.110).aspx

Network and Connectivity factors that affect performance

  1. Server Data Transfer Bandwidth: In our standard package, we provide a bandwidth that supports 25 simultaneous users for one account and charge accordingly. The price is exponentially high if 50 or 100 simultaneous users have to be allowed. So instead of paying high cost for an accentuated workload which is rarely required, even clients prefer a minimum balanced price and adjust the workload by time sharing. 25 logins is standard because based on data usage pattern over the years we observed that this is the most commonly exploited limit and very rarely it exceeds this concurrency needs.
  2. User Internet Connection Bandwidth: Server Data transfer bandwidth and User Internet bandwidth again are 2 different things....the lowest one forms the bottle neck. If there are different users connected to the same server giving the same online test, but having internet connections of different bandwidth, then their experience will be different. The user whose bandwidth will be low, his response time will be more. Server receives requests, sends data, but if student bandwidth is low, he will take time to see.

    Suppose even if we provide a very high end server with high bandwidth, still the final experience will be as of limiting bandwidth at user level.
  3. Consistent Connectivity: Besides the speed, quality of connectivity is important. A high band and fast internet connection, which a user claims he is able to surf websites properly, might not be suitable for Online Test or Online Application. Because most websites involve download of static data in packets so in between connectivity for a fraction of a second does not affect. But in case of online test, in order to save the answers given by user, the software contacts the data server in every few seconds. If the internet connectivity is intermittent at this instant, it might lead to malfunction or even logouts. So the type and quality of internet connection is also important not just the MBPS label from the service provider. A 1 MBPS connection with consistent connectivity may perform better than a 2 MBPS connection with intermittent connectivity in rainy season.
    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.

Check Your Lab Ability for Online Test

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.

OMR Sheet Design

Addmen Group Copyright 2018. All Rights Reserved.