About the client
The International Packaging Group, Association is an international community of folding carton and packaging producers and world-leading suppliers to the packaging industry. Its history dates back to 1963. IPG's work contributes to the development of a transparent market with healthy competition. The Association's website is one of the tools for establishing such a market.
The Association had two Drupal 7 websites: a promo website with information about the organization and a website for working with reports and statistics. The main task for ADCI Solutions was to migrate the sites from Drupal 7 to Drupal 8 and merge them together for cheap and easy maintenance in the future. The websites did not need a redesign, so the work boiled down to a literal reproduction of the site on a more modern core.
While the first website was purely content-driven and thus not tricky, the second one was tied to the data that had been accumulated over decades and the formulas that drew up statistics reports and bar charts based on this data. This functionality was accessed through the dashboard.
This panel is accessible only when logged into a personal account that every Association member has. The panel allows you to work with the technical specifications of the equipment, compare machine parameters, make bar graphs that reflect equipment performance, get the Association members’ contacts, and read reports from meetings.
Under Machines, a member can add to the list a new piece of equipment via the Drupal admin panel. Each node represents a type of equipment. Within the node, the user fills in fields with technical information.
Migration of data and formulas
Over the years, the Association has accumulated a lot of data on different machines: their performance, wear, maintenance, and other parameters. Migrating it required careful attention from the ADCI team since some pieces of equipment differed from each other by one or two parameters, and thus we could not associate them with the same table.
Equipment type, manufacturer, and date range of manufacture are required parameters that must be specified to build a performance chart.
When transferring the data, we kept the formulas that are used to make bar charts in their original form in the Statistics section. The tester had to make sure that each formula worked correctly by comparing the charts created by the new site to the ones made by the old one.
An unexpected turn
The project looked like a typical Drupal migration case until ADCI Solutions specialists encountered a bunch of messy legacy PHP code that ignored the usual Drupal methods and patterns. Forms and reports were built unconventionally, and data bits were not connected to each other. It was a website with a huge technical debt — issues with the code or architecture accumulated due to poor quality development, which caused additional labor costs.
Drupal 7 and Drupal 8 are fundamentally different, so directly transferring the data structure and custom code from one core to the other became a complex task full of subtleties.
Given the unusual and, in some ways, even extreme conditions, ADCI Solutions managed to merge the two sites into one and preserve the previous functionality so that users did not need to get used to new scenarios of interaction with the platform.
The custom code was redesigned to look and perform much better. This resulted in less legacy technical debt and improved site performance. Proper caching has reduced the overall load on the site, and the time to display the first interactive element of the page decreased from 7.1 to 1.1 seconds. This accelerated the page rendering and the construction of reports and bar charts.
We keep in touch with the client and are ready for new challenges.