An Effective Agile Testing Framework AN AGILE TESTING FRAMEWORK 1 2 5 3 4.
mHealthDroid: a novel framework for agile development of mobile health applications
-
Upload
oresti-banos -
Category
Science
-
view
331 -
download
3
description
Transcript of mHealthDroid: a novel framework for agile development of mobile health applications
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
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
Context
• Mobile health is far from mature
– Scientists still need to build and validate mHealthsolutions
– 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
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
Architecture
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.
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
Architecture
• Data Processing Manager– Online mode
– Offline mode
– Modular
• The manager includes four independent modules typically used in data processing.
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
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
Data Model
• Must be– Generic
– Flexible
– Extensible
• Data collected by the sensorData
• Packages with the data fromall sensorsSession
• Sample rate, start time, end time
SessionMetadata
• Different supported sensorsSensors
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 github.com/mHealthTechnologies/mHealthDroid
• Communication Manager– Provides adapters
for Android devices and
Shimmer devices
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
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) NaivesBayes, Adaboost, DecisionsTree, Linear Regression and ZeroR
mHealthDroid
• System Manager– Wifi– Bluetooth– Screen Brigthness
• Service Enablers– Notifications
– Alerts
• Phone Calls
• Messages
– Guidelines• Audio reproduction• Video reproduction• Youtube videos player
mHealthApp
• Exemplary app– Composed by 6 tabs to illustrate the potential of mHealthDroid
– Available on Google Play
– Source code github.com/mHealthTechnologies/mHealthAPP
• Connectivity Tab
mHealthApp
• Visualization Tab
mHealthApp
• Notifications Tab
mHealthApp
• Guidelines Tab • Remote Storage Tab
mHealthApp
• Activity Recognition Tab
Conclusions
• mHealth is a very prominent field; however, there is a lack of toolsfor the development of mHealth applications
• A novel mHealth framework which embraces the key requirementsof 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 mHealthframework is described and made publicly available to thecommunity
• An application, particularly devoted to detect and track human behavior, is developed to showcase the potential of mHealtDroid
Thank you for your attention.Questions?
Alejandro Sáez FernándezMaster student at the Computer Technology Faculty of Computer
Science & Electrical Engineering (ETSIIT)University of Granada, Granada (Spain)
Email: [email protected]: +353 083 185 8701