- should be a generic implementation that does not know what modules or ressources exist - should repeat executing modules until no new ressources are found