All case studiesAlle Case Studies Enterprise · Mobile · Built from scratch · Material 3 · Research

An enterprise calendar people actually open on their phone

Ein Enterprise-Kalender, den man tatsächlich am Handy öffnet

Over 2.5 years I built the mobile calendar of an enterprise productivity suite from scratch — natively on Material 3, spec-first: 13 UX/UI specification documents (~185 pages), dedicated research behind every feature, and one of the deepest research programs I've ever run. Below: the full process, stage by stage, with the real artifacts.

Über 2,5 Jahre habe ich den mobilen Kalender einer Enterprise-Productivity-Suite von Grund auf gebaut — nativ auf Material 3, spec-first: 13 UX/UI-Spezifikationsdokumente (~185 Seiten), dedizierter Research hinter jedem Feature und eines der tiefsten Research-Programme, die ich je durchgeführt habe. Unten: der komplette Prozess, Etappe für Etappe, mit den echten Artefakten.

RoleRolle
Senior Product Designer · UX ResearcherSenior Product Designer · UX Researcher
CompanyUnternehmen
MyOffice · enterprise productivity suiteMyOffice · Enterprise-Productivity-Suite
Timeline
Aug 2022 – Jan 2025 · 2.5 yearsAug. 2022 – Jan. 2025 · 2,5 Jahre
Team
Product Owner · Engineers · QAProduct Owner · Engineers · QA
Enterprise mobile calendar app — day view with time grid
Day view with expandable calendar, time grid and the red current-time line
Tagesansicht mit ausklappbarem Kalender, Zeitraster und roter Jetzt-Linie
TL;DR — if you only have 8 secondsTL;DR — falls Sie nur 8 Sekunden haben

Research as the operating system. As sole designer & researcher I ran 30 interviews, two quantitative surveys (n=241 and n=252), a randomized 3-variant split-test and a color-coding experiment — and every shipped feature traces back to a validated hypothesis. Year-one goals for downloads and active use were met; the retention miss (~50% vs 65%) became the next cycle's starting hypothesis, stated honestly.

Research als Betriebssystem. Als alleinige Designerin & Researcherin: 30 Interviews, zwei quantitative Umfragen (n=241 und n=252), ein randomisierter 3-Varianten-Split-Test und ein Farbcodierungs-Experiment — jedes ausgelieferte Feature geht auf eine validierte Hypothese zurück. Die Jahresziele für Downloads und aktive Nutzung wurden erreicht; die verfehlte Retention (~50% vs. 65%) wurde ehrlich benannt — als Ausgangshypothese des nächsten Zyklus.

Phase 1 · DiscoverDiscover

01The problem & framingProblem & Framing

Employees of large enterprises schedule meetings all day — on desktop. Mobile calendars in corporate suites tend to be an afterthought: a read-only mirror of the desktop, opened reluctantly and closed quickly.

Beschäftigte in großen Unternehmen planen den ganzen Tag Meetings — am Desktop. Mobile Kalender in Corporate Suites sind meist ein Nachgedanke: ein Read-only-Spiegel des Desktops, widerwillig geöffnet und schnell wieder geschlossen.

The challenge: in a market saturated with polished calendar apps, make mobile scheduling genuinely useful — not a shrunken desktop, but a tool people reach for on purpose.

Die Herausforderung: In einem Markt voller ausgereifter Kalender-Apps mobiles Planen wirklich nützlich machen — kein geschrumpfter Desktop, sondern ein Werkzeug, zu dem man bewusst greift.

Artifact · Framing questionsanswered in stages 02–05
QuestionRisk if we guessMethod chosen
What do people actually do with a calendar on a phone?shipping a shrunken desktop30 in-depth interviews
Which scheduler capabilities matter enough to build?a feature list from opinionsUser Story Mapping → survey, n=241
How should event creation work on a small screen?copying a competitor's pattern blindlyrandomized 3-variant first-click split-test
Which notifications deserve priority?one-size-fits-all pushsegment survey, n=252

0230 in-depth interviews30 Tiefeninterviews

Interviews on calendar habits, with findings grouped into three fields — Planning, Meetings, Notifications. The strongest signals: people want the whole day at a glance, colleagues' and shared calendars matter, quick rescheduling beats full event creation on mobile — and checking availability on the phone was simply impossible.

