Chac Chac UX Case Study · 2023
Mobile app · Service design · UI system
Chac Chac

One app for everything the faculty already had.

Chac Chac is a support app for student life at the Faculty of Fine and Applied Arts, Chulalongkorn University. It brings faculty information, contacts, common-area reservations, school-supply rentals and senior advice into one place, replacing a scatter of Line groups, paper forms and word of mouth.

Role
Add your role
and timeline
Context
User Experience class
Faculty of Fine & Applied Arts
Deliverables
Stakeholder map, personas,
blueprint, IA, UI system
Scope
4 services, 3 user types
guest and member access
Chac Chac welcome and login screens
01
The problem

The faculty is generous with resources and vague about how to get them.

Fine Arts students depend on shared things, a computer room, a rehearsal studio, a working space, a camera lens, a set of brushes. All of it exists. None of it is findable in one place. Booking runs through whoever happens to hold the key, availability lives in someone's head, and equipment goes out on trust and comes back late.

The cost lands unevenly. First-years don't know what the faculty owns. Seniors know, but waste time negotiating for it. Staff and the student council absorb the coordination by hand. Everyone described the same thing in different words: there is no system.

3
distinct user types with conflicting definitions of "enough space"
4
separate services students had to chase individually
0
shared record of what is booked, borrowed or overdue
02
Stakeholders

Mapping who touches the service before designing any of it.

The Fine Arts student sits at the centre, but the service only works if the people around them are served too. Sorting stakeholders into internal, external and public rings made clear which needs the app must satisfy and which it only has to acknowledge.

Internal
Lecturer
Moderator
Faculty personnel
Related stores

Hold the resources and the approvals. Need visibility, not more admin.

External
Students, other faculties
Chula Student Organization
Shuttle bus
Store

Cross the faculty boundary. Guest access exists for them.

Public
Event venue
Travel system
Nearby shops

Context the map should surface, not something the app controls.

03
User types

Three types, plotted on the axes that actually separated them.

Demographics barely varied, all Fine Arts, all Bangkok, all 19 to 30. What varied was how systematic they needed the service to be, and whether they were asking for public or personal space. Plotting on those two axes is what turned a flat list of complaints into three designable positions.

Positioning matrix
Persona positioning matrix: systematic versus unsystematic, personal versus public space
Type A persona: Fine Arts student, wants a systematic booking system and complete learning equipment Type B persona: second-year onward, wants personal storage and student welfare Type C persona: staff and student council, caretakers of the system
Type A wants
A systematic booking system and complete learning equipment.
Type B wants
Welfare that takes care of students, and space for personal storage.
Type C wants
A whole system that holds up, and room to develop the faculty further.
04
Service blueprint

The app is one visible layer over work that was already happening.

Blueprinting the four journey stages exposed the real dependency: nothing on screen works unless the student council and staff have somewhere to publish activities and check availability. That backstage row is why the design includes moderator-facing states, not just student screens.

Service blueprint across four stages: home page, faculty of fine and applied arts, explore, booking
Announcements arrive from the student council, so the home page is a feed, not a menu.
Faculty choice happens once and colours everything downstream.
Explore had no support process, so a question form fills the gap.
Booking needs a physical handshake, hence QR check-in and check-out.
05
Architecture

Every branch drawn before a single screen.

The full flow covers guest and logged-in entry, four service trees, and the loops that are easy to forget, overdue rentals, repeat bookings, faculty switching, dark mode. Drawing decisions as diamonds forced each dead end to resolve into a screen.

Start / End
Process
Action
Input / Output
Full Chac Chac user flowchart
Scroll the frame to follow the full flow.
06
Identity

Chac Chac, from Chula and activity.

The name compresses the two things the app is about. The mark is handwritten, doubled, and set small: an art faculty's tool should look drawn rather than engineered, and it should not compete with student work for attention.

Chac Chac app icon on an iPhone home screen Chac Chac login screen with handwritten wordmark
07
Design system

A cream base, one accent, and pills everywhere.

Sixty percent of every screen is the same warm off-white, so the artwork students upload stays the loudest thing in view. The accent red carries every primary action; pale pink carries every secondary one. Fully rounded shapes are the system's signature, buttons, tags, status chips and the nav bar all share the same geometry, which keeps a dense booking screen legible.

Colour ratio
Colour ratio: #FFFDF3 60%, #F4C5C9 15%, #BE535D 15%, #232323 10%
#FFFDF3
Surface. Every screen background.
#F4C5C9
Secondary buttons, tags, inactive nav.
#BE535D
Primary action, headings, active state.
#232323
Body text and outlines.
Typography
Aa
Poppins
Regular · Medium · Semibold

