1. A method for managing an emulation of a computer product, the method comprising: receiving emulation parameters associated with the emulation of the computer product, the emulation parameters defining one or more resources required to provide the emulation; identifying at least two capable emulator servers from a plurality of emulator servers based at least on the one or more resources, the at least two capable emulator servers being operable to provide the at least one or more resources; retrieving, from at least one database, emulator server data for each capable emulator server, the emulator server data comprising operational characteristics associated with that capable emulator server; determining, from the at least one database, one or more criteria usable for selecting an emulator server from the at least two capable emulator servers to provide the emulation; and selecting the emulator server from the at least two capable emulator servers to provide the emulation, the emulator server being a capable emulator server from the at least two capable emulator servers associated with emulator server data satisfying at least some of the one or more criteria, wherein the selection comprises: determining a plurality of criterion counts, by, for each capable emulator server in the at least two capable emulator servers, determining a criterion count associated with that capable emulator server, the criterion count being based, at least in part, on a number of the criteria satisfied by that capable emulator server; and based on the plurality of criterion counts, selecting the emulator server from the at least two capable emulator servers; wherein the number of criteria satisfied by that capable emulator server at least partly depends on at least one resource, in the one or more resources, providable via the capable emulator server.