Download Session Title - Dynamics User Group

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Microsoft Access wikipedia , lookup

Database wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Team Foundation Server wikipedia , lookup

Database model wikipedia , lookup

Clusterpoint wikipedia , lookup

Relational model wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Open Database Connectivity wikipedia , lookup

SQL wikipedia , lookup

PL/SQL wikipedia , lookup

Transcript
Upgrading Tools and
Strategies
Presented By:
Scott Frappier
Symbiant Technologies, Inc.
Mark Brummel
Liberty Grove Software Europe
Fueling Success
Agenda
• The Microsoft Story
– The Benefits
• The ‘Team’
• The Job
– The Tools
• Pitfalls
– tips and tricks
Fueling Success
The Microsoft Story
"Why yes, I do believe it updates
automatically to new versions
through Windows update, right
John?"
Fueling Success
Microsoft Solutions Framework
Fueling Success
Benefits
• For you:
– Increases customer satisfaction
– Improves your competiveness
– Offers a chance to implement new
functionality that benefits the customer
– Offers a chance to implement your
own add-on solutions
– Decreases your support effort
Fueling Success
Benefits (Continued)
• For your customer:
– Keeps business processes up to date
– Allows expensive customizations to be
replaced by standard functionality built
into the latest release.
– Resolves localization issues that have
only been implemented on latest
versions.
– Allows for a broader integration to
other Microsoft products.
Fueling Success
Now back to the real world
HELP
I have to do an upgrade
Fueling Success
The ‘Team’
• A developer doing an upgrade may
have multiple roles as they go
through the upgrade process
– Program Manager
• Focuses on delivery the product within
the project constraints.
• Responsible for project management,
solution architect, process assurance,
and administrative services
• Main goal is for the delivery of the product
Fueling Success
The ‘Team’ (Continued)
• Upgrade roles…
– Product manager
• Focus is to satisfy customer
• Responsible for marketing, business
value, customer advocacy, and product
planning
• Generally covered by the Sales staff
within your organization
Fueling Success
The ‘Team’(Continued)
• Upgrade roles…
– Developer
• Focus on building to product
specifications
• Responsibilities include technology
consulting, implementation architecture
and design, application development, and
infrastructure development
• Generally, a good understanding of the
program is required for a successful
developer role
Fueling Success
The ‘Team’(Continued)
• Upgrade roles…
– Tester
• Focus is to address all product quality
issues
• Responsible for test planning, test
engineering and test reporting
• This role can be usually satisfied by the
end customer if they can be held to task
by the program manager
Fueling Success
The ‘Team’(Continued)
• Upgrade roles…
– User Experience
• Focus is to enhance user effectiveness
• Responsible for accessibility,
internationalization, technical
communication, training, usability, and
graphic design
• Usually in charge of training and
documentation
• This role is critical with new the UI with
the RTC as all documentation may need
to be updated in an organization
Fueling Success
The ‘Team’(Continued)
• Notes
– If the original team that implemented
the site is available, it is considered a
best practice to use that team’s
resources during the upgrade
– A developer of an organization may
have 1 or all of these roles during the
upgrade process.
Fueling Success
MANAGE EXPECTATIONS!
Do it right from the beginning
The Job
•
•
•
•
•
Analysis
Splitting up the project
Startup, Testing & Roll-out
Go-Live
After Care
Fueling Success
Database Analysis
• Version
– How old, Steps, Modifications, Add-on’s
• Database
– Native, SQL2000
• Client
– Classic or RTC
• Hardware and Infrastructure
– Does it need updating
Fueling Success
Versions
• Every database can be upgraded
– Only some are more work 
• Some versions have specific issues
• Look at where is the data, unused
modules are non issues
Fueling Success
Versions and Features
• CRM (Version 2.0)
• Dimensions (Version 2.x)
• Bin story (Version 3.x)
• Inventory Valuation (Version 3.x)
• Item Tracking (Version 3.6 & 4.0)
• Menusuites (Version 4.0)
• Jobs (Version 5.0)
• Role Tailored Client (Version 6.0)
Tip : Analyze the upgrade toolkit objects to see
what it hits
Fueling Success
Upgrade Steps
•
•
•
•
2.x  2.6
2.6  3.7 or 4.0
3.7 or 4.0  6.0 (5.0)
5.0 and 6.x tables are ‘identical’ (Almost)
– No upgrade toolkit required
– Business logic has changed (a lot)
Tip : For these additional steps, only merge the
fields and sizes in the in between versions
Fueling Success
Level of Modifications
• How Many Objects per type
• What kind of modifications
– Field changes
• Changed Field Length
– Code
– Form and Report UI changes
– Properties!
• DataPerCompany
Fueling Success
Replacement of Mod’s
• Can a modification be replaced with
new standard functionality
• Be careful with this! Big project risk!
Tip : Sometimes it can be better
(safer) to bring forward a
modification first and replace it
afterwards
Fueling Success
Add-on’s
• Are there add-on’s involved
• Is there a new version of the add-on
– Yes  Does the customer want that?
– No  Can we treat the add-on as
normal modifications. Is it using old
tables or functionality which is gone
• Is the add-on supported by the NAV
Partner
Fueling Success
Database upgrade flavors
• Native  SQL
• SQL 2000  SQL 2005 or 2008
Check if changes were made on SQL
Leven
Not as easy as it seems
Fueling Success
Implementing the RTC
• More (much more) training
• Big Bang vs. Department at a time
• Fully implement Transformation tool
or not?
• Moving the Reports
Fueling Success
Hardware
• Is my infrastructure still sufficient?
• Schedule in time
• Never release new infra exactly
together with a new ERP unless it is
unavoidable
Fueling Success
Splitting up the project
Real Life Example:
‘The customer wants to go from 3.60
Native on a physical box to
NAV2009 with the latest version of
the Vertical Solution, RTC and SQL
on a Virtual System’
Fueling Success
Different Phases
1. Technical Upgrade from 3.60 to 6.0
Classic Client
2. Functional upgrade on Classic Client on
Native Database
3. Vertical Solution Upgrade
4. Migration to SQL Server 2008
5. Bring in new infrastructure
6. Implementing the RTC on different
departments
Fueling Success
Starting up The Project
• Planning
• Creating the test database
• Testing
– Benchmarking
• Roll Out
Fueling Success
Planning
• Make a good and realistic schedule
• Freeze the production system if you
had not already done so
• Never, ever develop changes in the
old system during the project
• Create an escape plan (What if
scenario's)
• Learn people how and what to test
Fueling Success
Creating the Test Database
• Do the merge stuff 
• Create a detailed list of all objects that
need end user input
• Document
• Change the upgrade toolkit if required
• Run the upgrade toolkit
Tip : Measure the time the upgrade runs.
This will be the ‘downtime’.
Fueling Success
The Tools
• Developer Toolkit
– Application designed to make merge’s
easier for your development tasks
• Mergetool
– Another application designed for
merging written in C/AL
• Upgrade Toolkit
– Required for data upgrades of a
database
Fueling Success
The Tools (Continued)
• SQL Server Data Check
– Tool created to check data in C/SIDE
to ensure SQL conversion success
• Transformation Tool
– Used for the transition of NAV objects
to the RoleTailored Client
• Notepad
– Everyone’s favorite text editor for
Windows
Fueling Success
TOOLS
DEMO
Fueling Success
Testing Tip!
• Save a copy of the database in the
status you did the test conversion
• Let users test all scenario’s in the old
and new database
• All results must be the same
– Documents
– Ledger Entries
– Management Reports (TEST REPORTS)
Fueling Success
Test, test & test; then test again
• There is no such thing as to much
testing
• Test for performance as well
• Don’t forget interfaces, NAS
processes and reports
• Be careful not to damage the trust of
the end user in the project
Fueling Success
Solving bugs
• Document all changes
• This will keep you from doing
multiple test conversions
• Create extra conversion steps rather
than going back to the upgrade
toolkit
• Test!
Fueling Success
Native 2 SQL Migration
1. Define the upgrade/migration type
2. Choose hardware & correct SQL Version
3. Checking SQL Data types
4. Test conversion
5. Testing
6. Benchmarking
7. Fixing Issues
8. Go-Live
9. After Care
10. 3 Months after go life
Fueling Success
Native 2 SQL Migration
1. Define the upgrade/migration type
2. Choose hardware & correct SQL Version
3. Checking SQL Data types
4. Test conversion
5. Testing
6. Benchmarking
7. Fixing Issues
8. Go-Live
9. After Care
10. 3 Months after go life
Fueling Success
Step 3 - Checking SQL Datatypes
• Datetime
– Date and time do not exist on SQL
– SQL starts at 1753; NAV at 0000
• Not all native characters are
supported by all SQL collations
– Migrate.fob
– Very time consuming
Fueling Success
Step 3 - Checking SQL Datatypes
• Make table 104010 [Incorrect Data Value]
Autoincrement
– Remove Deleteall from Codeunit
• 104011 [Data Check Management] and put in
COMMIT
– Make several Field Check codeunits for
smaller parts and run on different clients
Tip : http://www.mibuso.com/dlinfo.asp?FileID=1150
Fueling Success
Step 6 - Benchmarking
• Only way to test performance
without golive
– Simulate User Input
– Activate Interfaces
• Don’t forget to test reporting !
• Combine manual testing and
benchmarking
Fueling Success
Back to the upgrade
We have created a test conversion
and solved all the bugs, now let’s go
live!
Fueling Success
Roll Out
• Roll Out the new client everywhere
• Move to new infra if possible way
before go live
• Do a technical upgrade first to tackle
stuff like printer issues
• Plan external parties if involved for
go-live
Fueling Success
Go-Live
• Plan the expected downtime
• Be on-site
– Depending on the type of customer you
know you are home free after a day or
a week
• Create one or two test databases
with go-live data
• Have remote access afterwards
Fueling Success
After Care
• Usually takes a month where bugs
are found in non daily processes
• Solve them quickly to keep users
believe in the product
• Measure performance after 3
months
Fueling Success
Pitfalls, Tips & Tricks
• Shared tables (DataPerCompany)
• Developing in database while doing
the project
• Doing to many steps in one project
• Never release new infra exactly
together with a new ERP unless it is
unavoidable
Fueling Success
Pitfalls, Tips & Tricks
• Having someone on the team who
did the original implementation or a
previous upgrade
• A upgrade can be a one persons job
• On your first upgrade project multiply
estimated times by 3 or 4. On the 4th
or 5th by 1.2. From the 10th by 0.8
• Seek professional help
Fueling Success
Q&A
?
Fueling Success
Scott Frappier
Symbiant Technologies, Inc.
[email protected]
Mark Brummel
Liberty Grove Software Europe
[email protected]
Thank You for Attending Directions 2009!
Please remember to fill out your session evaluation
form! (Online as well at
http://evals.navdirections.com)
Fueling Success