1. A method for determining a number of computing resources required for executing a plurality of jobs (n) in a total processing time (T), the method comprising: receiving, the plurality of jobs (n) to be executed by a software application, and a plurality of variables associated with the plurality of jobs (n), wherein the plurality of variables comprises a mean processing time (μ) a standard deviation (σ), a service level agreement (α), and a confidence level (1-α), and wherein the mean processing time (μ) indicates average time required for executing each job, and wherein the standard deviation (σ) indicates a variance in the mean processing time (μ), and wherein the service level agreement (α) is indicative of a maximum time allowable in addition to the total processing time (T) for executing the plurality of jobs (n); determining, via a processor, a inverse parameter (γ) using the mean processing time (μ), the standard deviation (σ), and the confidence level (1-α); computing, via the processor, a queue length (k) based upon the total processing time (T), the mean processing time (μ), the standard deviation (σ), and the inverse parameter (γ), wherein the queue length (k) indicates a maximum number of jobs capable of being executed simultaneously by a single computing resource, wherein the queue length (k) is computed using a formula √k =−σγ±√( σ2γ2+4T μ)/2μ, wherein k is the queue length, σ is the standard deviation, γ is the inverse parameter, T is the total processing time and μis the mean processing time; processing the queue length (k) and the plurality of jobs (n) in order to determine the number of computing resources required for the execution of the plurality of the jobs (n); and executing by the software application the plurality of lobs using the determined number of computing resources.