Inspiration
Physicians spend exorbitant amounts of time every day on clinical documentation, often using a poorly-designed Electronic Health Record (EHR) system on an in-room desktop. This draws away from the physician-patient relationship. Indeed, Brown Medical Magazine published an article about EHRs that featured an image drawn by a young child depicting him and his family sitting in a consultation room. The doctor was drawn facing the other way, staring into the depths of his computer screen.
And Physicians don't like this change in the patient-provider relationship. They've created music videos parodying EHRs and a hashtag called #LetDoctorsBeDoctors. We at Maya believe that this antipathy need not be; that interacting with a health record should be as seamless as talking with a smart pre-med intern.
What it does
That's why we created Maya Clinical Scribe - a Google machine-learning powered, voice-controlled Electronic Health Record supplement that allows physicians and other authorized providers to converse with it through Google Assistant, Alexa, Slack, and a variety of other platforms. Furthermore, Maya is also comes with a companion app that allows patients to securely view their data and providers to edit that data on the fly.
How we built it
We used Dialogflow, a service by Google, for the voice recognition and natural language processing. Firebase acted as a model Electronic Health Records database, the two were connected via Google Cloud Functions for Firebase (GCF). This server-less architecture allows for easier code maintenance, and thus lower cost of upkeep. Furthermore, GCF integrates seamlessly with Dialogflow, which also simplifies development.
The Android and iOS apps were created using Android Studio (using Java) and XCode (on Swift). Color palettes and images were selected to be soothing.
Challenges we ran into
Implementation was tough as none of us team members had experience with either Dialogflow or Firebase and those writing the Android and iOS apps, although familiar with their respective languages, had to learn their respective APIs from scratch.
Setting up the GCF with proper IAM, connections, and agents without a strong StackOverflow base of questions to lean on was another hurdle the team had to overcome. We also learned about the tediousness of data processing (when training our agent to recognize drug names, doses, and frequency abbreviations)
Accomplishments that we're proud of
We are proud of our work ethic as a team and our ability to quickly learn and adapt to unforeseen problems. We're also pretty happy with the functionality of our voice control system - it's a cool party trick (editor's note: maybe at CS parties?).
What we learned
We learned the importance of understanding each members strengths and weaknesses and the ability to develop agilely.
What's next for Maya-Clinical-Scribe
We'd like to add additional functionality, integrate with large EHR APIs, and beta test with users to integrate their feedback and develop iteratively.
Log in or sign up for Devpost to join the conversation.