from microsoft dynamics ax 4.0/2009 only new hardware bulk copy program (bcp) ~2500 target scripts...
TRANSCRIPT
March 18-21, 2013New Orleans
#conv13
Upgrading to Microsoft Dynamics® AX 2012Andrew Jewsbury – Senior Program Manager - MicrosoftKevin Kidder – Principal Escalation Engineer - MicrosoftAndré Vargas – Creative Artists Agency
DDAX03
March 18-21, 2013New Orleans
Session objectives and takeawaysWhy• Most customers are just starting their upgrade project to Microsoft Dynamics AX 2012• Upgrade is not a one-click process! It is a true project with phases, budgets, risks and
deadlines
Understand• How to upgrade to Microsoft Dynamics AX 2012 with reduced business disruption and
cost
Learn• Key considerations for planning and executing a Microsoft Dynamics AX 2012 upgrade• Best practices for a successful upgrade
See• Customer example
Upgrade projectoverview
Upgrade best practices
Customer example
Agenda
Upgrade project overview
Andrew Jewsbury – Senior Program Manager - Microsoft
Typical questions
What is the upgrade project value?What are my goals?
Goals and functional analysis
Plan Testing and GoLive Development
Upgrade project phases
GoalsDefine the customer’s benefits from the new version
Functional design must be approved by the customer
Functional data analysisUpgrade all ERP data to Microsoft Dynamics AX 2012 or just a subset (master data and balances)?
What is the data volume and do you need it all?
Functional customization analysisWhat are the number and types of customization? Are they replaced? Should you re-implement or upgrade?
What partner (ISV/VAR) involvement do you need?
Functional company analysisHow many virtual companies are there and what are the data sharing goals?
Independent companies or cross-company?
Do you want to merge AX implementations or companies?
Goals and functional analysis
Significant functional changes
Organization structureDataAreaID is still used but relationships and data sharing are different
General ledger and financial dimensionsAccounts and dimensions merging, resolving conflicts
Ledger transactionsThere are six tables to substitute LedgerTrans
ProductsInventTable was used differently, ecoRes* table family is used for products/items
Main technical changesDatabase systems supportMicrosoft® SQL Server® 2008R2/2012 is supported, Oracle is not supported anymore
Tables relations and inheritanceRelations are moved on table level, tables support inheritance
PartitionsIsolates a number of legal entities
Application Integration Framework and Enterprise PortalRebuilt, partial migration is possible
Security based on rolesSecurity setup migration is not supported
Report engineSQL Server Reporting Services are used, X++ reports are not supported
Code storageCode is migrated in separate database *_model
InfrastructureRequirement has been changed significantly, with new components (Help Server, for example)
Main technical changes (continued)
Upgrade project plan - Sure Step
Upgrade project development optionsSource-to-target upgrade model• Upgrade from Microsoft Dynamics AX 4.0 or Microsoft Dynamics AX 2009• Parallel execution of data copy, data transformations and sync-on-the-fly to the target
Microsoft Dynamics AX 2012 system• Data transfer time limitation
In-place• A new upgrade approach to allow upgrade on existing source Microsoft Dynamics AX
2012 RTM system • Mostly technical upgrade
Restarting• Implementation with importing master data and balances• Functional design becomes more standard
Source-to-target versus in-place
Key differences
From Microsoft Dynamics AX 4.0/2009 onlyNew hardwareBulk copy program (BCP)~2500 target scriptsCan upgrade into multiple partitionsFast database synchronization
Source-to-target
From Microsoft Dynamics AX 2012 onlyExisting hardwareNo BCP~50 upgrade scriptsOnly upgrade into a single partitionLonger database synchronization
Upgrade in-place
Production Active on AX 3/AX 4
Production active on AX AX2009/
Ax4Preprocessing Data Copy Post
Processing
Production Active on AX
2009
Production Production
Downtime
Upgrade operations
100%
Downtime
Single user processing
Delta preprocessing
Production active on AX
2012
Live on production
Upgrade operations
80%
Upgrade operations
20%
Before NowSource-to-target
Do we have any limit
here?
In-placeCreate test
system
Create development
system
Upgrade customer
model
Test data upgrade
Upgrade production
system
Duplicate existing
production system to
create the test systemRun AX 2012
R2 setup on the test system
and backup
Duplicate test system to create the
development systemImport
prepared R2 ISV models into development
system
Upgrade the code in other
models for each higher
layerImport
upgraded model store into the test
system
Perform data upgrade on the
test system
Back up the database
Upgrade the core production
system
Upgrade other server
components and clients
Upgrade best practicesKevin Kidder – Principal Escalation Engineer - Microsoft
Planning and metadata
PlanningTechnical upgrade with no functional analysis significantly increases project riskMerging companies or splitting data should be done separately before upgradeDowntime window requirementsHardware and database server review and optimizationFunctional specifications for moving/deleting/changing of customizationsMetadataAlways follow the checklist stepsNever do preprocessing then import the AOD’s for code upgrade Never use xpo export/import for upgrades; if xpo absolutely
required, make sure you keep IDs Never delete Data Dictionary elements; use
SYSDeletedObjects If absolutely required only delete metadata on target SYSDeletedObjects62 is ONLY for In-place upgrade
Data upgrade
Scripts for data upgradeHow much upgrade script development is required?Consult with your VARs and ISVs to check if they have upgrade scripts in place As the overall project makes progress, code and data upgrade can complement each otherUpgrading reports can be used as a data-validation exercise
Data upgrade Always follow the checklist Perform Upgrade Readiness in production AFTER a successful
complete end to end test run Use the State transfer tool to reuse work Run through cleanup routines in some Periodic menus and IDMF Several cycles to update the data: scripts for customized tables,
unique data tuning, and repeating until the required time window
DatabasePerformance Analyzer for Dynamics
SQL Profiler and Microsoft Dynamics AX Performance Analyzer are useful for debugging performance slowdowns http://archive.msdn.microsoft.com/DynamicsPerf
License
Existing Microsoft Dynamics AX 6.0/R1 license does not work in Microsoft Dynamics AX 6.2/R2
Data purging and archiving
Do not purge/leave behind companies, upgrade all companies at once
Purge and archive data via intelligent data management framework before upgrade
Backups
Back up database after each step!
TestUser acceptance test
Core business processes and key scenarios on upgraded database with your data and custom code in place
Business scenarios that must be supported after the upgrade in order to make a go/no-go decision
Trainings
User trainings are very important steps and user acceptance tests can be used as part of that
Multiple iterations
Plan at least two full test runs that are successful prior to running the live upgrade
Create a list of post-upgrade validation tasks and plan how they will be tested
Security
Additional time for designing and testing security setup
ExecutePost-upgrade tasks
Static post-upgrade data analysis
Rely on data upgrade test iterations to bring data forward to Microsoft Dynamics AX 2012 and test code upgrade
Data verification
Identify your key business processes/scenarios that must be supported by your Microsoft Dynamics AX 2012 instance
All tests should have a high level of data validation testing
Troubleshooting
Data consistency issues during upgrades: http://blogs.msdn.com/b/axsupport/archive/2012/11/05/troubleshooting-data-consistency-issues-during-upgrades.aspx
Freezing
Freeze for existing master data for preprocessing period is required
Inventory dimensions and items need special attention
More informationUpgrade best practices: http://go.microsoft.com/fwlink/?LinkId=238709 Microsoft Dynamics AX 2012 Upgrade Guide: http://www.microsoft.com/en-za/download/details.aspx?id=14599 Microsoft Dynamics AX support blog: http://blogs.msdn.com/b/axsupport/archive/2011/12/11/planning-your-data-upgrade-to-microsoft-dynamics-ax-2012.aspx
Summary
Check functional requirements
Plan your upgrade project
Analyze your source
Check customer motivation
Test the resultCheck and tune
performanceMake backups for
every stepPurge or archive historical data
Customer example
Creative Artists Agency - André Vargas
Goals and Functional Analysis
Plan Testing and GoLive Development
Upgrade project phases
PlanningScoping and planning
Proposals ranged from 12 to 16 weeks…
… it took 9 months
Waterfall vs. agile? We used scrum
Risk management
Size of the upgrade
Work sequencing
Testing
Performance
Context
60 users in accounting, finance and HR
260 GB database
Trust process had the most customizations
Change management
User experience change
Training and communications strategy
Not a silver bullet
Parallel testing
Team and resources
Hard to find the right resources.
Requires lots of memory, disk space and processing power … more than we thought
Risk register and project plan
Change Management
The user experience change
Training and communications strategy
Not a silver bullet
Parallel testing
Team and Resources
Not easy to find the right resources for an upgrade.
The upgrade requires lots of memory, disk space and processing power … more than we thought
Initial upgrade roadmap
Change Management
The user experience change
Training and communications strategy
Not a silver bullet
Parallel testing
Team and Resources
Not easy to find the right resources for an upgrade.
The upgrade requires lots of memory, disk space and processing power … more than we thought
Our decision matrix
Key statistics
Team2 developers for data upgrade7 developers for classes and forms upgrade3 functional analysts4 testers1 report analyst 3 report developers
80/20 rule
UpgradeTime (including pre-processing)Iteration 0 = 168 hoursPre go live iteration = 74 hours
First run failed scripts28 validation scripts 60 preprocessing scripts 146 post processing jobs
Other700+ objects upgraded manually198 test cases generating 1000 + test scenarios
DevelopmentFunctional analysis
Apples to apples upgrade. No process re-engineering
Looked at new AX 2012 features that could result in less customizations
Prepared training based on processes
Technical analysis
Engagement with the AX R&D team
Decision matrix
Infrastructure needs
Iteration 0
Data upgrade
Target schema
Upgrade scripts development
5 initial iterations, then 7 more during parallel testing
Smooth for the most part
Code upgrade
Code freeze struggles
Followed best practice:EDTs and Base Enums -> Tables -> classes -> forms
Had to rewrite all custom forms and all reports
From the trenches• Waves of testing, training, and then parallel testing• Sunk cost on iteration 1 … bug in upgrade script• Gotcha example – date effectivity example• Some upgrade script recommendations:
Changed standard upgrade script from row based to set based, reduced data migration duration from 55 hours to 5 hours
Changed standard script to commit after every 1000 updates where while loops cannot be avoided
Testing and go liveBenefits-based testing
Prioritized on benefit and risk
Plan for things to go wrong
Discover rework early
Invest in testing team and tools
Performance testing
Key processes performing slower in Microsoft Dynamics AX 2012
Performance review
RDS versus Rich Client
Going live
Go live checklist
Well versed in the process
The first day in AX 2012
6 Weeks of stabilization
Parallel testing
Critical success factor
All users completed their daily tasks on Microsoft Dynamics AX 2009 and Microsoft Dynamics AX 2012
7 full upgrades over 9 weeks
The checklist127 steps, starting on a Wednesday preparing the upgrade and preprocessing and finished Sunday afternoon, ready for business
First weeks after upgrade• Day one, our servers crashed 30 minutes before the end of
the day!• Substantial memory leak bug forced us to restart servers by
lunch time• Performance of our business users better than ever
What we are focusing on today
Conducted a performance review with Microsoft and implemented recommendations
Shift from a value creation phase to value extraction phase
Completed our upgrade to Microsoft Dynamics 2012 R2, which was a much smoother and smaller undertaking
Our critical success factors
Managing risks
Engagement with Microsoft
Dynamics AX R&D team
Our planningBusiness buy in to the process
Change management
Parallel testing The checklistAccess to resources
Next stepsKey actions, resources and Convergence-related sessions/activities
Submit your session evaluation through our mobile event app or by logging into My Convergence on your PC.
Review and relive session recordings and PowerPoint files inside My Convergence.
Check out these related breakout sessions: <speaker to add>
The Convergence Experience Center has free technical support, Convergence theater presentations, demonstrations and the social experience, featuring the Media Wall and live social feeds.
Use the #MSDynAX and #conv13 hashtags
Scan this tag to get points for participating in this session.
Access Explore Socialize
Did you know that it takes just 5 minutes to help improve Microsoft Dynamics AX documentation? Take the survey at http://t.co/mvBzFNzi.
Survey
© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.