1. A method for determining a total processing time (T) required for executing a plurality of jobs (n) on a plurality of computing resources, the method comprising: receiving the plurality of jobs (n), a mean processing time (μ), and a queue length (k), wherein the mean processing time (μ) is indicative of average time required for executing each job of the plurality of jobs (n), and wherein the queue length (k) indicates a maximum number of jobs capable of being executed by a single computing resource in a predefined time period; distributing preliminary jobs (p) of the plurality of jobs (n) for execution across the plurality of computing resources based upon the queue length (k); determining a first processing time (T F ) required for the execution of the preliminary jobs (p), wherein the first processing time (T F ) is determined using a residual time function [H(t)] the queue length (k), wherein H(t)=1/μ∫ 0 t (1−F(t)dt, and wherein F(t) is indicative of a cumulative distribution function of a set of random variables (x 1 , x 2. .. . x p ); distributing remaining jobs (n−p) of the plurality of jobs (n) for execution across the plurality of computing resources based upon the queue length (k); computing a second processing time (T s ) required for the executing of the remaining jobs (n−p), wherein the second processing time (T s ) is computed based upon the first processing time (T F ) and the queue length (k); and summing the first processing time (T F ) and the second processing time (Ts) in order to determine the total processing time (T), wherein the receiving, the distributing the preliminary jobs (p), the determining, the distributing the remaining jobs (n−p), the computing, and the summing are performed by a processor using a set of instructions stored in a memory.