Research Context
This project was completed with industry sponsor Nevvon and focused on a concrete operational issue: users experiencing hangs or freezes while using a Flutter-based application that records interactions in Tin Can format.
Problem Framing
The key move was to turn “the app freezes sometimes” into a structured diagnostic problem:
- define consistent bug categories
- identify repeatable indicators inside session-level Tin Can data
- combine session traces with contextual information such as IP data, device type, and timing
- build workflows for classification, diagnosis, and later prediction
Stuckness Heuristics
The staged README outlined three levels of stuckness:
- A quick-fix case where the user simply pauses before resuming normal events.
- A support-intervention case where the next-slide button disappears and another actor intervenes.
- A full-reset case where the slide freezes and the lesson has to be restarted.
Those cases were distinguished using gap duration, sequence irregularities, intervention patterns, and IP changes between the end user and support staff.
Implementation
The research flow was:
- identify suspicious sessions
- classify the level of stuckness
- analyze significant contributing factors such as interaction gaps, interaction patterns, device type, and time of day
- develop a predictive model for likely hang scenarios
Outcome
The result was a more structured debugging workflow with clearer defect grouping and more actionable findings for the development team. It belongs more naturally in Research than Projects because the core contribution was analytical framing and model design rather than a shipped end-user product.