Upgrade strategy and best practices

Completed

Fully understanding the upgrade process and best practices before you begin the journey of upgrading Dynamics AX 2012 to finance and operations apps is important to the success of your project.

The upgrade process has four stages:

  • Dynamics AX 2012 upgrade analysis
  • Fit-gap analysis
  • Code upgrade
  • Data upgrade/migration

Graphic listing the four upgrade stages that are described in the following text.

Dynamics AX 2012 upgrade analysis

During the Dynamics AX 2012 upgrade analysis phase, you should use the free Dynamics 365 Migration Program to kickstart your journey through the presales process. Consider using Lifecycle Services to run code and data analysis so that you can better understand the level of effort for data migration/upgrade and code.

Fit-gap analysis

When you have a better understanding of your needs and level of effort for your Dynamics 365 upgrade, you can perform a fit-gap analysis. During this phase, you will ensure that you are using the latest features, and you will uncover gaps that you might have had in the past but can resolve with out-of-the-box features with the new solution.

Best practices for the fit-gap analysis:

  • Identify business scenarios that you have customized in Dynamics AX 2012 that are now part of the core Dynamics 365 product and then adopt the core feature.
  • Evaluate other appropriate Dynamics 365 apps, such as Microsoft Dynamics 365 Sales or Dynamics 365 Field Service, and then take advantage of the integrated applications. For more information, see Microsoft Dynamics 365 Fundamentals.
  • Evaluate deprecated features. Some features will have been deprecated. You should review these changes and suggest alternate solutions, which might be integrations or solutions outside of finance and operations apps. For a list of deprecated features, see Removed or deprecated features.
  • Consider redesigning your integrations with cloud technology in mind.
  • Consider modernizing your reporting and business intelligence.
  • Evaluate your ISV solutions, determine if the solution can be replaced with out-of-the-box functionality, and then check for deprecated ISV features.

Code upgrade

After you have performed the fit-gap analysis and have gained an understanding of the full scope of the project, you will begin the code upgrade activities. Services within Lifecycle Services can help you through code upgrade activities. Lifecycle Services will help you move your model store from Dynamics AX 2012 to a compatible version for Dynamics 365. Then, you will need to work on converting your customizations to extensions or redesign some of your code.

Best practices for managing code for your upgrade:

  • Identify customizations that are unused.
  • Ensure that your Dynamics AX 2012 model store compiles before you load to Lifecycle Services to use the code upgrade tool. You should also begin the upgrade with your production code base.
  • Unify your code so that you can move forward with a single code-base strategy, if you have a global rollout. Upgrade is simpler with a single code base.
  • Ensure that you have compatible ISV solutions on the newest version.
  • Plan for a code freeze during your upgrade. We recommend that you freeze your code. If you are unable to do a hard code freeze, a soft freeze is recommended to only touch code for critical bug fixes.
  • Work to modernize your solution. Learn about new modern solutions and applications that you can use with your solution.
  • Plan to merge your delta code, possibly change your development approach, and bring changes to the new version manually, if you continue development in AX while you upgrade.
  • Consider potentially splitting your code upgrade, if you have a large code base. You can accomplish this task in one of two ways: upgrade based on object type (forms, reports, and classes), or upgrade based on functional area by priority (finance, manufacturing, and so on).

Best practices for extensions:

  • You should review ISV and missing extensions from the core product.
  • You can submit an extension request to Microsoft for missing extensions from the core product. You should submit this request as early as possible because you might experience long lead times.
  • Always raise extensions on the customer project, not the partner project.

Data upgrade/migration

The last stage in the upgrade process is the data upgrade/migration process. You will need to decide whether to bring your entire database forward by using the data upgrade experience or to go through the migration experience. If you use the data upgrade, Microsoft offers a deployable package that triggers the upgrade process. If you select to go through data migration, you will use the data management that comes out of the box with the solution.

Best practices and considerations for data upgrade:

  • Don't upgrade for the sake of reporting requirements. You might have reporting requirements for a certain number of financial periods, which can still be satisfied by using data warehouse or reporting technologies. You shouldn’t bring the entire database forward for this reason only.
  • Evaluate the quality and volume of your data and perform a data cleanup.
  • Consider purging or archiving your data at the source.
  • Consider data upgrade for a smaller and manageable cutover time.
  • Plan to have one Dynamics AX 2012 environment for upgrade exercises with production data.
  • Plan to run data upgrade analysis in Dynamics AX 2012 beforehand.

Best practices and considerations for data migration:

  • By choosing data migration, you have more flexibility for phased rollouts or redesign. You can potentially have a smaller cutover time as well.
  • It is simpler to implement changes in fundamental master data elements.