This is where having a test environment pays for the time and money it takes to create it. When the upgrade path was only to Dynamics CRM 2011, it was not that big of an issue, but with Dynamics CRM 2013 the current production release and 2015 coming up in the very near future, it has made thing more complicated.
For this exercise, we will assume that the target environment is Dynamics CRM 2013.
Here is what we usually do:
Duplicate your existing CRM 4.0 environment
Note: If you can do this in a virtual environment, then that is the best of all worlds because you can easily snapshot your virtual machine and restore that snapshot should an upgrade process fail or produce an undesirable outcome.
1. Install a fresh version of your current production CRM 4.0 environment, or clone it if you are virtualized.
2. Make sure that you install the latest, or in our case, final hotfix rollup for 4.0. As far as I know, UR21 is the last.
3. Test to make sure no obvious issues are seen.
4. Document any issues that arose and be prepared to correct those same issues in your production environment.
Upgrade to a new CRM 2011 environment
This will be a multi-step process including:
1. Performing the physical upgrade to Dynamics CRM 2011.
2. Apply the latest upgrade rollup (UR18 as of this writing).
3. Correcting any issues that may have prevented the upgrade to succeed.
4. Testing. Lots and lots of testing.
5. Again, document anything that had to be changed in order for the upgrade process to be successful.
The idea here is that we need to end up with a functioning Dynamics CRM 2011 environment that is free from coding issues.
Step 3 of the Upgrade process may take up most of your time, depending on the amount of custom code you have. We’ll be covering the conversion process in-detail in later posts.
The goal with Strategy #1 is just to get your testing environment up and running so you can fix the issues you may find.