Background
hAPI is a dynamic data collection system used by headspace to collect data from their clinicians and patients, and is used daily by patients and centre staff over headspace's 120 centres, collecting over 6000 surveys daily, tracking the patient's progress and outcomes. hAPI provides essential analytics back to the centres that they use to ensure their patients' treatments.
The platform has been developed with extensibility as a core feature, as headspace wanted to support their current program offerings but also allow for future programs without needing additional development.
hAPI has three components:
- A website where Centre Staff interact daily to view and fill out data related to Young People
- A mobile optimised web-app for Young People to interact with on their own mobile devices or the tablets they are given at the centres (before their sessions)
- A website where headspace administrators can add, edit and manage the program information (e,g add new questions or display rules, translations etc).
Project challenge
Portable came on board in 2018 to re-conceptualise the original hAPI 1.0 as hAPI 2.0. The central reasons for the hAPI redevelopment were:
- Survey management: allowing headspace to add/edit/delete all survey data in fine detail
- Survey enhancement: allowing greater features within the surveys such as more question types
- Program creation: allowing headspace to create new programs without requiring custom development
- Data versioning: allowing survey data models to evolve without affecting historical data
- Data integrity: allowing customisable validation rules and response types for data collection
In addition, the application needed to be future-proofed so that it could be enhanced and updated at any point in the future to reflect the current model of support that headspace provides Young People. We set about building hAPI 2.0 as a re-envisioned platform, hosted on Azure and built using VueJS, Bootstrap CMS on the front end, Laravel on the back end and integrated to a MS SQL database. In doing so we also set up a pipeline for automated deployments and testing and provided headspace with comprehensive technical documentation and data dictionaries.
Since the launch of hAPI 2.0 in July 2019, the application continued to be developed and supported by the Portable development team through regular projects and enhancement sprints. In addition, the original design goals of hAPI 2.0 have been realised through the creation of several new programs and constant survey enhancement and versioning.
Our approach
User stories
Development on the hAPI application traditionally starts with the extensive library of User Stories and detailed Acceptance Criteria that have been written and developed over the past 4 years. They capture every feature and function within the application to a very detailed level.
The User Stories were originally captured after a series of workshops with the headspace team, during July to October 2018. The workshops included a demonstration of the current hAPI 1.0 application, a discussion around how the application worked in the current state, and then a workshop focusing on what the new processes and features should be. There was also a detailed technical workshop that discussed the architecture and infrastructure of the application, and the technical requirements of the new system.
Reference group engagement
headspace have a number of existing reference groups who were engaged in the hAPI 2.0 redevelopment, including the Young Person reference group and the Centre reference group. These stakeholders provided vital feedback and input into what they expected and needed from the hAPI application.
This feedback was collated and added to the functional requirements of the application, leading to the publication of the User Stories library, which is now a dynamic collection that is updated every time a development sprint occurs.
The User Stories then formed the basis of the hAPI 2.0 project - providing guidance to the development team as they built out the new application from scratch, resulting in the launch of hAPI 2.0 in July 2019.
Agile sprints
Testing (QAT) and User Acceptance Testing (UAT). The sprints include any enhancements that headspace has requested, as well as any bugs or issues that may need to be addressed.
Recent projects have included Program import/export, the addition of One Time Passwords, an overall UX refresh of the Young Person’s experience, and a Laravel/php upgrade.
Outcomes
- The redevelopment of hAPI has allowed headspace to better capture data about the Young People in their care, as well as ensuring a stable and configurable application that will be useable for a number of years to come.
- Working in a rolling agile fashion, with regular 2-week development sprints, has allowed headspace to add in new features or enhancements quickly to meet the needs of their staff and Young People.
- The refactoring of the technology behind the application and a commitment to quality code has also ensured that changes can be made relatively easily.
- The extensive User Story library and other technical documentation allows for a consistent user experience across the whole application. It also means that when a new team member joins the hAPI project team, they can be onboarded relatively quickly.
Reflections
Anna Hall, headspace Chief Information Officer
“The hAPI application is integral to our service delivery and the associated data capture and with the way the application has been implemented we know that we can rely on data accuracy and quality.”
Anthony Daff, Portable Lead Developer
“It was “software done right”. We had the safety of strong processes, a clean architecture, thorough documentation and lots of test automation. We were amazingly productive in an incredibly complex problem space and enjoy continuing to work with headspace on supporting hAPI and evolving its feature set.”
Project team
Anthony Daff - Lead Developer
Caitlin Wintaur - Senior Producer
Nick Edwards - Senior Developer
Steve Joynt - Senior Developer
Dave Allen - Senior Developer
Kath Young - Senior Developer
George Joseph - Developer