The following steps illustrate the sequence of events in content migration.
- Finalization of functional specifications design
- Finalize the current and future document state
- Install and Configure the setup of AEM author and Publisher environment
- Finalization of a new design based on the existing and Future website structure
- Finalization of mapping structure between existing website and New website
- Validation of Migration functionality in a Test environment and then move it to production environments
- Add the new content entry to the newly designed website
- Pre-migration of Final content –finalist the content freeze
- Post Content migration, Validation in Production environments
- Delta Migration from existing website to new website based on the new structure
- Finalize the Go Live date
Fig.1 Drupal system to AEM system Mapping
The below diagram describes the Pre-migration steps.
- Existing site Audit Analysis
- Page to Template mapping
- Components to Page mapping
- Web Function migration
- Content Migration Hidden challenges
- Finalizing final wireframe
- Finalizing Base templates based on page structure
- SEO-Impact Analysis
- Complete Sitemap Analysis
- Migration Data Identified
Fig: 2 Pre-migration steps
Template mapping- Template design for Obsolete pages will be a reference to AS-IS website pages
- Template designed for To-Be based on To-Be page structure
- Association of To-Be template
Fig: 3 Template mapping from AS-IS website to To-Be website
Page and Template mapping from AS-IS website to –To-Be website pages- Page Design components identification with reference to AS-IS Page structure
- Create new pages based on finalized To-Be base templates
- Association of AS-IS page to- To-Be page Template
Components and Page Mapping
AEM tree taxonomy:
§ Derive the sitemap based on sitemap from existing site audit analysis and new pages need to be added.
§ For To-Be site map will be created based on the existing site audit map and To-Be sitemap
- AS-IS website component list will be mapped to the To-Be site components list
- Validating AS-IS component mapping with the AEM OOTB component list
- Use of OOTB/Custom component while migrating the static content and dynamic components functionality from AS-IS website to the To-Be site website
- Create pages based on the mapped To-Be template and use custom and OOTB AEM components.
Fig: 5 Components to Page Mapping form AS-IS website to To-Be website
- Based on the existing taxonomy , Create taxonomy in the AEM CMS
- Finalize the Taxonomy structure
§ Derive the sitemap based on sitemap from existing site audit analysis and new pages need to be added.
§ For To-Be site map will be created based on the existing site audit map and To-Be sitemap
Cleaning Your Data
Data Cleaning includes the following tasks
Data Cleaning includes the following tasks
- Inline Markup
- Embedded Links
- Embedded Server side code
- Key points need to be considered during website migration
- Industry best Practice SEO Guidelines will be followed for the website migration-Meta data, keywords and tag migration from AS-IS website to To-Be site
- During migration Minimize the traffic loss
- During migration Minimize the ranking drops
- During migration avoid Key rankings maintenance
- During migration avoid Head traffic maintenance
- During migration avoid Covering additional keywords
- During migration avoid Eliminating non-performers
- During migration avoid Loss of Indexed pages
- During migration avoid 404 errors
- During migration avoid Old site still showing in Google
- During migration avoid Loss of page rank
Digital asset missing
- During pre-migration Identify the asset to be migrated
- During pre-migration Create asset taxonomy structure in AEM and upload images to AEM
Web Function
Migration Cutover Process:
- During migration Identify the web function if any
- Prepare a plan for the static and dynamic component migration
- List of Migration Activities
Fig: 6 Migration cutover activities
Migration Cutover Process:
- Migration from UAT to Prod environment
- After a content freeze in the existing system, for creating any new pages To-Be template will be used to create content in AS-IS website
- During delta, migration author is Drupal system should make note of content and to be the template used for creating content in existing website
- Delta migration to SIT and Delta migration from SIT to UAT, UAT to Prod environments.
Fig: 7 Migration Cutover process
Database Table Mapping from existing to AEM database.- Existing MySQL and MS SQL database table mapping will be done with AEM JCR repository
- Drupal content migration from MySQL to AEM JCR repository
SEO-tags
- During migration from Drupal to AEM all the SEO tags mill be migrated
- While SEO tag migration association of tags with content, dam assets will be taken care in AEM Tagging system
Existing Tag structure and entire tag list
- Existing Tag structure will be taken care of so that it will not impact SEO.
- If required reorganization of Tag structure will be taken care during migration
SEO Friendly URL Redirects
§ Uploading images from the local file system to the AEM system through DAM console
- URL mapping to achieve search-engine-friendly URLs can be accomplished using the Apache Felix Web Management Console. apache sling resource resolver
§ Uploading images from the local file system to the AEM system through DAM console
Converting HTML embedded content to Plain text
- Most of the content in Drupal CMS is HTML embedded content, during migration these HTML embedded contents are converted to Plain text.
- AEM doesn’t support the embedding of HTML content inside the component, from the AS-IS website all the HTML embedded content will be converted to the AEM component.
Static content and dynamic content
- Now migrating the content from Drupal to AEM, Mapping the content and content type to the AEM OOTB components.
Component from Drupal
|
Drupal CMS
|
Adobe AEM component
|
Only Static Content
|
Extract
|
Text component
|
Static content with image
|
Extract
|
Text Image Component
|
Video, Images, and Document
|
Extract
|
Has to be stored in the DAM
|
URL
|
Extract
|
Part of Sling resource resolver
|
Sling Resource resolver component allows adding/remove the absolute or relative path of any URL
| ||
Taxonomy
|
Extract page path
|
Create a taxonomy level page
|
Adobe AEM Static Content-Text OOTB Component
- For any static content, the Text component will be used for the content migration from Drupal to Adobe AEM CMS.
- Existing RSS feeds data will be migrated from Drupal CMS to AEM JCR repository
- AS-IS functionality will be migrated of RSS will be migrated from source to destination system
- All the web forms data from source to destination will be migrated
Migration Process
- Page-level migration through Manual process
- I. Obsolete pages will follow the manual migration
- Set of pages migration through Automated process
- Extracting content from Drupal CMS
- Testing and verifying the accuracy of the extraction and making appropriate changes to the script or program if needed.
Import Content to Target CMS
- Create scripts/programs to perform migration based on mapping specs
- Run migration script to import data to the new CMS
- Test and verify the accuracy of the import and make appropriate changes to the script/program if needed
User Access Control
Note: Yesà Validation is completed.
Table: 1 Test Plan and Script execution sequence.
Table: 2 Migration from SIT to UAT and UAT to PROD
Clean up Content Versions in Production approach
Automated Approach for Migration
Manual Migration Approach
- Export the existing User Details and creating User details and assigning the CRUD privileges to the imported users in AEM
- Creating users and Group details in AEM.
Migration Activities
|
SIT
|
UAT Environment
|
Prod
|
Environment
|
Environment
| ||
Static Content validation
|
YES
|
YES
|
YES
|
Dynamic content Validation
|
YES
|
YES
|
YES
|
End to End Site Navigation validation
|
YES
|
YES
|
YES
|
Branding validation
|
YES
|
YES
|
YES
|
Copyright Validation
|
YES
|
YES
|
YES
|
Validation of images, video, URL
|
YES
|
YES
|
YES
|
Validation of Meta-data, keyword, SEO tags
|
YES
|
YES
|
YES
|
User access control validation
|
YES
|
YES
|
YES
|
The database schema, Table and total records validation
|
YES
|
YES
|
YES
|
Content Version and Latest content validation
|
YES
|
YES
|
YES
|
Sitemap validation
|
YES
|
YES
|
YES
|
Note: Yesà Validation is completed.
Table: 1 Test Plan and Script execution sequence.
- Post content migration few content mapping needs to verify and validated
- Migration verification and validation report shows the status of content migrated from source to destination
- If content creation is getting failed to migrate in any of the instances, that failure needs to be highlighted in the report
Activities List
|
SIT Environment
|
UAT Environment
|
Production environment
| |||
§ Content and Digital assets Migration and Validation
|
Author Instances
|
Validate the content migration
|
Author Instances
|
Validate the content migration
|
Author Instances
|
Validate the content migration
|
§ Delta Migration and Validation
| ||||||
Publish instances
|
Publish the validated content from the author to publish
|
Publish instances
|
Publish the validated content from the author to publish
|
Publish instances
|
Publish the validated content from the author to publish
|
Table: 2 Migration from SIT to UAT and UAT to PROD
Clean up Content Versions in Production approach
- Make sure only the latest content is migrated staging instance to the production instance
- If the content is versioned prior to production migration those content details need to note
Automated Approach for Migration
Task ID
|
Task Name
|
Description
|
Remarks
| |
1
|
Content-Type based metadata
|
Define a list of metadata for each content type
| ||
2
|
Finalized XML Structure
|
XML Structure needs to be finalized with Client SME's
| ||
3
|
Design and Develop Migration Script
|
Design and Develop Migration script based on finalized XML structure from Task# 2
| ||
4
|
Content Populated XMLs for the website to be migrated
|
Client to provide populated XMLs for all target websites which are used for migration
| ||
6
|
Dry Run of Migration Script in Test Environment
|
A dry run of migration script for a single product
|
Table: 3 Approach for Automated migration
- Identify the Static content
- Identify the dynamic content
- Identify the regular dynamic content
- Identify the Static component
- Identify the Dynamic component
- This approach will be “cut and paste.
Initial Content in Production approach
Validate the Production Migration
- Post the entire content migration to production instances, migration has to be tested
- And content changes need to freeze in the OLD CMS
- Avoid content changes in the OLD CMS by removing access rights for the content author
- No need of content freeze in the new CMS in the production environment while the delta content is being imported as shown below approach
- o Post content freeze- To-Be template will be used for any content updates in the AS-IS website – that newly added information needs to be captured in the separate spreadsheet- helps to migrate into the To-Be website.
Fig: 8 Content freeze in Production
- Have validation and verification of steps followed during test migration
- Production migration ensures that all verification and validation approach works in the production environment.
Delta Migration & Validation approach
Perform Migration Validation and Verification in the Test Environment Approach
Post Website Migration Checklist
- To-Be Template will be used for creating content in the Drupal CMS after the content freeze in the Production.
- A final export from the old CMS will pick up all content that has been created or modified since the main migration and import it to the new CMS in production.
- Once the final content migration is done, finally verify and validate the content which is migrated in the production instances.
Fig: 9 Delta content migration and validation
- Validate and verify the content has been migrated to the destination location i.e. AEM
- During migration different type error can show up during this process:
- The error can be Content Issues – Content can be missing, placed in the wrong location, or have incorrect attributes.
- The error can be Mapping Specifications – The mapping specification may be incorrect or incomplete.
- The error can be CMS Configuration – The migration may fail because the new CMS has not been configured correctly.
Fig10: Migration Validation Steps.
- Make sure website pages render properly
- Make sure spelling and grammar on landing and Home page and detail pages
- Use build-in External link checker to verify all external links are working fine
- Make sure all URL redirection works fine
- Make sure all forms are in Reset mode
- Make sure robots.txt file is used for to avoid instance searching for the google engine
- Make sure all Social media buttons are working and URL redirection happens to correct website page
- Make sure 404 and 500, 502,503 custom error page are build
- Make sure website backup is happening on an hourly basis of content and digital assets (incremental backup)
- Make sure once in a 1-month full repository backup is taken
- Make sure internal system monitoring is happening for the Disk, CPU, Memory, I/O, network, Bandwidth
- Make sure there is no temporary URL redirect exist in your website
Fig11: Post website Migration checklist.
No comments:
Post a Comment
If you have any doubts or questions, please let us know.