Auto-Categorization App
Automating the Categorization of Creatives
Overview
Product Summary
A specific batch of creatives is human-reviewed each week in order to assign the appropriate IAB category to it’s landing page website address. Although this is a minimal task within the larger part of the creative review process, the batch of creatives can surpass 9,000 per week which becomes a burden on human resources to complete.
The auto-categorization app allows a user to upload a list of domains, followed by scanning the website for specific criteria in order to then assign it to the correct IAB category.
Problem Statement
A significant amount of time and human resources is dedicated to the task of assigning an IAB category to a creative’s unique website address prior to registration. As the number of creatives entering the exchange continues to increase, the problem arose: how do we continue to assign categories to these website domains without impacting human resources and without compromising accuracy.
Solution
Our proposed solution was to develop an automated category assignment application that can assign IAB categories to domains quickly and accurately.
Role
As I continued my product design internship at Index Exchange in addition to my role as a Compliance Coordinator, I was asked by the leadership team to assist one of our engineers in developing an automated categorizing application. This could assign an IAB category to a website domain in order to reduce the amount of time and resources it takes to review a specific batch of creatives. My role was not only to brainstorm the best way to develop an accurate automated product but to also design it with the user’s experience in mind.
Tools
Sketch, Craft, Abstract, InVision
Research
Algorithm Brainstorming Session
Once I was assigned this new project, I immediately scheduled a brainstorming session with the engineer that was also assigned to this project. We decided to try and solve the problem of how the application would successfully determine which IAB category would be assigned to each domain. We determined that the best way to do this was to develop a crawler that would scan the SEO tags of each site and compare them to a list of terms that we had mapped out to each IAB category. However, this led us to another problem: not all the sites were written in English and were in fact written in several languages.
To solve the problem of sites written in multiple languages, we had the application take the tags it collected from a site and then input them into Google Translate using an API key. Once Google Translate output the terms in English, the application would then continue its process of associating the tags to the terms that were mapped out to each IAB category. Once the problem of non-English sites was solved, our third and final problem to solve for was what happens if the site has no SEO tags? Although many sites do use tags to increase their ranking in Google search results, not all sites have them.
To ensure that the application did not bring back a blank result due to the site not containing any SEO tags, we developed three phases for the application to follow. First, the application scans for SEO tags, if that fails, the application looks for a site description and finally if that fails the application scans the body of the homepage to find words that can match one of our mapped terms.
User Stories
During our next brainstorming session, we discussed the functionality of the application. To do this, I wrote out user stories based on what the future user of this application would want.
“As a member of Quality Operations, I want a screen where I can upload a list of domains so that they can be automatically categorized.”
We found that there were four main features a user would need in order to complete their auto-categorization task.
“As a user of the auto-categorization app, I want to be notified once the application has completed categorizing the list of domains so that I can be sure the task is done.”
In summary, the user would need a screen in which they could upload a list of domains from their computer, while also being notified once the auto-categorization was complete.
“As a user of the auto-categorization app, I want to be notified upon completion of what domains were not categorized so that I can send them to be manually categorized.”
The application would also need to display to the user any domains that were not found, and finally, the application would need to email the user a completed report of the fully categorized list of domains.
Design
Designing the Application
Once the user stories were completed, I used them to develop a simple design that could be easily used on a daily basis without overcomplicating the simple process. I started by designing the overall look of the application, which I leveraged our Index Exchange design system to make the application familiar to the user.
The next step was designing how the application would allow the user to upload a new list of domains and signal to the application that they are ready for it to begin the categorization process. For this, I designed a button that would open a modal that would allow the user to select and run their list of domains. Once the user started the application, the modal would close and the user could watch as the categorization results would be visible on the main page.
Upon completion, the user is notified with an alert that the categorization process is complete and that they will receive the full report through their email.
User Testing
Throughout the entire 5 week development of the Auto-Categorization app, we conducted several user tests by the Quality Operations team. We conducted tests on the primary users for this application, to test not only the accuracy of the categorizations but also to get feedback on their experience when using the design. Overall, this led to minor changes to the design regarding how they wanted to view their results during and after the application had finished categorizing the domains.
Prototype
The prototype will walk you through the main user flow, which is the process of uploading a list and running the application. Click the button below to view the prototype.