A method for implementation by one or more data processors forming part of at least one computing system, the method comprising: placing a sample of data comprising one or more files for access or execution by a computing system within a directed acyclic graph represented as a queue of work items for a particular worker class such that a worker can be served a work item by a router wherein the directed acyclic graph comprises a plurality of hierarchical nodes in which nodes are represented as individual worker classes that are used to process the sample of data; determining, by a central resource manager using the router, optimal routes for traversing the directed acyclic graph for the sample of data using a configuration of the worker classes that define prerequisites via a configuration file and contain a seed of a routing system allowing that an optimized route is built up at runtime which results in selective scheduling of work items to workers; scheduling using a scheduler work items within the queue for each of a plurality of workers by traversing the nodes of the directed acyclic graph, wherein the work items are scheduled in the queue according to at least one of sample prioritization based on a rate of processing; serving by the router the work items to the workers according to the queue; receiving results from the workers for the work items; and classifying the sample of data based on the received results to indicate whether or not at least one file in the sample of data likely comprises malicious code; wherein the nodes of the directed graph are traversed based on the received results that comprise routing data that is used to determine to which worker a next subsequent work item in the queue is provided. placing a sample of data comprising one or more files for access or execution by a computing system within a directed acyclic graph represented as a queue of work items for a particular worker class such that a worker can be served a work item by a router wherein the directed acyclic graph comprises a plurality of hierarchical nodes in which nodes are represented as individual worker classes that are used to process the sample of data; determining, by a central resource manager using the router, optimal routes for traversing the directed acyclic graph for the sample of data using a configuration of the worker classes that define prerequisites via a configuration file and contain a seed of a routing system allowing that an optimized route is built up at runtime which results in selective scheduling of work items to workers; scheduling using a scheduler work items within the queue for each of a plurality of workers by traversing the nodes of the directed acyclic graph, wherein the work items are scheduled in the queue according to at least one of sample prioritization based on a rate of processing; serving by the router the work items to the workers according to the queue; receiving results from the workers for the work items; and classifying the sample of data based on the received results to indicate whether or not at least one file in the sample of data likely comprises malicious code; wherein the nodes of the directed graph are traversed based on the received results that comprise routing data that is used to determine to which worker a next subsequent work item in the queue is provided.