Liverpool School of Tropical Medicine "MeasureSMS" project
Helping the world, one text message at a time
working days to MVP
possibilities to track diseases
languages for field workers to interact with MeasureSMS
About the Liverpool School of Tropical Medicine (LSTM)
LSTM, founded in 1898, was the first institution in the world dedicated to research and teaching in the field of tropical medicine. It is a registered charity that works across the world to fulfil its mission of reducing the burden of sickness and mortality in disease endemic countries. They do this by delivering effective interventions to improve human health in some of the world’s poorest communities.
MeasureSMS – an example of corporate social responsibility in tech
MeasureSMS is a software product which collects data about illnesses in remote locations via SMS text messaging. It was built primarily for use in countries with underdeveloped infrastructure and poor 3G/4G signals. SMS is usually the most effective form of long-range communication in these areas, allowing data to be relayed to an internet-enabled phone, and then onto a central service.
Collecting data about diseases and illnesses in these remote areas allows LSTM to support national governments to manage specific conditions with supplies and specialists ahead of interventions. It ensures affected populations can be treated effectively in the future. Some of these illnesses have serious and long-lasting implications, but are easily treatable with the correct medicines and expertise.
MeasureSMS allows field agents working in small, remote villages (e.g. in Ethiopia or Malawi) to communicate an incidence of disease or injury (e.g. snake bite) via text message, which is then relayed via an internet-enabled phone to LSTM’s data services. LSTM’s COO Siân Freer talks about the value the project has brought to the charity:
“Allocating scarce resources is a challenge faced by all countries. MeasureSMS has enabled us and our partners in endemic countries to identify areas of high disease burden, so that resources can be targeted to support those suffering from disabling, life limiting conditions.”
Rebuilding to modernise in a basic android world
Following a major incident which resulted in losing the legacy platform behind MeasureSMS, LSTM needed to completely rebuild with modern technologies, to reinstate and improve on the existing capabilities of the system. The challenge was going to be marrying this degree of modernisation to the technically outdated hardware constraints (2G phones used in remote locations), restrictions inherent in the hosting environment (we needed to use 8.1+ PHP for the backend) and the limitations of Android 7 (required due to the existing internet phones used as relays).
At the beginning of this piece of work, the website was offline after the earlier incident. In the process of reinstating the platform, it became clear that the hosting service was no longer able to support the PHP 5.6 backups available. Given that there was also a lot of outdated legacy code which wasn’t compliant with new requirements such as GDPR, the decision was made to rebuild the product to improve the existing system.
Our EvolvE team needed to build a minimum viable product (MVP) as quickly as possible, to get the original functionality back up and running. However they also wanted to ensure that the new product could support additional features in the latest technologies. The priorities were:
- Rebuild the API
- Rebuild the Android app
- Build a simple frontend to manage users, view data and graphs, and export data from the system in CSV format.
Essentially, what happens in the improved system is this: field agents using 2G phones send SMS messages in a pre-defined format to an android phone with internet capability, which operates as a relay to forward the message to an API endpoint at LSTM.
Managing tropical medicine at scale
The previous Android app had been built using Java, and only carried out basic validation of 4 diseases, responding to field agents in English. The team quickly identified the need to be able to track the multiple types of tropical illness prevalent in the populations they serve, so instead, they used Kotlin, adding the capability to record an infinite number of diseases.
LSTM can now also respond in 4 languages via the new API, depending on the language received from the field agent. Eventually it will be able to respond in any language.
These two improvements are a huge step forward in LSTM’s ability to track and monitor disease incidence, and enable them to better equip medical teams on future visits to manage (and potentially eliminate) serious conditions from the population.
What next for MeasureSMS and EvolvE?
This is an ongoing CSR engagement and we are constantly developing and iterating on the product as we maintain it for LSTM. As well as increasing the number of trackable illnesses and adding the ability to manage those in any language, these are some of the improvements we’re working on:
- Inventory management: we’ve built functionality into the API that will enable LSTM to use the product for inventory management in the future. Because the new system can handle an unlimited number of illnesses, it’s also possible to build an unlimited inventory, improving reporting and identification of patterns.
- Upskilling the team: current goals involve making the process of reporting and responding to and from the API as efficient as possible so that people can learn to use the application easily. For example, existing field agents often don’t send messages in the required format – new updates will ensure field agents are sent back a useful error message and instructions on how to send in the required format – the errors will be sent in the field agents’ native language.
- In the future, it may even be possible to send the API-generated responses in a bot format, giving automated responses and requests for information from field agents. This would carry a cost implication, so will be a decision for LSTM.
MeasureSMS is a win:win engagement for both Equal Experts and LSTM; with the shift to more modern, agile technologies, EvolvE participants have used their non-billable hours to gain experience of disciplines outside of their normal remit. This has allowed our people to cross-skill from their usual backend work to Android app development, or DevOps specialism working on the frontend, all whilst providing a valuable, free of charge development service to the charity.
Want to know more?
Are you interested in this project? Or do you have one just like it? Get in touch. We'd love to tell you more about it.