It is true, though, that for all the value these techniques provide, they come with the challenge of increased complexity within established systems and processes.
“…Toggles introduce complexity. We can keep that complexity in check by using smart toggle implementation practices and appropriate tools to manage our toggle configuration, but we should also aim to constrain the number of toggles in our system.” – Martin Fowler
Assuming we’ve defined a process to help us avoid introducing unnecessary complexity into our development process, one of the best ways to tame complexity in any system or process is to increase visibility. Optimizely’s change history gives teams critical visibility into what’s happened in their feature management or experimentation worlds.
If you’re an engineer responding to an outage, being able to see changes to feature flag status, traffic allocation, and other variables that can be changed outside of code deploys, or system configuration is imperative. Change history makes it simple to drill down to view changes for specific date-time windows so you can quickly evaluate if a change to an experiment or feature could be part of the problem
Once you’ve narrowed down a potentially problematic change, a detailed view of the previous and current state of the change is available to help you quickly troubleshoot. The faster you are able to determine the root cause, the faster you can implement a solution which could be as simple as disabling the feature flag in Optimizely.
Perhaps you’re an Experimentation Manager, and you don’t want to page through hundreds of change log entries for features, personalization campaigns, etc., all you care about is viewing when someone makes an update to a specific audience. Change history lets you filter by just audiences to let you focus on only the types of changes in which you’re interested.
Driving process accountability is a vital component for any organization trying to move up the experimentation maturity curve and encourage a culture of experimentation, especially during the QA and launch phases of your experiment lifecycle. Having visibility into who is making changes can be an excellent tool for helping teams hold themselves accountable.
Change History in Full Stack and improvements in Web change history are now generally available. Be sure to check out our knowledge base article to see what’s new and what’s tracked in the new change history.
And if you are interested in getting started with progressive delivery, you can sign-up for a free Optimizely Rollouts account.