More Related Content

Similar to mHealthDroid: a novel framework for agile development of mobile health applications(20)

More from Oresti Banos(20)


Recently uploaded(20)

mHealthDroid: a novel framework for agile development of mobile health applications

  1. mHealthDroid: a novel framework for agile development of mobile health applications UCAmI & IWAAL 2014 (Belfast) Oresti Baños, Rafael Garcia, Juan A. Holgado-Terriza, Miguel Damas, Hector Pomares, Ignacio Rojas, Alejandro Saez and Claudia Villalonga
  2. Context • Technology has changed the healthcare paradigm – Growing tendency in the use of mobile health applications – Most of the apps are devoted to learning and formative purposes – User report VS wearable monitors
  3. Context • Mobile health is far from mature – Scientists still need to build and validate mHealth solutions – mHealth apps focus on a special domain or lack of essential features for health services – Powerful frameworks and tools that support the development are required  A mHealth framework
  4. Requirements of a mHealth Framework • Provide rapid development • Certain level of abstraction – Support different devices – Define a unified model • Data storage and visualization • Guidelines and Knowledge inference – Signal processing – Machine learning – Intelligent recommendations
  5. Architecture
  6. Architecture • Communication Manager – Abstraction • Provides the abstraction level required to enable the functioning of applications independently of the underlying health technologies. – Adapters • Modules devised to support the use of an specific mobile or biomedical device • The Adapter manages the connection with the device, interprets the received data and maps it to the unified data model – Extensible • The modularity of the Adapters makes the Communication Manager extensible and evolvable to future devices and technologies.
  7. Architecture • Storage Manager – Persistence • Provides data persistence both locally and remotely abstracting the queries from the underlying storage system • Visualization Manager – Online mode • The data is provided by the Communication Manager at runtime – Offline mode • The data is provided by the Storage Manager
  8. Architecture • Data Processing Manager – Online mode – Offline mode – Modular • The manager includes four independent modules typically used in data processing.
  9. Architecture • Data Processing Manager – Preprocessing • This module is devised to apply mechanisms to clean, transform and ultimately adequate the data to the specific needs. – Segmentation • This module provides diverse techniques to split the data. – Feature Extraction • This module permits to transform the input data into a reduced representation set of features or feature vector. – Classification • This module categorizes the data using the features extracted by the Feature Extraction module
  10. Architecture • System Manager – Provides functionalities to manage general resources of the mobile device  Wifi, GPS, Bluetooth, etc. • Service Enablers – Alerts Enabler • Alerts procedures when abnormalities or risk situations are detected – Notification Enabler • Prescheduled or event-based user-friendly notifications – Guidelines Enabler • Multimedia tools for displaying personalized guidelines – Medical Report Enabler • Structuring the medical knowledge in an expert-oriented format
  11. Data Model • Must be – Generic – Flexible – Extensible Data • Data collected by the sensor • Packages with the data from all sensors Session • Sample rate, start time, end time Session Metadata Sensors • Different supported sensors
  12. mHealthDroid • Android implementation of the mHealth framework – Target to Android 4.2 but back compatibility from Android 2.3.3 – Released under the GNU GPLv3 license – Source code  • Communication Manager – Provides adapters for Android devices and Shimmer devices
  13. mHealthDroid • Storage Manager – SQLite for the local data management – JSON for the transmission to a remote storage • Visualization Manager – External library for visualization (GraphView) • Multiplot visualization • Multisignal representation • Graph customization
  14. mHealthDroid • Data Processing Manager – Preprocessing • Upsampling • Downsampling – Features Extraction • Mean • Variance • Standard Deviation • Zero and Mean Crossing Rate • Maximum and Minimum – Segmentation • Sliding window – Classification • External library for machine learning (WEKA)  Naives Bayes, Adaboost, Decisions Tree, Linear Regression and ZeroR
  15. mHealthDroid • System Manager – Wifi – Bluetooth – Screen Brigthness • Service Enablers – Notifications – Alerts • Phone Calls • Messages – Guidelines • Audio reproduction • Video reproduction • Youtube videos player
  16. mHealthApp • Exemplary app – Composed by 6 tabs to illustrate the potential of mHealthDroid – Available on Google Play – Source code  • Connectivity Tab
  17. mHealthApp • Visualization Tab
  18. mHealthApp • Notifications Tab
  19. mHealthApp • Guidelines Tab • Remote Storage Tab
  20. mHealthApp • Activity Recognition Tab
  21. Conclusions • mHealth is a very prominent field; however, there is a lack of tools for the development of mHealth applications • A novel mHealth framework which embraces the key requirements of mHealth applications, namely, communication abstraction, biomedical data acquisition, knowledge inference, data storage and visualization, system management and services such as intelligent alerts, recommendations and guidelines, is presented in this work • mHealthDroid, an Android implementation of the mHealth framework is described and made publicly available to the community • An application, particularly devoted to detect and track human behavior, is developed to showcase the potential of mHealtDroid
  22. Thank you for your attention. Questions? Alejandro Sáez Fernández Master student at the Computer Technology Faculty of Computer Science & Electrical Engineering (ETSIIT) University of Granada, Granada (Spain) Email: Phone: +353 083 185 8701