About the client
The IPG Association is an international association of professionals in the field of cardboard packaging, dating back to 1963. At annual meetings, its members discuss the know-how, new technologies, innovations, and production methodology. The work of the IPG Association promotes the development of a transparent market with healthy competition. One of the tools to establish such a market is the Association website.
The key task
The Association had two Drupal 7 websites. The one was a business card with information about the Association, and the second had a technical emphasis and allowed working with reports and statistics. The ADCI Solutions' main task was to upgrade the websites from Drupal 7 to Drupal 8 and integrate for the simplicity and cheapness of support and maintenance in the future.
If the first website was purely content and didn't seem like something complicated, then the second website was tied to data that was accumulated for decades and formulas that built statistical reports and histograms based on this data. This functionality was accessed via the control panel.
The control panel can be managed only through a personal account, which is exclusively owned by members of the Association.
It includes sections with:
- contact details of other members of the Association,
- pdf-reports from the meetings of the Association,
- technical specifications of the equipment in use,
- comparative data on the productivity of different machines of different brands and a tool for constructing histograms showing the performance of the equipment in different years.
Users can upload reports themselves and create new equipment cards with all relevant parameters.
A member of the Association can list a new piece of equipment via the Drupal admin panel in the Machines section. Each node is a type of equipment. Inside the node, the user fills in the fields with technical information.
Over the long years, the Association has accumulated too much data on different machines: performance, wear, maintenance, and other parameters. Their migration required careful attention from the ADCI team - some pieces of equipment differed from each other by one or two parameters, and it was impossible to build identical tables for them.
The type of equipment, manufacturer, and date range of products are mandatory parameters one would establish for creating a productivity table.
In the data transfer, we kept the original formulas used for building histograms in the Statistics section. The QA checked the correct operation of each formula by comparing the histograms constructed based on them on the new and old websites.
The flip side of the project
The project was going on typically for Drupal development until ADCI Solutions specialists found a bunch of random legacy PHP code that didn’t adhere to methods and patterns of Drupal. Forms and reports were built in a non-Drupal way, and data bits were not related to each other. It was a website with a huge technical debt - in particular, there were problems accumulated in the code and the website architecture. Such a situation usually results in additional work in the future.
Drupal 7 and Drupal 8 are fundamentally different from each other, so the direct migration of the data structure and custom code from one core to another became a complex and delicate task.
In spite of the unusual and some extreme conditions, ADCI Solutions managed to combine two websites into one, keep the same functionality and the familiar user scenarios of interaction with the website. Custom code has been refactored, and now it runs much better. This resulted in less technical debt and improved website performance. Website load speed and display time of the first interactive element on the page decreased from 7.1 seconds to 1.1 seconds due to proper caching. Accordingly, this accelerated the rendering of the page and the construction of reports and histograms.
We keep in touch with the client and are ready for new challenges. If you're doing business in the field of cardboard packaging, visit the IPG Association website and find something new for yourself.