How to estimate Drupal 7 to Drupal 8 migration

When a customer asking cost and time estimation of upgrade of a existing Drupal 7 to Drupal 8 most of project managers and developers finds difficulty to estimate since they will be doing this  first time. Through this series of blog post I will explain how we will accurately estimate upgrade process by considering all difficulties that we may face during upgrade of current drupal 7 instance to Drupal 8 version.

As we already know Migration to Drupal 8 is more of a re-build than a simple upgrade. While the content, users, and other elements can be systematically moved over cleanly, it is still needed to :

  • Re-create the themes
  • Install and configure modules
  • Reconfigure views, and much more.

The complexity of an upgrade is determined by the complexity – and quality – of your existing Drupal 7 instance.  If current Drupal7 instance is a website with single main theme and without custom modules and without any customization in core and contributed modules, then difficulties facing during migration is less. But most of the websites have multiple themes and multi domain multi site configurations. So there will be multiple custom modules and lot of contributed modules and that may be customized for various custom functionalities for specific users. We need to understand for what purpose all these customizations are done in contributed and core modules. And we have to do same in new Drupal 8 instance and have to test it whether all functionalities are working fine or not.

So before estimation we should know that time required to migrate to Drupal 8 is same as building new website in Drupal 8. Also there are tools available to automate each process in migration but which are not automate all migration , in that case we to do custom some script and manual migration example like manually creating  taxonomy in current instance.

Migration of a existing D7 to D8 can be broadly classified into below steps

  • Migration of content , configuration , fields and users etc
  • identify each existing contributed module and check whether its D8 is available or not. If it is not available install corresponding alternative module.
  • Migration of contributed modules
  • Migration of existing custom modules
  • Migration of themes or recreate themes

Related to theme files there should be clear understanding of how many template files are there, including view templates and page template files. Later in this series of blog I will explain practical difficulties that may we will face during migration of theme files.

Configure and run Audit modules on current Drupal 7 website

in this section I will explain various modules that can be helpful to identify current status of various contributed and core module so that we can understand complexity that can be expected while migration process in progress. Also these modules provide various reports that will help to estimate migration effort and cost.

While configuring these auditing modules , this should not do in Production instance. Also not need to install all modules listed here . These modules will help you to understand various parameters and complexities that may phase in future while migration process going on.

Hacked module

This module scans the currently installed Drupal, contributed modules and themes, re-downloads them and determines if they have been changed. Changes are marked clearly and if the diff module is installed then Hacked module will allow you to see the exact lines that have changed.

Hacked! also provides drush integration so that you can see what files have changed from the command line.This is primarily a developer tool and should never ever (don’t even think it) be installed on a production site.

You can download module from here https://www.drupal.org/project/hacked

Keep this list of changes in a excel sheet which need to be ported to new website.

Drupal 8 upgrade estimate module

You can also install and run this module which will provide various report on based on current modules installed in current instance. This module can be used for estimation purposes. This tool uses a proprietary algorithm, input data and more factors to generate a report which calculates the effort required in the migration.

You can download module from here

https://www.drupal.org/project/d8_migration_check

Please see below details about available reports in this module. Also advanced features are available

https://migrate.opensenselabs.com/migration-report/techtud

auditfiles

https://www.drupal.org/project/auditfiles

Audit files is designed to perform audits of your upload directory and the corresponding database records. It will cross check that all files in the database have a corresponding physical file, or it will check that all files in the upload directory have a corresponding entry in the database.

security_review

The Security Review module automates testing for many of the easy-to-make mistakes that render your site insecure.

Download and enable the module and just hit the “Run checklist” button to see results.This module  not fix any security issue. This will give you list of security threats

https://www.drupal.org/project/security_review

site_audit

Site Audit is a Drupal static site analysis platform that generates reports with actionable best practice recommendations.

The end result is a fast, repeatable report that can help detect common problems and provide introspection into Drupal sites. Reports can be generated in multiple formats, including plain text, HTML, and JSON.

https://www.drupal.org/project/site_audit

Seckit

SecKit provides Drupal with various security-hardening options. This lets your mitigate the risks of exploitation of different web application vulnerabilities.

You can download module from here.

https://www.drupal.org/project/seckit

 

Downlod Free Ebook on Drupal theme tutorial

Read – Preparing for Drupal8  Migration

Get Free E-book
Get a free Ebook on Drupal 8 -theme tutorial
I agree to have my personal information transfered to MailChimp ( more information )

You may also like...