Designing Features For A B2B2C Consumer App

Timeline
Summer 2026
Duration
10 weeks
Role
Product Design Intern
A B2B2C Consumer App with Features Built Upon Identified Competitor Gaps and Standard Trends

NDAThis case study covers sponsor work protected by a non-disclosure agreement, specifically product features, competitor names, and internal artifacts are excluded or blurred.

Outcome

The report bundled a competitive audit, gap analysis, and interactive prototype focused on one use case, describing the must-have features that support Pop’s market position.

Overview

inline's current project is an early-stage consumer product exploration from inline, a Taipei restaurant-technology company whose core business is a B2B reservation, waitlist, and table-management platform serving thousands of restaurants across Asia-Pacific. This project marks inline's step from pure B2B into B2B2C.

My Role

I worked remotely with inline’s Product team in Taiwan as the sole designer on one branch, alongside a parallel branch of the internship. My focus was bringing an outside perspective on the market through competitive research, gap analysis, concept design, and usability testing, ideating features for the product to succeed within the existing market.

Researching

Mapping the Competitive Landscape

I applied one competitive-analysis framework across three competitor apps, auditing the flows.

Gap Analysis with Category Discipline

I cross-referenced each competitor’s weaknesses against the parallel branch’s proposed features. Weaknesses still left open became the opportunity gaps for Pop’s features to build upon.

  1. Already addressed
  2. Partially addressed
  3. Left open → opportunity gap

Designing

Ideating Scenario

To keep feedback focused, the user scenario centered on coordinating an event under uncertainty. From it I ideated the user flow and decided how each feature would be integrated into the prototype.

Base user flow+ 4features mapped onto the coordination scenario

Prototyping

With a small window before testing, I built the flow’s core interactivity with AI-assisted prototyping tools, starting in Figma Make, then moving to Google AI Studio, whose daily credit limits better suited the pace of iterating between test rounds.

Once testing was done, I adapted the prototype back into Figma so access to my materials was centralized with the parallel branch’s, where the rest of the team’s work already lived.

I Need More Credit To Iterate
Upon the Prototype More

I Need to Centralize Access to
My Materials with the Teams’

Testing

Facilitating Usability Testing

I facilitated 8 usability sessions across 3 sprints of 2–3 participants each, with 10 feature iterations between sprints.

Each session opened with warm-up questions, walked the tester through the prototype’s flows, then probed for feedback on each flow.

Addressing Insights and Feedback with Iterations

After each sprint I identified iterations to implement and tweaked the protocol to probe them, so every sprint tested a prototype that had already answered the last one.

UI feedbackFeature expansionfor flexibility in other user scenarios and continued usage

Of the four features carried into the initial prototype, I deemed three pivotal for directly contributing to the app’s unique position within the market.

Takeaways

Distinguishing Categories of Competitors

During the project’s research phase, I recognized that a rigorous gap analysis requires determination of the scope’s limitations. While conducting the competitive audit, I realized that some of the audited competitors had differing overlaps of identity compared to Pop. As a result, I had to distinguish the scope of direct competitors in context to Pop’s focus before building the gap analysis, so a gap of a competitor would not automatically be counted as a gap for Pop if it were to be an outside-of-scope gap.

Priorities in Implementation with AI

From this project, I understood how to better navigate a workflow that includes implementing with AI. The AI tools I utilized (Figma Make and Google AI Studio) limited the number of iterations I could implement at a time. To adapt, I recognized and prioritized larger-scale implementations based on impact on the prototype’s efficiency during usability testing while manually refining smaller and specific details afterwards. As a result, I was able to utilize my prompting tokens while also being well informed of the prototype’s abilities and limitations through manual involvements of altering the code.