R&D All Hands

Configuration Team Product Upgrade Methodology

How we are relaunching an existing client-facing tool without pissing off that many people.

A Day In Legacy UI

120 unique external client logins

2,000 configuration options saved

11 minute average session time per user

Our goals:

Replace 80% of the UI

&

Smooth product transition

Our constraints:

100% backward compatibility

Both UIs needed to live side-by-side

Our QA team loved this

DimSum API

Legacy UI

New UI

Bazaarvoice Ecosystem

Don't

Rewrite
Everything

D

R

E

This view is 100% new UI

This content is an iFrame pointing to the Legacy UI with a few extra URL parameters

Legacy UI Email Editor

With "?chromeless=true" URL parameter

No Side Navigation

No toolbar

Transparent background, darker fonts

postMessage communication with parent container

By reusing some
of the old UI, we saved about
12 months*

*Or something, I forgot my KanBan training



Rollout

Slow

Phase 1

Pilot Clients

Began July of 2014, new application was ~80% complete

We used Togglz to organize pilot clients

Togglz let's us customize behavior based on arbitrary data, like Client Name.

if (_dimSumClient.getCurrentUser().getTogglzFlags().isConfigUiForEdit()) {
    redirectToConfigUi(_dimSumClient); //new UI
}
else {
    loadImplementationEdit(); //legacy UI
}

Example code in DimSum to determine which UI the user should see:

We ended up with 6 pilots

Phase 2

All New Clients

Began January 31, 2015

Every client provisioned after January 31st was given the "new UI" Togglz Flag

This added ~50 active clients

This phase let us smoke out more bugs and issues that we didn't discover with our pilot clients.

Phase 3

Opt-In Period

Began February 2, 2015

Upon logging into Config, clients are given the option to Opt-In to the new UI

This served 2 big purposes:

  1. Alert clients a change is coming
  2. Give early access to clients who
    like what they see.

Around 120 clients opted-in since Feb 2nd 

This gave us a steady

ramp up of usage

Phase 4: Final Phase

The Big Switch

Happening April 1, 2015

Togglz flag will be switched from

"By Client" to "All" 

100% of traffic will be diverted to new UI

Contributors to this effort:

  • Oren Fisk
  • Michael Goodnow
  • Sheila Hippert
  • Rob Kumar
  • Roman Hrynchuk
  • Dusty Herrman
  • Jameson Brettle
  • Tiff Ting
  • Tim Nunamaker
  • Jason Wilmot
Made with Slides.com