by James TownsendMicrosoft, like other cloud software providers, ensures that you will be using the latest version of software such as Microsoft Office 365 and Dynamics 365. Enhancements are continuously released and major upgrades take place more frequently than they did when most organizations ran their software on their own servers.
Many of InfoStrat's government clients are at last moving their Dynamics 365 (formerly Dynamics CRM) solutions to the Microsoft cloud. Moving them offers many choices for customers about their approach. Here are some alternatives:
Lift and shift. Some organizations want to move their workloads to the cloud and decommission their servers and on premises computing facilities. The least ambitious approach is to move from on premises hardware or virtual servers to cloud servers. If you are already running virtual servers, the move is less dramatic. If not, this effort will allow you to re-architect your server infrastructure and consider cloud service such as SQL Server rather than a one to one mapping of physical to virtual servers. For Dynamics 365, the lift and shift approach would allow you to keep whatever version of Dynamics you are using, but you would forgo the benefits of the latest version and be responsible on your own for all upgrades and bug fixes.
Migration. The next approach would be to move from Dynamics 365 on premises to the cloud version on the Microsoft commercial or government cloud. You would be required to upgrade to the latest version in order to make this move, but then future upgrades would be handled by Microsoft. Depending on your current version, the minimalist approach would entail replacing any code that no longer works on the current version of Dynamics.
Refactoring. The move to the cloud allows you to improve performance of your solution by refactoring any elements that are not performing up to your goals. Refactoring means creating a new coding approach to fulfill the original requirements. This means that you do not need to involve users in the efforts or create new requirements documents or user stories.
Rewriting. The most ambitious approach is to use the migration as an opportunity to rewrite a solution. This may be beneficial if the solution has fallen out of synch with user requirements, and you have a long backlog of enhancements. Rewriting will involve significant work from a full implementation team in order to nail down requirements, design, develop and test the solution. In the long run this may be the best way to improve user satisfaction and get your solution both stable and fully adopted.
Whichever approach you choose, you should be clear on the boundaries of the effort and how your cloud migration fits with your budget and schedule. For instance, rewriting may take nearly as long as your original implementation, while refactoring may be much faster.