- Published on
International Rugby Experience x OMM
- Authors
Whilst working for OMM, we were commissioned to create a system for the International Rugby Experience , a new museum and interactive experience in Limerick, Ireland. The museum is designed to showcase the history of rugby in Ireland and around the world. The museum is split into several zones, each with a different theme. The museum is designed to be interactive, with visitors able to take part in games, simulations and visualisations.
Visitors are given a QR code when they enter. As they move through the museum, they 'sign-in' to different exhibits to provide a personalised experience. The system needed to be able to track the visitors as they moved through the museum, collect their scores across different activities and provide them with a scorecard at the end of the visit.
Requirements
- The system needed to be able to track visitors as they moved through the museum.
- Visitor names can be entered at the time of ticket purchase or when tickets are collected.
- Individual Exhibits should be able to authorise a visitor and record scores and other data against a visitor record.
- The system should be able to continue to work offline if the internet connection is lost.
- Content and copy on each exhibit should be configurable by museum staff.
Design
System Context Diagram
Systems
- Email System
- Used to send out visitor scorecards and marketing emails.
- Ticketing System
- External provider of ticketing services.
- Used to generate QR codes for visitors.
- Game System
- Unity-based games that visitors can play.
- Web-based games / visualisations / experiences.
- Stats Provider
- External provider of rugby stats.
Container Diagram
Components
- Web Apps: Touch-screen apps that visitors interact with. These are hosted on tablets at each exhibit.
- Built using React
- Published as Electron Apps via Capacitor
- Installed as Desktop Apps
- Unity Apps: Interactive games and visualisations that visitors can play.
- Built using Unity
- Installed as Desktop Apps
- Micro-controllers: Media players that display videos and animations.
- Third-party devices
- MQTT Broker: Used to communicate between the different components.
- Hosted on-prem using Mosquitto
- API: An API layer for the apps to upload scores and retreive visitor data.
- Database: This is used to store visitor data and scores.
- Built using SQLServer
- CMS: Used to edit copy and content on each exhibit.
- Built using Directus
- Logging: Used to log visitor interactions and errors.
- Built using SeQ
Implementation Considerations
- Offline Mode: The system should be able to continue to work offline if the internet connection is lost. This is achieved by storing visitor data locally and syncing when the connection is restored.
- Messaging: The system uses MQTT to communicate between the different components. This allows the system to be loosely coupled and for components to be added or removed without affecting the rest of the system.
- Scalability: The system should be able to handle a large number of visitors at peak times. This is achieved by using a microservices architecture and scaling the different components independently.
- Security: The system should be secure and protect visitor data. This is achieved by encrypting data in transit and at rest, and by following best practices for securing APIs and databases.
- Monitoring: The system should be monitored to ensure it is running smoothly and to detect and fix issues quickly. This is achieved by using logging and monitoring tools to track visitor interactions and errors.
- Content Management: The system should allow museum staff to edit copy and content on each exhibit. This is achieved by using a CMS that allows staff to edit content in a user-friendly way.