StressBar: A System for Stress Information Collection and Personalized Recommendation

Motivation        Our Approach         People        Publications       Downloads  

hardware software stressmap


Stress is an increasing challenge to the health, well-being, and productivity of the urban dwellers. World Health Organization, as well as numerous other organizations and researchers have pointed out that stress-related disorders are on the rise and will be one of the most challenging public health threats in the decades to follow. Although the awareness of stress and its negative impact on health and productivity is growing, there is a lack of cost-efficient and easily assessable tools for the public to deal with stress. Medical and psychological approaches available are costly, lack sustained effects or are hampered due to limited availability of trained professionals to deliver the stress treatments.

    In order to fundamentally change the way we assess and manage stress, we have launched the StressBar project. StressBar will dramatically improve the assessment of stress in people's daily life as well as offering cost-efficient and easy-to-use effective treatment. Furthermore, the StressBar project will provide stress researchers with an entire new and rapid way to study stress as well as assess the impact from various stress interventions. We believe that participatory sensing is an important method to the research. StressBar will allow us to collect information about individuals and in the future make personalized recommendations. The collective data also allow us to analyze the stress status of a region, such as Metro-Detroit. This will help the government to make more accurate decisions. For example, in more stressed areas, there should be more medical services.


Our  Approach

The system follows the typical client-server design mode.The server is currently running on a Linux machine,and the client is running on the Android platform, which is responsible for data collection, including heart beat measure, stress and location information collecting. The communication protocol between them is HTTP, which provides fast and reliable solution to the system implementation. Four modules are presented in the following:  data collection modulecommunication moduleservice module, and data store module.

    The data collection module is designed to collect possible user stress information while at the same time making the collection process cost-effective and easy accessible, so we choose android as the mobile client platform. The information we collected includes heart beat, location, and user interactive questions. Heart rate information is collected through Bluetooth from a Nonin 4100 sensor which is attached to the users' finger. After two minutes, when the heart beat measure process is finished, the program pops up questions for users to fill. The heart rate and answers for those questions together with location information are then sent to a remote server through our communication model. Collecting location information is time consuming, so we implement it as background service updating location every 5 minutes.

    The communication module hides the complexity of client server communication. It is implemented as background service on mobile clients. The protocol we use is XML-RPC, which is a remote procedure call using HTTP as the transport and XML as the encoding. It is flexible and easy to implement, but one disadvantage is that it increases our phone's network traffic, which may increase our cost on using StressBar.

    The service module targets receiving client side requests and giving responses back to the client. We implement the service module as a web service since it is a fully developed technology, which will greatly reduce our efforts on building a reliable, high performance and scalable server. We can easily reconfigure it to add more services without changing the written code. StressMap, which displays the stress information on the map based on the location information collected by clients, can be easily deployed on our web server by just adding several lines on web.xml file.

    The data store module we use currently is built on MySQL database. We use the JDBC pool as the connection between the web service and database access since it automatically help us handle concurrent database requests. MySQL database has disadvantages on constructing large scale, distributed data storage system. To solve its disadvantages, we are building a highly distributed NoSQL data storage system named Woodward, which will be used for health data storing.



            Dajun Lu

            Guoxing Zhan

            Shinan Wang

            Guoyao Xu

            Jie Cao

            Dr. Weisong Shi

            Dr. Bengt B. Arnetz, Department of Family Medicine and Public Health Sciences