A method for predicting performance of one or more applications being executed on an Internet of Things (IoT) platform, comprising: obtaining, by said IoT platform, at least one of (i) one or more user requests and (ii) one or more sensor observations from one or more sensors; identifying and invoking, one or more Application Programming Interface (APIs) of said IoT platform based on said at least one of (i) one or more user requests and (ii) one or more sensor observations from said one or more sensors; identifying, based on said one or more invoked APIs, at least one combination of open and closed flow requests in one or more systems connected to said IoT platform; modeling the at least one combination of open and closed flow requests as one or more segregated open flow requests and one or more segregated closed flow requests; identifying, one or more workload characteristics of said one or more segregated open flow requests and one or more segregated closed flow requests, wherein an input workload of a segregated open flow request from the one or more segregated open flow requests is identified as a throughput of a segregated closed flow requests from the one or more segregated closed flow requests wherein the open flow request forks out from the combination of open and closed flow requests; executing one or more performance tests with said one or more invoked APIs based on the identified one or more workload characteristics; concurrently measuring utilization of one or more resources of said one or more APIs and computing one or more service demands of each of said one or more resources; executing said one or more performance tests with said one or more invoked APIs based on a volume of workload characteristics pertaining to said one or more applications; and predicting, using a queuing network, performance of said one or more applications for said volume of workload characteristics. obtaining, by said IoT platform, at least one of (i) one or more user requests and (ii) one or more sensor observations from one or more sensors; identifying and invoking, one or more Application Programming Interface (APIs) of said IoT platform based on said at least one of (i) one or more user requests and (ii) one or more sensor observations from said one or more sensors; identifying, based on said one or more invoked APIs, at least one combination of open and closed flow requests in one or more systems connected to said IoT platform; modeling the at least one combination of open and closed flow requests as one or more segregated open flow requests and one or more segregated closed flow requests; identifying, one or more workload characteristics of said one or more segregated open flow requests and one or more segregated closed flow requests, wherein an input workload of a segregated open flow request from the one or more segregated open flow requests is identified as a throughput of a segregated closed flow requests from the one or more segregated closed flow requests wherein the open flow request forks out from the combination of open and closed flow requests; executing one or more performance tests with said one or more invoked APIs based on the identified one or more workload characteristics; concurrently measuring utilization of one or more resources of said one or more APIs and computing one or more service demands of each of said one or more resources; executing said one or more performance tests with said one or more invoked APIs based on a volume of workload characteristics pertaining to said one or more applications; and predicting, using a queuing network, performance of said one or more applications for said volume of workload characteristics.