A data visualization project that focuses on understanding business operations in real-time.
Project Brief
I was a Data Scientist intern at Tenoli, a social business based in México City. My mission was to improve business intelligence. This project led me to enhance my design and software skills both at the same time. The goal was to bring business data analytics to the next level while keeping it as simple as possible to use for non-technical people at Tenoli.
My role
User Researcher, UX/UI lead, Front-end dev, Data analyst
Location and timeline
Tenoli, México City, México
September 2017 — December 2017
Skills and tools used
Front-end design, data analytics
Python, Dash, HTML, CSS, Bootstrap
Intro
Presentation of Tenoli
Tenoli, founded in 2014 by two International Development graduates from Harvard, was a social business that modernized and empowered mom&pop shop owners through technology and education. Tenoli was the fastest-growing distribution channel in Mexico. The company ran a network of more than 4,000 mom&pop stores in the East of Mexico City. The essence of Tenoli was to gather independent stores into a buyer community in order to make the most out of collective buying advantages: reducing purchasing-cost margins, thus increasing the purchasing power of each member of the community. Since this project, Tenoli ceased its operations due to a lack of investment capital in 2018.
Problem
Missing infrastructure to support scale
As Tenoli’s activities were fast-growing, business and operations analytics became a bottleneck in the process of understanding how the market was evolving. The time that analysts required grew exponentially as data became more painful to analyze. Business intelligence was heavily relying on one analyst. The business and operations could only be assessed once a week, thus limiting reactivity to the market.
Goal
Leverage the power of design & data science
The impact of this project is to leverage a better understanding of business evolution and improve decision-making processes.
- Get rid of painful Excel manipulations
- Reduce time needed to update business and operations analysis
- Make data accessible in real-time by cross-functional teams
- Make analytics easily understandable and manipulable
Solution
A web-based data analytics platform with simple UI
Very often, a simple image can depict much more information than a spreadsheet. Therefore, we believed that using visual tools to analyze data was the best way to gain efficiency, accuracy, and simplicity. The solution was to design a web application that would feature user-friendly interactive dashboards to monitor the business in real-time. We believed that using proper technological tools would help to face business scalability issues.
Process
Cycle 1
Understand
1 week
Synthesis and scope
Persona
Ideate
Sketch
Cycle 2
Prototype
1 week
Connect the app with the database
Build a first interactive dashboard
Push the web app onto the web
Validate the concept
Cycle 3
Ship the app
10 weeks
Implement diversified dashboards
Implement forecasting algorithms
Test, iterate and validate
Personas
Vincent, a sales analyst, whose workflow became exponentially more difficult as the business and operations scaled. Vincent was in charge of analyzing sales and report them on a weekly basis. As the user interview uncovered, he was already hoping for a better solution before the project started.
“The business is growing, but my time is not extensive.” — Vincent
User journey
Sales-related data were stored on a SQL server and updated in real time. Every week, Vincent used to load weekly sales data on Excel via a SQL query, then run a series of painful Excel manipulations (pivot tables, macros, etc.) over thousand data raws, and finally aggregate those data on a 6GB Excel file stored on his laptop. Then, he would have to analyze the data, and create a weekly report with Powerpoint, that he would present to stakeholders.
The diagram below presents his data analytics journey.
Vincent had to wait for the end of the week to start the sales report.
“I have to wait until thursday evening to start analyzing the data. However, I also have other things to prepare for the next day.” —Vincent
Vincent wished he had more time to think about business strategy.
“Indeed, I would like to spend less time on Excel, and more time thinking about business-level strategy, as well as developing my pending projects.” —Vincent
The user research uncovered the following points:
Pains
- Most of the frustration came from repetitive and low value-added tasks such as collecting data and creating a report
Gains
- Analytics was actually the most enjoyable part of the process, despite some frustrations due to the tool used (Excel)
Needs
- A better analytical tool to monitor sales and monitor them against objectives
Exploring ideas
Paper prototypes
We already knew we would have to build a better analytics platform. So we jumped right away on the ideation and sketching phase. The goal was to render the dashboards on paper, figure out the possible interactions, and get the concept validated by the stakeholders before digging into code.
The initial paper prototype concept contained two dashboards: a sales monitoring dashboard and a network monitoring dashboard.
Sales monitoring dashboard
- Displays the evolution of sales overtime period.
- Contains 4 types of visualization: a stacked chart of the total sales by geography, the evolution of order volume per supplier, the average ticket per supplier, and the best performing products of the week.
- Analysts can filter the results by date and geography.
Network monitoring dashboard
- Displays the stores which are part of the network on a map. When user overs a store on the map, specific information about the store are displayed on the other areas of the dashboard.
- Contains 4 types of visualization: store information, the evolution of sales, sales by product category, and the best selling products.
- Analyst can filter the results by geography, or volume of sales.
The choice of the framework
We decided to use Dash, a newly created and powerful web analytics framework developed by Plotly, because it offered the following advantages.
Lightness
Few code lines required. Dash allows to quickly develop and deploy a highly visual web app just using Python language, no Javascript required.
Control
Dash provides many simple UI controls that allow users to easily interact with data and make the data analysis more intuitive and effective as never.
Adaptability
Dash provides a wide range of visual components that enable to display any kind of data (graphs, maps, tables). Moreover, the aesthetic as well is 100% customizable with CSS.
Before Dash, apps like these would have required an entire team of engineers and designers to create. But thanks to this framework, we could build and develop the project within a reasonable time frame.
Building the web app
We started coding after we had the confirmation from the stakeholders and the potential users that the product would bring value to their processes.
User testing
During the prototyping phase, Vincent's opinion was considered throughout the process. He tested the product and provided us with helpful feedback.
Gains
The responsiveness of the UI was a delightful experience.
The UI and the buttons are well responsive, I love it.
The simplicity of time periods analytics was much appreciated.
Now it takes seconds to compare sales week to week, great.
Pains
Using date pickers too regularly can become a frustration.
Predefined fields to visualize data over last week or the last 6 months would make my life easier.
Our first prototype
Building a strong web app
Once the first prototype got widely validated by users and stakeholders, we had the confirmation we were putting efforts into building a product that was valuable for people.
Product performance monitoring
The image below depicts a dashboard that was used to monitor market demand by products. That dashboard was used on a daily basis to capture changes in market demand. It combines diverse analytics methodologies, such as Pareto analysis, treemap analysis, and BCG matrix.
KPI monitoring dashboard
This dashboard aimed at giving a quick overview of the main business Key Performance Indicators (KPI). It was used as a support for the presentation during the weekly business performances assessment meeting on Monday morning. This dashboard had a huge impact for Analysts as it removed endless and painful Excel manipulations. As a result, analysts saved a minimum of 4 hours of work every week which they could instead invest into other important tasks, such as thinking about business strategy.
Network performance monitoring
Analysts needed to visually understand the evolution of the business from a wide to a granular level of information. This dashboard was mainly used by sales teams to quickly identify the best customers. When users hover over a store (or multi-select a group of stores) on the map, the other areas of the dashboard display sales-related information.
Sales performance monitoring
This dashboard was used on a daily basis to monitor the sales performances in each of our 8 business units. It enabled easy comparison of sales evolution over time periods. Users were able to cross filter performances by date, supplier or product category, which made their workflow much easier and efficient.
+4 hours saved per week
Vincent, sales analyst, almost saved up half a business day of work each week.
+10 analyst using the tool daily
The tool was used by a wide range of people within the company, ranging from founders, to logistics, even including the community manager.
$80K business opportunity
The project leveraged an annual $80K business opportunity with Sanofi México, for building up a similar platform for their activity.
The impact of the project
This project was greatly appreciated at all levels of the company. It offered the following advantages to Tenoli:
- Analysts spent less time manipulating data and had more time to dedicate to strategy thinking
- KPIs were shared transparently in real time throughout the company
- Communication of operational figures became more fluid between stakeholders
- The project triggered a consequent co-development business opportunity
Pros
- Filters are well connected to the dashboards
- Easy and agreeable to manipulate
- Highly visual and easily understandable
- Accessible from any computer, anytime
- Easy to maintain
Cons
- Dash doesn't enable full control of what's happening in the backend
- The security and privacy of data is weak
- No admin profile
- Read only, data can not be input
Next steps
- Strengthen the platform security
- Develop new logistics-related dashboards to monitor daily shipping
- Input AI-powered assisting tools, such as sales forecasting (using Prophet by Facebook)
My personal take-aways
This project was my first attempt at building a product from scratch. This opportunity furthered my skills in data science, UX development and web development. I learned a consequent amount of knowledge in each of these areas. This project remains my favorite one so far, as I discovered a profound passion for using technical skills to solve problems with a human-centric approach. Such an experience was definitely mind blowing and I plan to go further into product development.
Thank you
I am particularly grateful to Tenoli for having offered me the opportunity to develop this project with a team of exceptional people. I address my deepest and most sincere acknowledgment to Thomas, Rodrigo and Nicolas, the founders of the company, as well as all the Tenoli team and the people I collaborated with.