Internal Origin Testing Tool

Origin Internal Tools

Launched internally in June 2016

About Origin

Origin is a PC game platform by Electronic Arts that allows users to purchase, download, and keeps installed games up to date. The service also supports social features like chatting with friends and broadcasting their gameplay to

About the Project

Good internal tools are critical for a team to properly build, test, and maintain an online store. The Origin store team is responsible for creating all store content as well as targeted advertising campaigns and messaging based on games the user owns. The team needed a solution to help speed up verifying their work.

The Problem We Are Trying To Solve

Testing the store, targeted advertisements, and messaging in the client was extremely tedious, time-consuming, and error-prone. The team needed a tool to quickly run a test, allow modification to previously executed tests and a way to share tests with other team members to prevent duplicate work.

Our Goals

Why this matters to the business

A lot of time is spent each week by the store team and others who need to test and verify settings in the store. The more time the store team spends verifying their work, the less time they have to do for targeted advertisement campaigns.

Why this matters to the users

Improves their effectiveness by reducing time spent on a mundane task.

Outcome of this Project

The new tool ended up saving about 60 hours a week for the organization by eliminating tedious and often duplicative work.

Team composition

My Role

As the only designer on this project, my responsibilities were to meet with the internal users of the tool, gather requirements, understand their workflow and issues, and create a solution to address their issues.

Additional Team Members

  • 1 Store Team Lead
  • 1 Engineer
  • 1 QA Tester

The Design Process


Instead of a Producer explaining their vision for the project, I met directly with the Store Program Manager who requested this tool and one of the people who would be using it. We discussed the current testing flow, the issues with it, and what she thought could be improved.

The Existing Workflow and why it was so time consuming

The flow diagram below shows what a user would need to set up in order to verify just one state of a game or advertisement. The verification process required the user to manually get the client into various states by creating new accounts, purchasing content in the store, and editing the release dates on our testing server.

It takes a while to get the accounts set up properly and a single test will often require creating multiple accounts to verify all states for all users. Work was often duplicated between team members because it was difficult to know what test accounts already existed.

Since Origin targets users differently at different stages in a product release cycle like game announcement, pre-order available, impending release, and game launch, we needed to run through this test multiple times. We may also show different messages or ads based on the content the user owns. All targeted messaging must be tested in all phases, so testing may include a large number of slightly varied tests.

To verify date-specific behaviors or states in the client, the team member changes the content's release date on the test server. They then wait for the date and time to trigger the event. During this time, the change also applies to everyone else using that testing environment.

Initial Sketch Explorations

The initial sketches explored editing content directly inside the client
The initial sketches explored editing content directly inside the client.

The first sketches I did explored creating the overrides directly in the Origin client itself. This was not possible, but the idea of a sidebar to edit all of the relevant properties of a game you wanted to test did make it's way into the first mockup as how you edit one the override.

Image shows a rough sketch of a state where the user chooses the overrides and an edit state
Sketch showing off moving from choosing an override configuration to editing it. Multiple games could be saved as a group for testing.

The First Mockup Drastically Simplified Testing By Sharing and Editing Testing Configurations

Once I saw the team's current workflow and understood their needs, I created a set of wireframes that drastically cut down on unnecessary work. We replaced the need to create new user accounts with an override that could be easily edited. These override configurations were also saved to a server so other team members could leverage existing configurations, which is great because we would often target certain user groups on a routine basis.

Users see all available test configurations and could duplicate or edit any to fit their need.

But we couldn't edit everything in the tool

After reviewing the designs with the rest of the team, enginnering said that there was a database issue that would prevent us from getting the game's Content ID easily, which was critical for specifying what game was being tested. I had to pivot the design slightly to make sure we were able to get the best tool in the short amount of time we had.

In order to change the game(s) in the test configuration, users would use the new tool to download an existing configuration file, add the desired game Content ID to that file, and then re-upload it. If the user needed to change other elements of the test like release date or Origin Access status, that could still be done on the fly in the tool. So the impact on the design was minimal.

The Updated Flow with our limited development time

Updated flow for the user with our limited project scope

The Second Mockup

The second version split the Game Entitlement override from the Game Release Date override.
The Game Release Date override tab allows the user to easily see how Origin would behave at different points in time.

Improvements to the Release Date Override

With the Release Date Override separated from the Entitlement Override, I realized that users may want to easily test what Origin would look like with different upcoming simultanious releases. The new design allowed users to add any game to the list and easily check off which one they wanted to enable as a way to quickly mix and match test settings.


Origin client showing results for Sims


The final version of this tool addresses all goals that were established at the start of the project. It enabled users to easily test a variety of combinations of owned content, release date of any content, and Origin Access status. The tool also kept a collection of previously saved testing configurations, so users can easily test targeting of certain groups of users.

While this tool still required users to manually edit some data locally on their system, it has been a huge improvement in streamlining their workflow by allowing for reusable testing configurations in a single, easy to parse list.


This tool helped reduce the time spent testing the store by 60 hours per week. This extra time allows the team to do more targeted advertisements on the platform, which in turn helped to drive more revenue to the store.

Lessons learned

Final Thoughts

Working closely with the people who were going to use this tool to get their job done was extremely satisfying. I was able to see just how excited and happy the end users were. It was incredibly satisfying to hear that my work made a huge impact on how they accomplished their job.