A method for sorting managed devices, comprising: querying a database with a sort query, the database identifying, for each managed device in a group of managed devices (10, 12, 14, 16, 18), a parent device from which the managed device receives files, the sort query being used to capture an initial adjacency list in which managed devices of the group of managed devices are ordered, based on a respective parent device, each of the managed devices being associated with a set of attributes; sorting the initial adjacency list, based on at least one sorting criterion, to generate a sorted adjacency list in which managed devices having a common parent device are reordered, based on respective attributes; representing the sorted adjacency list as a sorted directed graph; providing for modifications to be made to the sorted directed graph to generate a modified sorted directed graph; and distributing a file to at least some of the managed devices, based on the modified sorted directed graph whereby managed devices receive the file from their respective parent; wherein the providing for modifications to be made to the sorted directed graph comprises displaying the directed graph to an authorized user in a graphical user interface; wherein the method further comprises: receiving a request for an exception to a setting within the file for at least one of the managed devices from a user of the at least one of the managed devices, wherein the exception to a setting within the file is such that the at least one of the managed devices is allowed to have unique device settings; identifying, automatically, a sub-group of managed devices which includes the at least one of the managed devices for which the exception is requested; and implementing the exception for the sub-group of managed devices; and wherein the method further comprises: proposing the sub-group of managed devices to the authorized user via the graphical user interface; and providing for the authorized user to accept, decline or modify the proposal through the graphical user interface; and wherein implementing the exception for the sub-group of managed devices comprises implementing the proposal as modified by the authorized user. querying a database with a sort query, the database identifying, for each managed device in a group of managed devices (10, 12, 14, 16, 18), a parent device from which the managed device receives files, the sort query being used to capture an initial adjacency list in which managed devices of the group of managed devices are ordered, based on a respective parent device, each of the managed devices being associated with a set of attributes; sorting the initial adjacency list, based on at least one sorting criterion, to generate a sorted adjacency list in which managed devices having a common parent device are reordered, based on respective attributes; representing the sorted adjacency list as a sorted directed graph; providing for modifications to be made to the sorted directed graph to generate a modified sorted directed graph; and distributing a file to at least some of the managed devices, based on the modified sorted directed graph whereby managed devices receive the file from their respective parent; wherein the providing for modifications to be made to the sorted directed graph comprises displaying the directed graph to an authorized user in a graphical user interface; wherein the method further comprises: receiving a request for an exception to a setting within the file for at least one of the managed devices from a user of the at least one of the managed devices, wherein the exception to a setting within the file is such that the at least one of the managed devices is allowed to have unique device settings; identifying, automatically, a sub-group of managed devices which includes the at least one of the managed devices for which the exception is requested; and implementing the exception for the sub-group of managed devices; and wherein the method further comprises: proposing the sub-group of managed devices to the authorized user via the graphical user interface; and providing for the authorized user to accept, decline or modify the proposal through the graphical user interface; and wherein implementing the exception for the sub-group of managed devices comprises implementing the proposal as modified by the authorized user. receiving a request for an exception to a setting within the file for at least one of the managed devices from a user of the at least one of the managed devices, wherein the exception to a setting within the file is such that the at least one of the managed devices is allowed to have unique device settings; identifying, automatically, a sub-group of managed devices which includes the at least one of the managed devices for which the exception is requested; and implementing the exception for the sub-group of managed devices; and wherein the method further comprises: proposing the sub-group of managed devices to the authorized user via the graphical user interface; and providing for the authorized user to accept, decline or modify the proposal through the graphical user interface; and wherein implementing the exception for the sub-group of managed devices comprises implementing the proposal as modified by the authorized user. proposing the sub-group of managed devices to the authorized user via the graphical user interface; and providing for the authorized user to accept, decline or modify the proposal through the graphical user interface; and wherein implementing the exception for the sub-group of managed devices comprises implementing the proposal as modified by the authorized user.