Sir John Monash
Centre
The Sir John Monash Centre (SJMC) tells Australia’s story of the Western Front
during the First World War in the words of those who served.
The Sir John Monash Centre (SJMC) tells its visitors the story about Australia's participation on the Western Front. The story is told in the words of those who served.
There is much to learn from the Great War, however, ordinary history books often only explain events on a surface level. In contrast, using interactive multimedia installations and technologies, the 480-square metre interpretive centre takes visitors on a journey in the footsteps of ordinary soldiers who experienced extraordinary events.
The SJMC’s technology enables each visitor to personalise their experience as they learn about the Australian soldiers’ stories. Visitors are "fully immersed" in a way that is not seen anywhere else.
World-class BYOD technology delivers an enhanced understanding of the nature and context of the Australian contribution to the First World War.
The SJMC and Mad Devs partnership
The SJMC opened to the public on April 16th, 2018. The entire centre, including its half-sunken building and cutting-edge new technology, was developed and deployed by an Australian-based IT vendor. The SJMC and Mad Devs partnership has therefore been based on enhancements and preventative maintenance contracts.
After conducting an independent audit of a previous IT vendor, a list of technical debt was formed.
The Mad Devs team has successfully accomplished code refactoring as well as closing the technical debt. After that, system monitoring, new feature development, and maintenance was placed on Mad Devs shoulders.
The challenges
- The 100MB of documentation and 1M+ lines of code, which required months of onboarding.
- The unique nature of the software in a one-of-a-kind technologically advanced centre.
- The 450 units of hardware connected to operate as a coherent solution that delivers content to SJMC visitors in a personalised manner.
- The 5000 km distance between the SJMC and Mad Devs’ office.
- The lockdown caused by the Covid19 pandemic, which made it difficult to check the deploy updates.
- Orchestrating a seamless experience for 110K visitors annually.
- Cooperating and communicating with numerous vendors working at SJMC.
The SJMC Software
Transferring a project to another software partner is never easy for all parties involved. So, let us introduce you to the new era of interpretive centres and walk you through the complexity of the SJMC project.
Multimedia Management IT Brain
Personalised experience at your own speed and in your own language
Since the available existing solutions had limitations and restrictions, The Sir John Monash Centre hired an Australia-based IT company to create an integrated multimedia solution to coordinate and communicate with every piece of technology in the centre.
The MMIT Brain synchronises two information systems: the multimedia management system and the smart building management system. The multimedia software and hardware management system controls, supervises and monitors lighting, audio, video and special effects for the SJMC. The universal software infrastructure to building controls infrastructure integrators is the third-party framework that works as a foundation of the SJMC intelligent building. It supports a complete IP-based information network for real-time management and controls the SJMC's multiple facilities. This one-stop software manages all building operations, energy, security, and operational systems.
The MMIT Brain is a coherent solution that brings together the monitoring and management of two information systems.
The MMIT Brain orchestrated the synchronisation of every thread into one coherent solution. Physically constructed as a single hardware and software, it performs various services under one hood. Here is a list of functions the MMIT Brain performs.
- Delivers content to mobile applications and synchronises subtitles and audio on multimedia screens in 3 languages (German, English, and French).
- Orchestrates the experience of multiple SJMC visitors to avoid interference.
- Performs interaction between two internal information systems.
- Enables content managers to deploy and modify new content.
- Synchronises content storage and other multimedia computers.
Mobile applications
The world-class BYOD technology solution ensures that visitors are immersed in soldiers' personal histories.
As soon as visitors enter the site, the SJMC’s mobile applications, with the help of advanced positioning algorithms proactively cache content, cue up relevant multimedia, and guide visitors through the stories of Australian soldiers.
On an annual basis, approximately 60,000 visitors move throughout the centre. 150 Bluetooth beacons determine the location of each smartphone to deliver the right content at the right time.
The gallery's small size and the volume and density of signal traffic from visitors is a challenge that was solved using a complex, layered positioning algorithm that was developed to help deal with the unique challenges of SJMC’s physical environment.
When visitors move around the centre, the app will continually refresh a list of the content that is available nearby and allow them to create their own experience.
Sir Jonh Monash Centre Site
SJMC Hardware
Hundreds of pieces of equipment are master-mindedly organised to transform content stored in audio, video, and subtitles format to interactive monitors that are run on multiple servers.
WATCHOUT
WATCHOUT is a multi-display production and presentation system that enables the SJMC to arrange displays in unusual ways and create seamless images and videos. The absence of gaps between display surfaces is possible due to the WATCHOUT system that distributes the content and keeps everything in sync across all connected displays.
BRIX
Essentially, BRIX is an ultra-compact multimedia computer that can be hung on a wall. The advanced graphics card delivers heavy content to multiple monitors simultaneously. Moreover, each BRIX is managed by the MMIT Brain to work in synchronisation with mobile applications.
Bluetooth beacons
The mobile application’s positioning algorithm collects the location data of each user via 150 Bluetooth beacons located all over the centre.
The limited space in the SJMC made detecting each visitor’s location and continuously refreshing a list of available content nearby challenging.
Enable sound to the best expirience
Playback of content in the application when approaching the bluetooth beacons.
60,000 visitors
On an annual basis move throughout the centre.
150 Bluetooth beacons
Determine the location of each smartphone to deliver the right content at the right time.
Key goals for Mad Devs
- Understanding the complexity of the MMIT Brain software
- Building a small-scale version of the SJMC experience in 1 month
- Finishing technical debt conducted by an independent auditor
- Covering the code with unit and integration tests
- Building a framework for automating E2E tests
- Deploying technical debt changes and improvements on site
- Developing a reporting system
- Testing the deployment of new content
- Setting up system monitoring
Technology stack
Go
Swift
Java for Android
Unity
AWS
CodeCommit
Windows 10
iOS
Android
Ubuntu
Ansible
Sentry
Elasticsearch
Logstash
Kibana
Prometheus
Custom small-scale version of the SJMC in Mad Devs’ office
As thousands of kilometres separate the SJMC and Mad Devs’ office, a unique approach to the engineering partnership was required.
After purchasing the required equipment and reading code and documentation, in one month after understanding the complexity of the SJMC, Mad Devs’ DevOps and back-end engineers built a custom small-scale version of the SJMC complex multimedia environment. Thus, testing and deploying new content and changes in the Brain was made possible even kilometres away from the real SJMC.
Technical debt
Although the previous vendors have developed incredible software, an independent organisation prepared a detailed audit and evaluated deficiencies or areas of improvement.
The complexity of the system raises particular challenges for the Mad Devs team, as they had to submerge themselves into the full comprehensiveness of the Brain solution to be able to improve it. It took our team a month of onboarding and reading documentation before we could fix even a minor issue.
Code refactoring and optimization
Refactoring the SJMC code and covering it with the unit and integration tests improved the stability and usability of both mobile applications and the MMIT Brain.
On top of that, by establishing an efficient testing process we significantly increased iOS and Android applications' 40% test coverage that ultimately prevented defect leakage. Moreover, after fighting 1000+ minor defects and optimising applications to support the latest mobile operating systems, Mad Devs’ engineers successfully finished the technical debt on time and planned the deployment of the changes on site.
Analytics and user-friendly reports
Extensive SJMC data gathered from the Multimedia IT System is organised into user-friendly reports by an Analytics feature. Such reports enabled the Centre’s managers to easily track performance and report directly to stakeholders.
The analytics show the following metrics:
- Number of visitors
- Number of school groups
- Number of students
- Average visit time – i.e. time detected on-site
- The average length of time of the SJMC Experience – i.e. time between connections to first and last site
- Popular stands, by analysing the longevity of visitors listening to/watching/interacting with content
- Average time visitors spend in each SJMC zone
SJMC System monitoring
System monitoring is a proactive method to improve the quality of SJMC software and hardware by gathering data from 6 servers and 100+ BRIX multimedia computers highlighting areas that might need Mad Devs’ engineers' attention.
Sophisticated system monitoring is the fight life of defence against downtime.
Grafana + Prometheus
To achieve maximum observability of the SJMC hardware Grafana was used to build all the graphs for the current state. It enables the Mad Devs team to configure the reports and alerts if any of the system components fail or are under high load or in case of any other problem.
Prometheus acts as the storage backend and exposes a wide variety of metrics gathered from 6 servers while Grafana acts as a visualisation layer and works as the interface for analysis and visualisation.
Elasticsearch+Kibana+
Logstash
Logstash ingests, transforms, and ships SJMC logging data from 100+ BRIX (multimedia computers). Before unstructured logging data was scattered across hundreds of folders and was not properly monitored, which ultimately caused breakages and deterioration of expensive hardware. Now Logstash collects and transforms logging data by sending it to Elasticsearch. Elasticsearch enables the SJMC to store, search, and analyse logged data with ease at scale.
Kibana pulls up logged data and creates user-friendly visualizations with charts, graphs, heatmaps, and more. It is easy to understand solutions to manage SJMC hardware in a single dashboard.
Continuous integration and delivery (CI/CD)
CI/CD shortens the feedback cycle and allows Mad Devs’ engineers to minimise risks and increase productivity by configuring CI/CD for autotest running and automatic deployment.
Sentry
Integration of Sentry provides the Mad Devs team with automated error tracking and shows us every fault that happens with the SJMC MMIT Brain by organising its logs. Sentry enables the Mad Devs team to identify, prioritise, and reproduce each issue.
Automated testing the MMIT Brain via custom emulators
Auto-testing of the MMIT Brain can be sorted into two categories:
- The synchronisation of two internal information systems.
- End to end testing to ensure seamless user experience for thousands of SJMC visitors.
Testing the accuracy of new content and feature deployment is a challenge due to the 5000 km distance that separate Mad Devs’ office and the SJMC. Thus, our back-end developers developed two types of emulation software that enables Mad Devs to test the MMIT Brain without accumulating additional travel expenses.
1. Internal information systems synchronization
The emulator code tests the interaction of two independent information systems that control multimedia software and intelligent infrastructure integrations.
The internal information systems synchronisation emulator makes the infrastructure control system believe that emulated hardware is real.
For example, in case of an emergency like a water leakage, a smart building control system that controls electricity has to communicate the emergency to multimedia software through the MMIT Brain and turn off all multimedia computers to avoid closure.
Without such an emulator, Mad Devs’ developers would not be able to look at the MMIT Brain code and understand whether the Brain has transferred the command from one system to another. Without such an emulator, the team would be clueless regarding whether the command had been successfully executed or not.
2. End to end tests using emulators of mobile applications
A mobile applications emulator enables the SJMC to run all possible user experiences on all possible virtual multimedia sites.
All possible interactions with WATCHOUT site multimedia computers including touch screens, multiple users watching simultaneously, and switching audio and subtitle languages usually last a minimum of 6 hours. The emulator for end to end testing accomplishes the tests in just 20 minutes.
Mad Devs’ trip to the SJMC
In February 2020, just before the contract’s deadline, a Mad Devs’ team of eight travelled to the Сentre, which is located near the village of Villers-Bretonneux (Somme) in northern France.
Although the small-scale version of the Сentre was built inside Mad Devs’ office, the team was pursuing the following goals:
- Understand the complexity of the SJMC hardware and software in person
- Uncover the potential risks and problems
- Deploy technical debts and test the changes
- Deploy new content on large scale screens and test the changes
Kirill Zinchenko
Project Manager
Vlad Andreev
CQO
Aleksandr Zhitov
QA Manager
Sergey Boyko
QA Tester
Andrew Minkin
CTO
Dmitri Khalezin
DevOps Engineer
Kirill Avdeev
Backend Developer
Stanislav Shcherbinin
Backend Developer
Aleksandr Astashov
Full-stack Developer
Ruslan Kasymov
Logistic Manager
Pavel Pushkarev
iOS Developer
Rustom Kulbatyrov
Android Developer
Ongoing partnership
According to the internal CSAT survey, 98% of Mad Devs' customers find the company's service great value for money, and most of them stay with us for 3+ years. The SJMC is no exception.
We are honoured to extend our partnership to improve the SJMC visitors' experience by introducing the iPadOS application for children. This application will offer engaging content which allows children to discover the centre and its resources through a series of educational games. Moreover, Mad Devs is going to develop a sophisticated content management system that is eventually going to simplify the deployment of new content and will enable the managers of the SJMC themselves to make the required changes with ease.
The Sir John Monash Centre operates within a bespoke multimedia framework, which requires high-level technical expertise to deliver the Centre's visitor experience. Mad Devs provide outstanding levels of support and development services across our multimedia and IT platforms, systems and languages. Always available to provide assistance when needed, Mad Devs are a highly-valued part of our wider operations.