ABC Commercial approached reinteractive in April 2011 with a daunting requirement; to recreate the ABC Shop Online and launch by the end of October that year. Daunting or not, we knew we were up to the task and began work immediately!
The current site was running on a legacy Microsoft web application platform, integrated with the ABC stock fulfillment system, as well as several external payment gateways and voucher systems. The Shop Online had been in operation for over 7 years and so consisted of millions of rows of data that also needed to be migrated to the new site in order to provide a seamless experience for past clients and ABC VIP members.
With the existing system being an end to end Microsoft solution using MS SQLServer, and having 7 years of development behind it, the database structure of the site was in need of a major cleanup and refactoring. The new site would have a radically different product classification system, not to mention new functionality necessitating a structure allowing for complex search queries to be executed as quickly as possible.
This migration would need to be done in one quick and seamless transition on launch day.
With all this in mind, reinteractive were tasked with creating an import script that allowed for the existing database to be simply imported into the new structure. The development of this import process began in April and was constantly improved, expanded and tested on a weekly and sometimes daily basis right up until the cutover date.
By putting the migration script through it's paces constantly throughout the development of the project, reinteractive were able to create a reliable and thorough import process - one that ran flawlessly on deployment day.
Internal Team Building
ABC Commercial also requested that reinteractive assist by providing a technical assessment of internal team prospects. reinteractive attended prospect interviews and was part of the recruitment process, allowing ABC Commercial to secure their internal team lead with confidence.
Once the internal team were recruited, reinteractive provided developers to train and work alongside the ABC Commercial staff. The reinteractive team assisted in training and development of the internal team's skills over the 6 month period.
By providing this assistance in recruitment and training, ABC Commercial were able to rapidly assemble an internal team that were capable of continuing the development and primary support of the ABC Shop Online, reducing future consulting and development costs.
With less than 6 months available to recreate the entire site, reinteractive worked closely with ABC Commercial's Project Manager to implement a customised agile development process. This allowed for key features to be developed according to priority, as well as testing of freshly delivered features by ABC Commercial.
Towards the end of the 6 month window, this agile process was critical in scope management, allowing the management team to prioritise remaining feature requests and bugs to ensure that the most critical were handled before deployment.
Given the large number of stakeholders involved in the project, the agile process allowed the entire team to remain responsive to required changes, and heed off any risks caused by competing priorities or functionality.
The deployment itself was done over a 12 hour window, with the legacy site being taken offline and all data migrated across to the new production site. Our staff were on hand during this entire process to ensure a smooth cut over.
The smoothness and professionalism of the deployment process was commented on by several of the ABC staff, but more importantly, minutes after the process was complete, the first order came through, followed by the next, and the next and then a constant stream of orders arrived beating previous traffic and sales levels by a significant margin.
Rapid Application Development
Moving from the legacy Microsoft solution provided ABC Commercial with an opportunity to take advantage of the Rapid Application Development that Ruby on Rails provides out of the box.
Firstly, the speed of development during the main development cycle resulted in many long-desired features being included. This included a full visual redesign of the ABC Shop Online in the closing weeks of the development process.
Secondly, since the release of the new site, new features have been implemented on an almost daily basis. By taking advantage of the zero-downtime deployment process implemented by reinteractive, the development team are able to push new production code, live, many times per day without the need to show maintenance pages or take the site offline except for the largest, most complex feature releases.
Thirdly, as new features can be requested, implemented, and released within a very short period, the ABC were able to service feature requests that had been in the queue for months and years, with little cost and a tight feedback cycle between stakeholders and developers.
Finally, as the ABC Shop online has a very extensive automated test suite, each production release is tested thoroughly before going live, minimising the chance of a bad build making it into production.
Ongoing Support and Maintenance
reinteractive also provide the ABC with ongoing support with our OpsCare Service ensuring that the site is running as expected through our various monitoring solutions and proactive support.
The Ruby on Rails OpsCare offering also provides monthly inspection of the production environment to ensure it is operating within specifications. It also provides for ongoing development and consulting required by the in house ABC team to allow them to burst capacity onto required features where needed.
The rewrite of the ABC Shop Online into Ruby on Rails was a huge success for all involved. The development period was over 6 months long, yet the cutover occurred successfully on the exact day planned with no failures.
Further, the online store is now producing more orders, income and satisfied customers for the ABC than the previous site did - the only real test that matters.