top of page

KKBOX - desktop

KKBOX is a well known music streaming platform based in Taiwan for more than 18 years. The service covers 5 different countries and more than 800,000 active users. This project is a step of bringing the Beta version of the desktop app (web/mac/windows) to official version. 

 # UX Design  # UI Design

KKBOXDesktop.png

Background

Back in the days when KKBOX just released, the internet environment wasn't as well constructed as today. So, KKBOX provides the offline experience that allows users to listen to pre-downloaded songs under poor connection circumstances. However, when the newly built desktop version KKBOX (Beta) was first built, the offline mode wasn't included. In order to bring the Beta version to official version, we have to created the offline experience for KKBOX desktop version app. 

Project Goal

Create an offline mode that merges perfectly into current KKBOX desktop experience. Include all of the features that mobile have, but design particularly for the desktop users.

The Problem

In order to achieve the goal that was stated above, there are two main problems that we have to solve.

1) HMW switch between online and offline mode

2) HMW download songs

Potential Issues

Unknown technical limitations

Involved RD in the early stage​ of design process

Created private channel for timely communication

Unvalidated users' needs and pain points lead by limited resources (time / people)

Asked for history customer service issues that is about offline mode (including mobile)​

lauren-mancke-aOC7TSLb1o8-unsplash.jpg

Enough thinking,
let's get to work!

CS Issues

Although there is already a offline mode on mobile app, the desktop scenario must have different needs. Since the limitation of time, instead of conduct a user research, I suggest that we ask for history CS issues to get alternative insights.
截圖 2023-10-11 上午12.30_edited.jpg

User Needs

UX Research

Problem 1 Switch

Basic listening feature while there is no connection

Know what mode they're currently in

Problem 2 Download

Download feature in every playlist for them to download their favorite song

Know which songs have been downloaded, which haven't, and which are waiting in line

截圖 2023-10-12 上午1.35_edited.jpg

Competitor Research

As always, I checked out Spotify's desktop app for referencing the switching mechanism. For download, I went to see Google Drive and Slack.

User Workflow

In this phase, I mapped out the whole flow for offline mode, including switching and downloading. So that I can list out the pages that I need to modify based on it.
截圖 2023-10-12 上午1.41_edited.jpg

Wireframe

I would like to point out that why do the "wireframes" aren't a bunch of plain lines and gray rectangles. I built up a components file specifically for desktop version. So, all of the existed elements that I need to design were built into a reusable component. Instead of start from wireframe, I can put the components together like bricks and see what the final UI looks like.
截圖 2023-10-12 上午2.00.06.png
截圖 2023-10-12 上午2.02.56.png
截圖 2023-10-12 上午2.01.55.png
截圖 2023-10-12 上午2.02.03.png
截圖 2023-10-12 上午2.05.34.png
截圖 2023-10-12 上午2.05.58.png

Hand-off

For our hand-off process, there are some special steps to make sure the quality and consistency of our outcome. Firstly, we built a hand-off template for designers. Also, there is a spec indicating kit that we built in Figma. Lastly, I created a hand-off checklist for the team to make sure they've cover every aspect that developers need to know.
截圖 2023-10-12 下午5.23_edited.jpg
截圖 2023-10-12 下午5.23_edited.jpg
截圖 2023-10-12 下午5.24_edited.jpg

Launched

Offline mode

While the system detected the device has no connection, the app will switch to offline mode automatically. The limited features will disabled accordingly.

Playlist Page

Users are still allow to access their playlist. But only the songs that were downloaded can be listened.

Download Queue

Download queue appears when users click on download icon. It moves in from right as the form of a pill. Users can also click to expand and collapse the list.

Obstacles & Adjustments

Decision making

Not sure how sensitive the online / offline detector was

Before developers actually start building, we're not sure what's the definition of "no connection". What if the connection was only lost for 1 ms? Should we switch users' app to offline mode? Or should we ignore it?

 

In order to prevent users from switching back and forward between online and offline mode, I decided to design a "no connection" page between modes for users to decide whether they're going to enter the offline mode. After released, we found out that the detecting mechanism is fine. So we took out the no connection page and made everything automatic and smooth.

The first flow was not the best experience. But in order to prevent the worst, I decided to let it go online and test it with real users. And then iterate in the following update. 

What would I do differently

Retrospective

User Research

Due to the time limitation of the project, it was impossible for me to conduct any research methods. So I sorted out the users needs based on history CS issues. However, if I have enough time, I would run a qualitative research by conducting a user interview. So that I can have a better and a more authentic understanding of users' needs and pain points to support my design decisions.

PoC

In the first version, we launched an alternative solution because of the technical uncertainty. If there was enough resource, I would suggest that we can have the develop team build a basic version just to test the detector.

bottom of page