Interviews zu Kalender-Gewohnheiten, Erkenntnisse in drei Feldern — Planung, Meetings, Benachrichtigungen. Die stärksten Signale: der ganze Tag auf einen Blick, Kalender von Kollegen und geteilte Kalender zählen, schnelles Verschieben schlägt vollständige Terminerstellung am Handy — und Verfügbarkeiten mobil zu prüfen war schlicht unmöglich.

Artifact · Insight fieldsn=30 interviews
Planning
See the whole day at a glance; open colleagues' and shared calendars without switching devices.Den ganzen Tag auf einen Blick; Kalender von Kollegen und geteilte Kalender ohne Gerätewechsel öffnen.
Meetings
Rescheduling > creating. Full events are rarely created on mobile — but moving one quickly is a daily need. Availability checks on the phone: impossible before this project.Verschieben > Erstellen. Vollständige Termine entstehen mobil selten — aber schnelles Verschieben ist täglicher Bedarf. Verfügbarkeits-Check am Handy: vor diesem Projekt unmöglich.
Notifications
Reminders are the reason the phone matters at all — but which push deserves priority turned out to be segment-dependent (stage 14).Erinnerungen sind der Grund, warum das Handy überhaupt zählt — welche Push Priorität verdient, erwies sich als segmentabhängig (Etappe 14).
Method notesMethodische Notizen

Semi-structured interviews across roles and seniority within enterprise customers; coded into the three fields above. Each field later received its own quantitative validation — interviews set the direction, numbers earned the roadmap.

Semistrukturierte Interviews über Rollen und Senioritätsstufen bei Enterprise-Kunden; codiert in die drei Felder oben. Jedes Feld erhielt später eine eigene quantitative Validierung — Interviews gaben die Richtung vor, Zahlen verdienten die Roadmap.

03Competitor teardownWettbewerbs-Teardown

Outlook, Google Calendar and Apple Calendar mapped the baseline users already carry in their pocket — the bar an enterprise calendar must clear before anyone opens it twice.

Outlook, Google Calendar und Apple Calendar kartierten die Messlatte, die Nutzer ohnehin in der Tasche tragen — die ein Enterprise-Kalender überspringen muss, bevor ihn jemand zweimal öffnet.

Artifact · Baseline matrix (excerpt)
Day at a glanceQuick rescheduleAvailability on mobileShared calendarsEnterprise permissions
Outlook mobilebusy viewedit formpartialyesyes
Google Calendarstrongdragworkspace onlyyesbasic
Apple Calendarstrongdragpersonal
Our calendargrid + now-lineslot-basedper-participant busy viewyesrole-based

04Scheduler survey — n=241Scheduler-Umfrage — n=241

The meeting scheduler ("propose a time") was the riskiest bet — so it got the heaviest validation: a quantitative survey with 241 respondents (120 internal, 121 external).

