1. A non-transitory computer-readable medium including computer-executable instructions carried out by a computer system implementing a customization system for customization of user settings on a target instrument in a process control system, comprising: a configuration module running on a platform; a representation module communicably coupled to said configuration module, said representation module including a firmware duplicate including a copy of at least a portion of firmware from the target instrument; wherein said representation module is configured to transform the firmware duplicate into a representation of at least a portion of a physical target instrument, and wherein the firmware duplicate is operable off-line from the process control system as if the firmware duplicate were communicably coupled to the target instrument; the firmware being compliant with communication protocols selected from the group consisting of HART®, FOXCOM®, PROFIBUS™, FOUNDATION™ FIELDBUS, and MODBUS, RS232, RS 485, DEVICENET™, CONTROLNET™, CAN™, ZIGBEE™ (IEEE 802.15.4), Ethernet/IP, DH+, Intranet, and combinations thereof; a hardware adaptation module for adapting the firmware duplicate to the specific hardware requirements of the platform on which the configuration module is running, said hardware adaptation module comprising one or more conditional preprocessor directives enabling the execution of alternate code for different platforms; a menu module configured to generate prototypes of a user menu for the target instrument; and a diagnostics module configured to perform an operation selected from the group consisting of: confirming proper operation of said configuration module; confirming proper configuration of a customized set of user settings; and confirming proper configuration of a menu prototype for the target instrument, and combinations thereof, said diagnostic module comprising an assertion module, said assertion module inserting predicate assertions into the code of the configuration module and the representation module at strategic points to expose problems in the code of the configuration module and the representation module during execution; wherein said system is configured to generate the customized set of user settings for the target instrument running on a second platform, independently of any connection to the target instrument, which user settings are capable of being used by the target instrument without further modification.