Hooray, Migration Day! Said no one ever. Your CRM is one of the most critical pieces of your infrastructure, so ensuring that the move goes smoothly is of utmost importance. Recognizing this pressure gets us one step closer to moving past it, but the crucial next step will be to plan. As they say “Measure twice…”
Cut Over Once
Our planning will always start backwards from a planned cutover day that we will call Go Live Day. This day is ideally a day with no major events and during one of your slower data processing times. For some organizations, however, this may be a challenge better solved by designating a date far in the future as a blackout date for campaigns and processing. Do you have an ideal date in mind? Great! Spread the word to your leadership to get as much awareness and cross-organizational support during the Go Live day. This ensures that we have all the major players ready to do their part in the migration. Sounds like we are getting a team together!
Technicians Assemble!
With a system as complex as Blackbaud CRM, there are going to be a few different hands that participate in keeping this thing moving and grooving. Let us take a closer look at what these roles are and how they can help with our Migration.
Database Administrator
This person oversees the SQL Database driving Blackbaud CRM. They will need to know how to get a copy of the SQL database from your current hosting platform and send it along securely to your new hosting platform. They also must have a good understanding of any SQL agent jobs that might be scheduled outside of the Blackbaud CRM infrastructure and any advanced SQL systems that might be supporting CRM such as Integration packages and Analysis Cubes.
Application Administrator
This person should be someone with a deep knowledge of the application’s workflows, business processes, and user access. They will not only help us figure out a solid testing plan, but help train end users for Go Live day.
Integration Specialist
Since no tool out there does it all, chances are you have other processes and applications that either extract information from, or input data into Blackbaud CRM. Your Integration Specialist should understand all the different mechanisms in place that facilitate these integrations. That way, they will be able to take a full inventory of the integrations and create a testing plan to ensure the integrations work on the new hosting platform.
Network Engineer
This role may or may not be needed depending on if you have any live web sites such as a BBIS page which heavily depends on Blackbaud CRM being online and active. This role might also be necessary if any of your Blackbaud CRM integrations require a direct connection to a location outside of the Blackbaud CRM Hosted platform.
If this applies to you, then your Network Engineer will need to know how to manage the DNS entries behind any publicly facing websites, understand the SSL certificates in place to service those sites, and should also have a deep knowledge of your firewall infrastructure to facilitate Secure VPNs to other networks.
Awesome! The gang is all here. Now, let us get back to coordination planning. We are going to cut to One Week before Go Live day.
T-Minus 168 Hours: The Dry Run
The week before Go Live should be dedicated to testing our Go Live plan; understanding the timing between all the separate phases is essential for determining if our plan is robust enough for a Go/No-Go decision. We call this a Dry Run of the Go Live date. What is in an ideal Go Live Plan you might ask? Let us go over some of the major phases here:
Phase one: Taking a SQL backup
In this phase, we plan to take all data entry offline for BBCRM. This helps us ensure we do not miss any valuable data between the time we export data from the old platform to the time it takes to get the new platform online. You’ll want to make sure you pick a very specific time on Go-Live date for data entry to go offline and ensure all appropriate stakeholders are aware of this data freeze. Such measures could include the Application Administrator alerting users, and the Network Engineer adjusting DNS entries for live sites to point to the new hosted solution. For a Dry-Run, we do not need to plan a data freeze, but going through the motions will help us understand how long this process will take.
Since we are taking a fresh SQL backup from the old hosting platform, your Database Administrator needs to secure a fresh Ad-Hoc SQL backup taken at a specific time, rather than a backup from a pre-existing automated process. This will be our first key piece of information: How long does an ad-hoc SQL backup take? Once the backup is taken, the next key piece of information will be How long does it take to transfer this SQL backup to the New Hosting Platform?
Phase Two: Restore the SQL backup
This phase will see the SQL backup restored on the new hosting platform. Our first key learning from this phase is: How long will a database restore take? Not only will we need to account for the actual restoration process, but also for the SQL scripts that are required to reconfigure the database to make it work on your new hosting platform. This includes scripts to adjust your Settings tables to have it look at the new hosting platform infrastructure, Security scripts that will grant service accounts and power users access to the database, and, if your authentication method is also changing, User reconfiguration scripts where necessary.
Phase Three: Reconfigure key applications
Here we will ensure all the different applications supporting Blackbaud CRM are configured to communicate with Blackbaud CRM. This includes altering any configurations in CRM itself that cannot be adjusted with a SQL script, redeploying the Blackbaud Data warehouse, and ensuring SSRS is configured appropriately. If you have BBIS, this will also be where you ensure your testconfig page is reporting good communication between BBIS and BBCRM. This will tell us How long will a reconfiguration of BBCRM take? If you have any third-party integrations that need to be configured to look at the new hosting platform, this would be the time to make those changes. We won’t be able to test and time out those particular changes for the dry run, but we should at least have a good idea of the configuration that will need to take place so we can form an estimate.
Phase Four: Smoke testing
Now, we will alert our end-user testers to get on into the application and start testing to ensure all data came over properly and that all business processes still function as expected. This will also be the time for your Integration Specialist to ensure that all third-party integrations are communicating with the new hosted platform. If all is looking good, awesome! You are okay to give the official green-light to use the new hosted platform! But what if things are not looking so good?
Phase Five: Troubleshooting
First, we need to take a full inventory of the things that are not working correctly. Gather full details such as “When I do X, I expect to see Y, but instead see Z.” Then, we will want to triage these issues. Is it a show-stopping issue? Let us focus on it first. Is it a minor piece of functionality that very few people use infrequently? Perhaps we can live with it on the new platform until we figure out what is wrong. Ideally, we find these issues in an earlier testing phase of the full migration plan. However, some things simply cannot be tested until we cut over to the live environment. Should we find ourselves in a situation where we have exhausted all our troubleshooting resources for a critical piece of functionality, it is time to decide if we need to initiate a Roll-Back.
Secret Phase Five: The Roll-Back Procedure
This is a phase we hope to never bust out. Some organizations might even be in the unenviable position of not having an option to roll-back.
If you are fortunate enough to have this choice, ensure all of your stakeholders in the old Blackbaud CRM platform are prepared and ready to bring things back online on the old platform should things go terribly wrong. Once rolled back, it is time to take a reflection period to understand why that critical piece of functionality broke so that we can further bolster our Go Live plan to accommodate.
With this clear understanding of the Go Live plan, we can return to figuring out the timing for the rest of our Migration Plan!
The Testing Phase
Now that we’ve covered everything involved in migrating Blackbaud CRM, we should have a pretty good idea on the volume of stuff that we need to test to make sure the new platform is functioning properly. Do you have a lot of complex processes and many users to train? Probably best to allot a month or more for your testing phase. Is your Blackbaud CRM implementation pretty straightforward with a small user base? Perhaps a week or two will suffice. Be sure you are prepared to initiate some Troubleshooting in this phase as we will soon discover processes we have not thought about until it becomes important! Because of this, it would be prudent to include a week or two of buffer time to allow for troubleshooting of the new hosted platform.
The Configurating: Bringing the new Hosted Platform Online
With testing timelines formulated, we can figure out when we need to have the new hosting platform up and running for testing. Ensure you have a clear understanding of how long it will take to stand up and configure Blackbaud CRM on your new hosted platform. That way, you will then have a key date in mind: When will we break ground? It would be best to include a week or two of buffer time for any unforeseen configuration
I Love it When a Plan Comes Together
All this information put together should give us a very solid idea of the timing involved for our Migration. At this point, it becomes a matter of organizing our Key technicians to accomplish their respective tasks both throughout the migration and during the Go Live. Watch things unfold according to plan and break out the celebration gear once it all comes together! We wish you good luck and godspeed in your Blackbaud CRM Migration adventure!