I have outlined below few tips on best practices for Data Migration which I have learned from my experience. This article might lean towards SAP data migration but I have added perspectives on data migration from non-SAP sources also. These are based on my experiences.
1) Check for the data quality before starting the migration. Make sure the data quality is more than 95% as per end user needs in order for the migration to be successful.
2) Progressive data cleansing is a must . Ideally data cleansing has to start 3 to 6 months before the actual data migration. This will give enough time & space for the End Users to cleanse the data. Informatica AddressDoctor is one good tool for cleansing the addresses & creating a master list of addresses.
3) There may arise a situation when data from multiple sites/locations in the source system needs to be merged into a single target system. In this case, master data de duplication has to be performed.
4) A data migration project can also be a good point where the client can be asked to think about introducing a Master Data Management(MDM) module into their systems. There are several good MDM tools like SAP MDM, Informatica MDM which the client can make use of.
5) In case of data migration from multiple source systems from diverse Data sources like Oracle DB, SQL Server DB, SAP ERP source systems etc., the following points needs to be kept in mind before finalizing the data migration design:
a) The format,datatype, length of the primary keys/Control IDs(like Employee ID for HR module/Material ID for MM module) etc. which will form a basis needs to be finalized in the beginning itself. Consider the hypothetical scenario of a big MNC acquiring 2 or 3 small companies & wanting to merge their HR systems. One HR module may be in SAP HR, the other may be a custom built application using Oracle DB & the third may be a custom built application using SQL Server. In this scenario, it is very important to make sure to standardize the DB schema/tables of the target HR module considering the data present in all the three different source systems.
b) The driving tables,keys in each source system needs to be identified & a common platform established before starting the actual data migration. The Source to Target matrix(STM) has to be clearly defined during the HLD/Detailed Design stage.
5) Before uploading the data into target SAP system, it is a good practice for the SAP team involved in migration to check the quality/correctness/format of data. This will help prevent unnecessary iterations of loading the data again & again into target SAP system.