Case Study: Delivering Debenhams a composable commerce site in 8 weeks

Business goals 

Debenhams was founded in 1778 as a single store in London and grew to 178 separate locations in the UK and developed its own eCommerce website. Debenhams went into administration in 2020 when the boohoo group (an online company) acquired the Debenhams.com domain and brand.

Debenhams physical stores went into administration and any remaining stock was sold off.

The goal was to replace the existing website (which was due to be switched off when the lockdown rules were eased and shops were allowed to reopen) with a new website on a modern technology stack. Allowing the Debenhams team to implement only what they want in a composable manner i.e. only implementing what is required, rather than a monolith environment where functionality is available at additional cost but not needed or used.

The deadline was non-negotiable and April 2021 was fast approaching. The impact of failing is that Debenhams.com would be without a website and as its only source of revenue, would not be able to sell its products and make any revenue.

The challenge

In the UK, Covid lockdowns were in force when the project was initiated. Once the country moved out of lockdown, the old website would be turned off permanently. The team had 8 weeks to develop and test a new transactional website with products, content and integrations with various backoffice systems such as an Order Management System (OMS) and PIM (Product Information Management).

The impact of missing this deadline is that Debenhams.com would be without a website and there as a business, not make any money whatsoever.

Using a modern technology stack the new composable platform would be built to enable Debenhams.com to build quickly on the marketplace post-go-live.

The project introduced new products and new technologies to boohoo, it was important the Cabiri team collaborated closely with the boohoo/debenhams.com internal teams, especially when it came to integrations. It would require close relationships between the internal/external teams to develop integrations quickly and in a manner that could be easily updated as new information surfaced.

The benefit of introducing a micro-service platform supported this way of working and allowed these updates to happen quickly.

What we delivered

Ashiba Accelerator

Using the Cabiri accelerator (Ashiba) enabled the project team to kickstart development, by applying Debenhams branding to the pre-built eCommerce pages and functionality.

Rather than starting the project by first having to develop the website basics (Homepage, product listing/detail pages, basket/checkout, account area, integrations with Commerce Tools and other platforms), Ashiba provided all of this out of the box, giving the team a heads start by just needing them to apply the Debenhams branding, after which, quickly iterating, adding extra functionality and tweaking the user experience to suit the needs of the new Debenhams marketplace.

Furthermore, Ashiba CI/CD enables the development team to quickly build environments and deployment pipelines which allows testing and releasing into production daily. Inbuilt unit, Integration and automated functional test scripts support the out-of-the-box functionality. Allowing the team to hit the ground running and enabling the team to scale quickly with additional functionality required by Debenhams.com to get the website live.

Building infrastructure

The application infrastructure is written and configured as IaC (infrastructure as code) using Terraform. This allows changes to be consistent and easily applicable across different deployment environments, taking into account the different requirements of each environment.

We also delivered a fully automated CI/CD process to allow “Anytime Releases” using Terraform/GitHub actions and custom tooling. “Anytime Releases” allows easy, fast and safe deployment of changes into production at any time. Using this methodology multiple releases per day have become the new standard.

Key features:

  • Granular release to production of changes of the application down to platform, service and configuration level.

  • Easy release process with peer approval and review and automatic rollback process for issues occurring deployment.

  • Deployment into individual PR environments for fast development iteration, review and approval.

  • Support of multiple deployment environments.

  • Robust functional and performance testing.

Security & performance

  • The Cabiri development team worked with AWS architects to plan the right infrastructure for Debenahams.com and once agreed, the team (including AWS) reviewed the finalised solution to ensure it met their requirements

  • Prior to launch, CommerceTools reviewed the development of Cabiri to ensure quality standards has been met

  • Penetration tests were completed to ensure the site was secure from threats at the point of launch

  • The team built and executed performance tests and resolved feedback to ensure non-functional requirements were met

  • Proactive monitoring enables the website to be fully performant with no outages since the launch of the website

post-go-live launches included:

  • Working with the boohoo audit team, the development team managed to get their PCI compliance accreditation, a benchmark for all other teams to aspire too

  • To reduce the amount of bot traffic on the website, Cloudflare was implemented and rules were introduced based on the feedback from website traffic

Integrations and functionality

Building with a composable mindset and as part of the micro-services infrastructure, the platform had a fully responsive react frontend and integrated with various external suppliers for content, product data, search, Order Management Systems (OMS) and Product Information Management (PIM) systems.

The team used Adyen as the initial payment gateway. Klarna, Clearpay and apple pay were all implemented shortly after going live.

Google Analytics and Google Tag Manager (GTM) were implemented to monitor and track customer traffic across the website.

Soon after the website was launched, Mirakl was implemented to enable Debenhams.com to sell and deliver products by external parties on their website, a new revenue stream for the business.

The team also added integration with an external promotions engine and a marketing tool which would manage the non-transactional emails to customers.

Functionality such as customer reviews which required another integration is available on both the PLP and PDP pages. Unlimited (Debenham’s version of Amazon Prime), Beauty club (loyalty program) and A/B testing were all key pieces of functionality implemented by the development team post-go-live.

Testing

It was vital for the development/test team to agree and create processes which allowed the team to work efficiently and with the confidence needed to release new features into production quickly and seamlessly. Multiple releases were released in a controlled manner daily (on average several releases per day) to support the timescales the project demanded.

To achieve this the team completed the following:

  • Combined Test-Driven Development and Testing Pyramid concepts throughout the project as it was the responsibility of all team members to ensure a high-quality and performant application was built

  • Unit and Integration tests written in JEST are contributed by the Developers

  • Functional tests written in Cypress are contributed by the QA Engineers

  • Unit, Integration and Functional tests are run against each Pull Request giving fast feedback

  • The team uses Gatling on an AWS infrastructure for peak/load testing

  • On Debenhams.com we used DataDog Synthetic tests for functional Production monitoring

After the initial launch, the team continued and enhanced this approach to maintain quality as the development team, feature set and complexity of the application grew.

Our approach

Supported with a fully automated CI/CD process and test regression packs, the team used Scrum to plan and release features into production. The team avoided having large releases and was able to release multiple releases per day into production to ensure the business received business value at the earliest opportunity.

Collaboration between all teams (internal and external) was vital to ensure the business teams were confident the development and UX teams knew what they were asking for and to ensure the development and UX teams have enough information in order to develop at a good level of confidence. During these discussions, business and UX teams are challenged to ensure that whatever is developed is done so in the right way for the product.

The Result

The new Debenhams.com site was launched in April 2021 and the Debenhams.com team continue to enjoy improvements and enhanced business value on a daily basis, long after we have left. Thanks to this way of working, the speed of development and the time to launch, the website was nominated for an award at the MACH Alliance Awards 2022. The work we did for the Mirakl integration won the Launch Faster award at the Pioneer Platform Awards 2022.

Authors

Robbie Ablett, Steve Matthews, Saul Sampson

Contributors

Rex Bigger, Kamil Zuzda, Ronald Selimi, Ronan Forker, Gab Zsapka, Georg Backer

Previous
Previous

The importance of the Definition of Ready

Next
Next

Deciding between Native and React Native for your mobile apps