Der Meeting-Scheduler („Zeit vorschlagen") war die riskanteste Wette — also bekam er die schwerste Validierung: eine quantitative Umfrage mit 241 Teilnehmenden (120 intern, 121 extern).

Artifact · Survey resultsn=241 · 120 internal / 121 external
CapabilityInternalExternalVerdict
View available slots92% overallphase 1
Propose a different meeting time96%95%phase 1
Colleague availability statuses93%88%phase 1
Where the 9 hypothesis groups came fromWoher die 9 Hypothesengruppen kamen

A User Story Mapping workshop with developers, QA and the product owner turned assumptions into 9 testable hypothesis groups. The survey ranked them; the result was a phased roadmap — phase 1: slot suggestions plus a per-participant busy view. Features that didn't earn their numbers waited.

Ein User-Story-Mapping-Workshop mit Entwicklern, QA und Product Owner machte aus Annahmen 9 testbare Hypothesengruppen. Die Umfrage priorisierte sie; das Ergebnis war eine phasierte Roadmap — Phase 1: Slot-Vorschläge plus Belegt-Ansicht pro Teilnehmer. Features ohne verdiente Zahlen warteten.

05Research behind every featureResearch hinter jedem Feature

Research wasn't a phase that ended before design started — it was bundled per feature. A typical feature carried its own study chain: plan → results → analysis → usability session → implementation review. The archive still holds every document.

Research war keine Phase, die vor dem Design endete — er war pro Feature gebündelt. Ein typisches Feature trug seine eigene Studienkette: Plan → Ergebnisse → Analyse → Usability-Session → Implementation Review. Das Archiv enthält bis heute jedes Dokument.

AI · research synthesis — coding transcripts and cross-checking survey tallies; every conclusion verified against the raw documentsAI · Research-Synthese — Transkripte codieren und Umfrage-Auszählungen gegenprüfen; jede Schlussfolgerung an den Rohdokumenten verifiziert
Artifact · Study bundles per featurefrom the project's research archive
FeatureStudies in the bundle
Create event by tap on a free slotsurvey plan + results — the results document alone runs 35 pages, the largest research doc in the archive
Events schedulerthe full loop: research plan → results → analysis → usability session materials → implementation review
List of eventsinterview plan + survey plan + survey results
Push notificationsresearch plan + results (the segment survey in stage 14)
Event color codingcolor-differentiation studies — a color dataset plus a pathway analysis (feeds stage 13)
Where the questions came fromWoher die Fragen kamen

A 2024 customer-development cycle — 8 documents across three respondent groups (internal staff, external customers, executive assistants) — fed the calendar backlog with fresh problem evidence, so feature-level studies started from real observed friction, not team opinions.

Ein CustDev-Zyklus 2024 — 8 Dokumente über drei Befragtengruppen (interne Mitarbeitende, externe Kunden, Assistenzen) — speiste das Kalender-Backlog mit frischer Problem-Evidenz. Feature-Studien starteten so bei real beobachteter Reibung, nicht bei Team-Meinungen.

Phase 2 · DefineDefine

06Story mapping → phased roadmapStory Mapping → phasierte Roadmap

Workshop synthesis structured with AI assistance; prioritization decided by the data and the teamWorkshop-Synthese mit AI-Unterstützung strukturiert; Priorisierung entschieden Daten und Team
Artifact · Roadmap logic
Phase 1 — earned by dataPhase 2 — validated, queuedNot built — data said no
Slot suggestions · per-participant busy view · propose-a-time · day view with now-line Extended recurrence patterns · richer shared-calendar management Color-coded sections — killed by the SUS experiment (stage 13)

07JTBD & scenariosJTBD & Szenarien

Artifact · Core jobs
Between meetings
When I'm walking between meetings, I want to see what's next and where, so I arrive prepared without opening my laptop.Wenn ich zwischen Meetings unterwegs bin, will ich sehen, was als Nächstes kommt und wo — um vorbereitet anzukommen, ohne den Laptop zu öffnen.
Plans changed
When a meeting collapses, I want to reschedule in seconds and see who's free, so the slot isn't lost to email ping-pong.Wenn ein Meeting platzt, will ich in Sekunden verschieben und sehen, wer frei ist — damit der Slot nicht im E-Mail-Ping-Pong verloren geht.
Invited
When I get an invite that clashes, I want to propose a different time — the single most requested capability: 96% / 95%.Wenn eine Einladung kollidiert, will ich eine andere Zeit vorschlagen — die meistgewünschte Fähigkeit: 96% / 95%.

08Goals & metricsZiele & Metriken

Artifact · Year-one targets, agreed before launch
North Star · Weekly events managed on mobile per active userWöchentlich mobil verwaltete Termine pro aktivem Nutzer
Adoption600 downloads in year one · 50% of downloads become active users600 Downloads im ersten Jahr · 50% der Downloads werden aktive Nutzer
Engagementevents saved per week per active usergespeicherte Termine pro Woche und aktivem Nutzer
Retention65% target — the one we'd end up missing, and learning fromZiel 65% — das wir am Ende verfehlten und daraus lernten
Phase 3 · DesignDesign

09Foundation — Material 3, day-firstFundament — Material 3, Day-First

A Material 3-based system. The day view combines an expandable calendar, a time grid and a red current-time line — the whole day at a glance, exactly what the interviews asked for. Swiping between days uses zones sized at 30% of screen width, so the gesture works one-handed without hijacking scrolling.

Ein auf Material 3 basierendes System. Die Tagesansicht kombiniert einen ausklappbaren Kalender, ein Zeitraster und eine rote Jetzt-Linie — der ganze Tag auf einen Blick, genau wie in den Interviews gefordert. Das Wischen zwischen Tagen nutzt Zonen von 30% der Bildschirmbreite — einhändig, ohne das Scrollen zu kapern.

Artifact · Platform decisions
DecisionGrounding
Day view as home, not monthinterviews: "whole day at a glance" — month view is orientation, not work
Red now-line in the gridthe phone's job is now; desktop's job is the week
30%-width swipe zonesone-handed reach on large phones without breaking vertical scroll
Bottom sheets over full-screen formskeeps day context visible during quick actions — Material 3 pattern

10Built on Material 3 — nativelyAuf Material 3 gebaut — nativ

Not "Material-inspired" — Material 3 by the book. The team's Mobile Design System (MDS) mirrors the M3 spec: every component is documented the way Google documents its own — Anatomy / States / Design tokens / Usage. I proposed and documented 15 design-system components and introduced design tokens into the workflow.

Nicht „Material-inspiriert" — Material 3 nach Lehrbuch. Das Mobile Design System (MDS) des Teams spiegelt die M3-Spezifikation: Jede Komponente ist so dokumentiert, wie Google die eigenen dokumentiert — Anatomy / States / Design Tokens / Usage. Ich habe 15 Design-System-Komponenten vorgeschlagen und dokumentiert und Design Tokens in den Workflow eingeführt.

Artifact · MDS structureMobile Design System documentation
LayerWhat's inside
33 M3 UI-kit componentsNavigation Bar · Top App Bar · FAB · Bottom sheets · Date & Time Pickers · Snackbar · Chips … — each with Anatomy / States / Design tokens / Usage
11 foundation docsColor · Typography (incl. Android + iOS platform type) · Elevation · Shape · Layout · Icons · Empty State · Design tokens …
Calendar product snippetsEvent Snippet · All-day Event Snippets · Creation Event Snippet · Day View · Event Date Picker — the calendar's own composite components, built from the kit
Why native M3 matters for enterprise AndroidWarum natives M3 für Enterprise-Android zählt

Enterprise users don't get onboarding time — they get five minutes between meetings. Native Material 3 means every gesture, sheet and picker behaves exactly like the rest of their Android phone, so the learning curve collapses to zero. It also means engineers build on platform components instead of custom ones — fewer defects, accessibility states for free, and a design system that survives OS updates instead of fighting them.

Enterprise-Nutzer bekommen keine Onboarding-Zeit — sie bekommen fünf Minuten zwischen Meetings. Natives Material 3 heißt: Jede Geste, jedes Sheet, jeder Picker verhält sich exakt wie der Rest ihres Android-Telefons — die Lernkurve fällt auf null. Und es heißt: Engineers bauen auf Plattform-Komponenten statt auf Eigenbauten — weniger Defekte, Accessibility-States gratis, und ein Design-System, das OS-Updates übersteht, statt gegen sie zu kämpfen.

11The spec archive — 13 UX/UI documents, ~185 pagesDas Spec-Archiv — 13 UX/UI-Dokumente, ~185 Seiten

Enterprise mobile ships on specifications. Every flow got a dedicated [UX_UI] document — states, permissions, edge cases — so engineers and QA never had to guess. Thirteen documents, roughly 185 pages, written and maintained by me.

Enterprise Mobile wird über Spezifikationen ausgeliefert. Jeder Flow bekam ein eigenes [UX_UI]-Dokument — States, Berechtigungen, Edge Cases — damit Engineers und QA nie raten mussten. Dreizehn Dokumente, rund 185 Seiten, von mir geschrieben und gepflegt.

Artifact · The 13 specs[UX_UI] documents · ~185 pages total
SpecWhat it covered
Create & edit eventfull form, field validation, save/discard states
Create event by tap on a free time slotthe survey-validated quick-create path (stage 05)
Viewing a calendar event24 pages — the largest spec: every field, role and state of the event card
List of eventslist states, grouping, empty and loading states
Event schedulerslot suggestions, per-participant busy view
Answer / response to eventaccept · decline · tentative · propose-a-time flows
View attachments in eventattachment types, preview and error states
Recurrent eventsrecurrence patterns and how instances inherit changes
Delete single eventdestructive flow with role-aware confirmations
Delete seriesits own spec — deleting a series has different edge cases than deleting one event
Delete event from seriesthe third deletion spec: removing one instance without breaking the series
Local notificationson-device reminders, timing and permission states
Mail-server notificationsserver-driven notifications and their sync behavior
Why deletion needed three separate specsWarum das Löschen drei eigene Specs brauchte

"Delete" sounds like one feature — it's three. Deleting a single event, deleting a whole series and removing one instance from a series each have different permission rules, different confirmation language and different failure modes. Folding them into one document is how calendars end up silently deleting a year of meetings; splitting them is how QA catches it first.

„Löschen" klingt wie ein Feature — es sind drei. Einen einzelnen Termin löschen, eine ganze Serie löschen und eine Instanz aus einer Serie entfernen haben je andere Berechtigungsregeln, andere Bestätigungstexte und andere Fehlermodi. Wer sie in ein Dokument faltet, riskiert Kalender, die still ein Jahr an Meetings löschen; wer sie trennt, lässt QA es zuerst finden.

Artifact · Pages from the real spec archiveArtefakt · Seiten aus dem echten Spec-Archiv
Create and edit event spec — minimum fill state of the event form with full field-copy table
Create & edit event spec — the form's minimum state, every field's copy in a two-language tableSpec „Termin erstellen & bearbeiten" — Minimalzustand des Formulars, jede Feldbeschriftung in einer zweisprachigen Tabelle
Create and edit event spec — date and time picker page with copy table
Same spec — the date & time picker, specified down to the button labelsDieselbe Spec — der Datums- & Zeit-Picker, spezifiziert bis zu den Button-Labels
Viewing a calendar event spec — annotated event card layout
Event-view spec (24 pp) — the event card annotated block by blockEvent-Ansicht-Spec (24 S.) — die Termin-Karte Block für Block annotiert
CETTI survey results — first-click heatmap on the prototype time grid
Split-test results doc — first-click heatmap: taps land on the time grid, 2× more than on the FABSplit-Test-Ergebnisdokument — First-Click-Heatmap: Taps landen auf dem Zeitraster, 2× öfter als auf dem FAB
Design system Event Snippet component — states with design-token annotations
DS · Event Snippet — component states with design-token annotationsDS · Event Snippet — Komponentenzustände mit Design-Token-Annotationen
Design system Day View component — annotated day view screen with token table
DS · Day View — the day grid as a documented component: anatomy plus token tableDS · Day View — das Tagesraster als dokumentierte Komponente: Anatomie plus Token-Tabelle

Documents are in their original working language — shown as authentic process artifacts.Die Dokumente sind in der Original-Arbeitssprache — gezeigt als authentische Prozess-Artefakte.

12Split-test: how creation should workSplit-Test: wie Erstellen funktionieren soll

Three prototype variants, randomized groups, first-click testing. The data was unambiguous — and it overruled the "obvious" FAB-first pattern.

Drei Prototyp-Varianten, randomisierte Gruppen, First-Click-Testing. Die Daten waren eindeutig — und überstimmten das „offensichtliche" FAB-First-Pattern.

Artifact · Split-test resultsrandomized first-click test · 3 variants
FindingNumberDecision
Tap-on-grid beats floating action button1.5–3.5× more first-click successslot-based creation is the primary path
Slot variant fastest overallfastest time-to-created-eventbottom-sheet quick-create on slot tap
Top-App-Bar variant2–5× slowerrejected
Cancel via back-arrow onlyfound by just 13–39%explicit cancel affordance added

Shipped: two creation paths — tap a free slot for quick-create, FAB for the full form. Both earned their place with data.Ausgeliefert: zwei Erstellungswege — Tipp auf freien Slot für die Schnellerstellung, FAB für das vollständige Formular. Beide haben sich ihren Platz mit Daten verdient.

13The experiment that killed a pretty ideaDas Experiment, das eine hübsche Idee beerdigte

Artifact · Color-coding experimentSUS comparison + recall test
VariantSUSColor recallVerdict
Color-coded sections86~20% recalled section colorskilled
Monochrome88shipped

The colorful concept died on the spot. Restraint won — and this is the slide I show when someone asks what "data-driven" actually means.Das bunte Konzept starb auf der Stelle. Zurückhaltung gewann — und das ist die Folie, die ich zeige, wenn jemand fragt, was „data-driven" wirklich heißt.

14Push notifications — one size fits nobodyPush-Benachrichtigungen — Einheitsgröße passt niemandem

Survey analysis cross-checked with AI; segmentation conclusions verified against raw countsUmfrage-Analyse mit AI gegengeprüft; Segment-Schlüsse an den Rohdaten verifiziert
Artifact · Segment surveyn=252 · 152 internal / 100 external
SegmentPriorityDesign consequence
Internal users89% put event reminders above mail pushcalendar reminders default-on, mail push secondary
External userssplit ~60/40 the other wayper-segment defaults + easy per-type controls

Notification priority isn't universal — it depends on the segment. The setting defaults differ by audience instead of forcing one hierarchy on everyone.Notification-Priorität ist nicht universell — sie hängt vom Segment ab. Die Standardeinstellungen unterscheiden sich je Zielgruppe, statt allen eine Hierarchie aufzuzwingen.

15Permissions & corner casesBerechtigungen & Corner Cases

Enterprise calendars live or die on the unglamorous parts: role-based event permissions (owner / editor / invitee), a recurrence and reminder system, and corner cases most calendars fumble.

Enterprise-Kalender leben oder sterben mit den unglamourösen Teilen: rollenbasierte Termin-Berechtigungen (Owner / Editor / Eingeladene), ein Wiederholungs- und Erinnerungssystem und Corner Cases, an denen die meisten Kalender scheitern.

Artifact · Corner-case coverage
Corner caseDesign decision
Event spanning midnightrendered continuously across both days — not split into two confusing fragments
Invitee edits vs owner editsrole-based permissions surface exactly what each role can change — no silent failures
Recurring event, single instance changedexplicit "this event / whole series" choice at edit time, not buried in a dialog after saving
Timezone shift mid-seriestimes anchored and displayed with explicit zone when device and event zones diverge
Phase 4 · ShipShip

16Design QA — the last research loopDesign QA — die letzte Research-Schleife

Research didn't stop at handoff. After implementation, I ran a designer-led review of the shipped meeting scheduler against the specs — so what users got matched what the data had earned.

Research endete nicht beim Handoff. Nach der Implementierung habe ich den ausgelieferten Meeting-Scheduler in einem Designer-Review gegen die Spezifikation geprüft — damit die Nutzer bekamen, was die Daten sich verdient hatten.

Artifact · QA reviewdesigner-led spec review, pre-release
Issues filedTriageOutcome
37CRITICAL / MAJOR / MINORcriticals fixed before release; minors scheduled — nothing shipped silently broken

17Outcomes — including the honest missErgebnisse — inklusive des ehrlichen Fehlschlags

First year after launch · product analyticsErstes Jahr nach dem Launch · Produkt-Analytics
600
downloads in year one — goal of 600 metDownloads im ersten Jahr — Ziel von 600 erreicht
~50%
of downloads became active users — goal of 50% metder Downloads wurden aktive Nutzer — Ziel von 50% erreicht
4
events saved per week per active user on averagegespeicherte Termine pro Woche und aktivem Nutzer im Schnitt
~50%
retention vs the 65% goal — the driver for the next research cycleRetention vs. 65% Ziel — der Treiber für den nächsten Research-Zyklus

To be honest about the miss: retention landed at roughly 50% against a 65% goal. Instead of explaining it away, we treated it as the sharpest open question — and it became the starting hypothesis of the next research cycle.

Ehrlich zum verfehlten Ziel: Die Retention lag bei rund 50% gegenüber einem Ziel von 65%. Statt es wegzuerklären, haben wir es als die schärfste offene Frage behandelt — und sie wurde zur Ausgangshypothese des nächsten Research-Zyklus.

What I'd tell another designerWas ich anderen Designern mitgebe At enterprise scale, research isn't a phase — it's the operating system. Every feature we shipped traced back to a validated hypothesis, and every idea that couldn't earn its data didn't ship. Im Enterprise-Maßstab ist Research keine Phase — es ist das Betriebssystem. Jedes ausgelieferte Feature ging auf eine validierte Hypothese zurück, und jede Idee, die sich ihre Daten nicht verdiente, wurde nicht ausgeliefert.
Next case studyNächste Case Study

Enterprise Tasks App · MyOfficeEnterprise Aufgaben-App · MyOffice