Lektion 1Plånboksdesign: aktiva biljetter, biljettlivscykel, utgång, återställning och överföringsscenarierDesigna en plånbok som hanterar aktiva, kommande och utgångna biljetter. Du kommer att modellera biljettstater, validering, utgång och enhetsändringar, samtidigt som du stödjer återställning, överföring och bedrägeriförebyggande i ett tydligt, förutsägbart gränssnitt.
Biljettstatsmaskin och livscykelhändelserVisningar för aktiva, kommande och utgångna biljetterValideringsstater och visuella säkerhetssignalerÅterställningsflöden efter ominstallation eller enhetsförlustÖverföringsregler, gränser och bedrägerikontrollerLektion 2Reseplanerare UI/UX: obligatoriska inmatningar (startpunkt, destination, tid, preferenser) och utdataelement (rutt, duration, byten, gångavsnitt)Designa reseplanerarens UI från inmatning till resultat. Du kommer att specificera obligatoriska fält, preferenskontroller och resultat-kort, med säkerställande av tillgänglighet, tydlighet i avvägningar och snabb jämförelse mellan alternativa rutter och transportmedel.
Inmatningsformulär för startpunkt, destination och tidPreferenskontroller för transportmedel och gångDesigna ruttresultat-kort och sammanfattningarDetaljvy för etapper, byten och priserTillgänglighets- och lokaliseringsovervägandenLektion 3Användarkontroller för aviseringar: prenumerationer, tysta timmar, filtrering per linje, tillgänglighet för aviseringarDesigna användarvänliga kontroller som styr vilka aviseringar som mottas. Du kommer att implementera prenumerationer, tysta timmar, filtrering per linje och tillgänglighetsalternativ så att resenärer kan finjustera relevans samtidigt som de får kritiska säkerhetsmeddelanden.
Prenumerationsmodeller: linjer, stationer, rutterTysta timmar, stör ej och åsidosättandenFiltreringsalternativ per linje och ämneKritiska vs valfria aviseringskategorierTillgänglighetsinställningar för aviseringstillförselLektion 4Realtidsleverans av aviseringar: push-notiser, WebSocket/Socket.IO, server-sent events och reservpollingUtforska kanaler för realtidsleverans av aviseringar och deras avvägningar. Du kommer att jämföra push, WebSockets, SSE och polling, designa återanslutning och backoff samt säkerställa att aviseringar förblir aktuella, avdubbade och energieffektiva på mobila enheter.
Välja push vs WebSocket vs SSE vs pollingAnslutningshantering och återanslutningslogikOrdning, avdubbning och idempotenta aviseringarBatteri, dataanvändning och bakgrundsgränserReservstrategier när realtid misslyckasLektion 5Rutt-rankning och filtrering: snabbast, minst byten, tillgänglighet, minst gångDesigna rankningslogik som balanserar hastighet, byten, gång och tillgänglighet. Du kommer att definiera filter, poängmodeller, oavgjorda-regler och UX-mönster så att resenärer snabbt hittar rutter som matchar deras preferenser och begränsningar.
Rankning efter tid, byten och gångavståndTillgänglighetsmedveten ruttpoängsättning och straffAnvändarkonfigurerbara filter och förinställningarHantera ofullständig eller lågkvalitativ GTFS-dataFörklara rankningar med tydliga UI-etiketterLektion 6Analytikhändelser för kärnfunktioner: resesökningar, biljettköp, aviseringinteraktionerDefiniera analys för resesökningar, biljettköp och aviseringar. Du kommer att designa händelsescheman, användaregenskaper, funnlar och integritetskontroller som hjälper till att förbättra funktioner samtidigt som du respekterar regelverk och användarförväntningar.
Kärnhändelser för sök, köp och aviseringarHändelsenamn, versionshantering och schemanFunnlar, kohorter och retentionanalysTillskriva aviseringar till användaråtgärderIntegritet, samtycke och dataminimeringLektion 7Biljettköpsflöde: produktkatalog, taxa-regler, platser/reservationer vs betalningsbevis-modellerDesigna biljettköpsflödet från produktval till bekräftelse. Du kommer att modellera taxa-regler, periodkort, reservationer och betalningsbevis, med säkerställande av tydlighet, validering och kompatibilitet med transportörers backends.
Produktkatalogstruktur och taxa-familjerTaxa-regler, zoner, tak och rabatterPlatserreservationer vs öppet betalningsbevisValidera behörighet och resenärstyperKöbekräftelse och kvittodesignLektion 8Användarflöde från appstart till ruttresultat: behörigheter, platsåtkomst, snabba åtgärder, senaste sökningarKartlägg den ända-till-ända-resan från appstart till ruttresultat. Du kommer att designa behörighetsfrågor, platsbehandling, genvägar och senaste sökningar så att resenärer når relevanta resalternativ med minimal friktion och tydliga integritetsförväntningar.
Kallstart, splash och onboarding-beslutBegära och förklara platsbehörigheterSnabba åtgärder, favoriter och hem-arbetsgenvägarSenaste sökningar, rankning av senaste och rensningHantera nekade behörigheter och manuell platsLektion 9In-app aviseringspresentation: inkorg, banderoller, kontextuella ruttaviseringar, personalisering och prioriteringDefiniera hur aviseringar visas i appen över olika kontexter. Du kommer att designa inkorgar, banderoller och kontextuella ytor, med prioritering, gruppering och personalisering som håller resenärer informerade utan att överväldiga dem.
Aviseringsinkorg layout och filtreringsalternativTillfälliga banderoller, toasts och modalaKontextuella aviseringar på rutt- och biljettvyerPrioritering, gruppering och ratbegränsningPersonalisering baserat på användning och linjerLektion 10Felhantering och omförsöksmönster vid köp och nätverksfelLär dig mönster för att hantera köp- och nätverksfel utan att förlora användartro. Du kommer att designa omförsök, idempotenta operationer, offline-köer och tydliga felmeddelanden som skyddar betalningar och undviker dubbla avgifter eller trasiga biljetter.
Klassificera övergående vs permanenta felDesigna säkra omförsök och backoff-strategierIdempoteny-nycklar för betalningsoperationerOffline-köer och lokala operationsloggarAnvändarvänliga felmeddelanden och återställningsflödenLektion 11Betalningsintegration: hostade sidor vs in-app SDK:er, PCI-omfångsreduktion, tokeniseringUtforska betalningsintegrationsalternativ och säkerhetsgränser. Du kommer att jämföra hostade sidor och in-app SDK:er, designa tokenisering och reducera PCI-omfång samtidigt som kassan hålls smidig, pålitlig och compliant.
Hostad kassa vs native SDK-avvägningarReducera PCI-omfång med tokenisering3-D Secure, SCA och regionala reglerHantera avslag, reverseringar och återbetalningarLagra och uppdatera betalningsinstrumentLektion 12Lokal lagring för biljetter: säkra lagringsalternativ (krypterad databas, keystore/Keychain) och tokeniseringLär dig säkra lokala lagringsmönster för biljetter och tokens. Du kommer att jämföra krypterade databaser, Keychain eller Keystore och plattforms-API:er, designa nycklerotation, backup-beteende och skydd mot manipulation eller kloning.
Hotmodell för lagrade biljetter och tokensAnvända Keychain eller Keystore för hemligheterKrypterade databaser för biljettmetadataNycklerotation, återkallande och migreringBackup, återställning och multi-enhetsbeteende