One geometric family across Thai and Latin copy. Semibold for screen titles, medium for actions, regular for body, three weights was enough to build the whole hierarchy.

Named tokens
Named colour tokens: BG/Surface, Cursor/Surface, Button/Surface variants, Text/Surface variants
Components
Menu bar · four states
Bottom navigation bar in four active states
Buttons
Button variants: pink, outline, disabled, filled, see more
Dropdown
Dropdown closed and open with selected item highlighted
08
Key screens

Four entry points, one nav bar.

Home answers "what's happening" and routes to the four things students came for. Everything else in the app is one of those four branches, so the bottom bar never grows past four icons.

Chac Chac home screen with announcement, welcome text and four service buttons
Home
Student council announcement on top, then the four routes. Search sits above the feed because most visits are a lookup.
Recommended articles screen with tags and illustrated article cards
Recommended
Senior advice, tagged by discipline. The one part of the app that is content rather than logistics.
Tag filter sheet with discipline chips
Tag filter
Sixteen tags drawn from real majors, so a printmaking student is not browsing dance content.
Student Service screen showing facility booking and tools rental categories
Student Service
Facility booking and tool rental share one screen. Illustrated categories rather than photos, so an empty or unphotographed room still reads.
Map screen showing Chulalongkorn campus with a pinned location
Map
Faculty buildings and services on the campus map, with a copyable address, the fix for "which building is that?"
09
Flow: booking

Booking a space in four decisions, each one a sheet.

The room detail stays behind every step as a half-sheet, so students never lose the thing they are booking. Date, seat and time each get their own screen because each has its own failure mode, a full day, a broken machine, a clashing class.

Computer Room detail screen
Detail
Rules and damage liability stated before the student commits.
Select date calendar with availability colour coding
Date
Three-colour load signal, so a full day is visible before it is tapped.
Select place screen with a seat map of ten workstations
Seat
A literal seat map, and the machine number written out for the QR check-in.
Select time screen with from and to dropdowns
Time
The shortest step, kept separate so Back never destroys the seat choice.
Booking complete screen with location, computer number and a 30-minute verification rule
Done
Confirmation repeats the location and the no-show penalty in full.
Empty booking list screen
Empty state
Nothing booked yet is the most common first-run state, so it got a real illustration and a way out.

The Your Booking tab exists from day one and will be empty for most new students. Rather than a blank list, it names what is missing and offers the single next action.

10
Flow: rental

Rental needed a status model, not a checkout.

Borrowing brushes is easy. Getting them back is the actual problem. So every rented item carries one of three states, borrowing, due, overdue, and the same three-stop track appears on the list and on the detail page. When it tips to overdue, the fine is already calculated and payable in-app through the banking apps Thai students already use.

Rental list with borrowing, overdue and due date statuses
List
Status chip, return date and quantity on one row, scannable at a glance.
Brush detail screen with status track at due date
Due
The track sits mid-way and the return place is spelled out.
Brush detail screen in overdue state showing a fine and pay button
Overdue
Same layout, red track, and the daily rate shown alongside the total owed.
Pay fine screen with Thai banking app payment options
Pay fine
Seven local payment methods plus Thai QR, no new wallet to set up.
11
Settings & access

Studios are dark, and not everyone here is from this faculty.

Rehearsal rooms and darkrooms run with the lights down, so brightness mode is a setting rather than a system inheritance. Language and faculty are switchable for the same reason guest sign-in exists: students from other faculties use these spaces too, and Thai is not everyone's reading language.

Brightness mode sheet with light and dark options
Brightness mode as an explicit choice, confirmed rather than applied on tap.
Faculty picker, settings and profile screens
Faculty picker, settings and profile. Active bookings and rentals surface as badges on the profile, so nothing is buried.
Array of Chac Chac booking flow screens
12
Reflection

What the process changed, and what I would do next.

What worked

Plotting the three user types on systematic-versus-space axes stopped me designing one average student. Type C, the staff and council who maintain the thing, only became visible through the stakeholder map, and they turned out to define half the requirements.

What I would change

The flowchart grew faster than the screens. Several branches, faculty switching, notification management, are drawn but not designed. I would cut the service scope to booking and rental for a first release rather than covering four services thinly.

Next steps

Usability-test the booking flow with first-years, who have the least context and the most to lose from a wrong assumption. Design the moderator side properly, right now it is a blueprint row, not an interface. Then pressure-test the colour system in dark mode, which currently exists as a setting more than a designed theme.

Biggest lesson

The app was never the deliverable. The service already ran; it just ran invisibly. Most of the design work was deciding what to make visible, and to whom.

← All projects