April 22, 2020
Estimated Post Reading Time ~

Drupal to AEM CMS Migration Approach

Milestones For DRUPAL to AEM Migration Approach:
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
Existing Drupal system to AEM system mapping

Fig.1 Drupal system to AEM system Mapping

Pre-Migration Activities: AS-IS Site Migration to - To-Be Site Migration

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
Fig: 4 Page and Template mapping from AS-IS website to –To-Be website 

Components and Page Mapping
  • 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

AEM tree taxonomy:

  • Based on the existing taxonomy , Create taxonomy in the AEM CMS
  • Finalize the Taxonomy structure
Sitemap
§ 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
  • Inline Markup
  • Embedded Links
  • Embedded Server side code
Avoid SEO Impact during website migration
  1. Key points need to be considered during website migration
  2. 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
  • During migration Identify the web function if any
  • Prepare a plan for the static and dynamic component migration
Migration Cutover-Activities
  • 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
  • URL mapping to achieve search-engine-friendly URLs can be accomplished using the Apache Felix Web Management Console. apache sling resource resolver
Video’s
§ 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.
RSS feeds
  • 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
Web forms data
  • 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
Extract Content from Source CMS
  • 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
  • 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.
Create a Test Plan and Test Scripts Design Approach
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
Perform Migration from SIT to UAT and Prod
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
Content Migration Methods or Approaches
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

Manual Migration Approach

  • 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
  • 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.
o During Delta content migration- initially, migration will happen to production author instance hence there is no need for a content freeze in production – however delta migration will not impact the live website-i.e. publish instances.

Fig: 8 Content freeze in Production

Validate the Production Migration
  • 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
  • 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

Perform Migration Validation and Verification in the Test Environment Approach
  • 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.

Post Website Migration Checklist
  • 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.


By aem4beginner

No comments:

Post a Comment

If you have any doubts or questions, please let us know.