A computer-implemented method for upgrading a system, the method comprising: accessing a first computing system by several users; then disabling access to the first computing system; migrating a copy of data from the first computing system to a communicatively coupled second computing system at a first time during a system upgrade, wherein access to the first computing system is disabled during the migrating at the first time; then processing all migrated data needing transformation with respect to the second computing system; meanwhile enabling access to the first computing system, and accessing the first computing system by several users, the users changing data of the first computing system, wherein the changed data is data that has been altered and data that has been added to the first computing system since the first time data was migrated from the first computing system to the second computing system; at one or more subsequent times during a system upgrade, migrating a copy of changed data, the copy of the changed data being migrated from the first computing system to the second computing system until a threshold in the amount of changed data on the first system is reached, wherein access to the first computing system is enabled and maintained live during the migrating at the one or more subsequent times, wherein the migrating of the copy of the changed data at the subsequent times includes updating corresponding migrated data requiring transformation in data structure by: i) querying the first computing system to determine any data that has changed since the last time the system was queried, the data including data requiring transformation with respect to the second computing system, ii) deleting, in the second computing system, transformed data that requires updating, iii) transforming the data of the queried changed data at the first computing system, with respect to the second computing system, and iv) migrating a copy of the transformed data from the first computing system to the second computing system; and in response to reaching the threshold, migrating a copy of remaining changed data from the first computing system to the second computing system, wherein access to the first computing system is disabled during the migrating of the remaining changed data. accessing a first computing system by several users; then disabling access to the first computing system; migrating a copy of data from the first computing system to a communicatively coupled second computing system at a first time during a system upgrade, wherein access to the first computing system is disabled during the migrating at the first time; then processing all migrated data needing transformation with respect to the second computing system; meanwhile enabling access to the first computing system, and accessing the first computing system by several users, the users changing data of the first computing system, wherein the changed data is data that has been altered and data that has been added to the first computing system since the first time data was migrated from the first computing system to the second computing system; at one or more subsequent times during a system upgrade, migrating a copy of changed data, the copy of the changed data being migrated from the first computing system to the second computing system until a threshold in the amount of changed data on the first system is reached, wherein access to the first computing system is enabled and maintained live during the migrating at the one or more subsequent times, wherein the migrating of the copy of the changed data at the subsequent times includes updating corresponding migrated data requiring transformation in data structure by: i) querying the first computing system to determine any data that has changed since the last time the system was queried, the data including data requiring transformation with respect to the second computing system, ii) deleting, in the second computing system, transformed data that requires updating, iii) transforming the data of the queried changed data at the first computing system, with respect to the second computing system, and iv) migrating a copy of the transformed data from the first computing system to the second computing system; and in response to reaching the threshold, migrating a copy of remaining changed data from the first computing system to the second computing system, wherein access to the first computing system is disabled during the migrating of the remaining changed data. i) querying the first computing system to determine any data that has changed since the last time the system was queried, the data including data requiring transformation with respect to the second computing system, ii) deleting, in the second computing system, transformed data that requires updating, iii) transforming the data of the queried changed data at the first computing system, with respect to the second computing system, and iv) migrating a copy of the transformed data from the first computing system to the second computing system; and in response to reaching the threshold, migrating a copy of remaining changed data from the first computing system to the second computing system, wherein access to the first computing system is disabled during the migrating of the remaining changed data.