Keywords

1 Introduction

Japan is currently facing hyper-aging society, which causes many social issues. According to a report by the Government of Japan, the number of elderly people over the age of 65 is 34.59 million in 2016, which is 27.3% of the total population [2]. Due to the long average life and the low birthrate, the number of elderly over 65 is increasing in Japan and will reach 40% of the total in 2050. There are many challenges, including the lack of caregivers, the increasing cost of social security, and the decreasing labor force. In particular, the issues concerning dementia are extremely serious. Dementia is a general term for a decline in mental ability by an organic brain disease.

There are several kinds of dementia. Alzheimer’s type dementia is a major disease, which comprises 60% of the total dementia. People with dementia usually have trouble in carrying out daily activities. For example, they struggle with memory loss, impair their reasoning and judgement, and wander and become lost. The number of people with dementia will reach 7 million in 2025, where one-fifth of five elderly people in Japan will suffer from dementia. It is thus important to take effective measures for people with dementia as soon as possible. However, the main cause of dementia is yet ambiguous. There is no silver bullet that can completely cure the dementia. Nowadays, the symptomatic treatment is taking a leading part for dementia care, including the music therapy. Reflecting these situations, Person-Centered Care (PCC), proposed by Tom Kitwood in the 1990s [3], is attracting a lot of attention. He said there are five psychological needs of people with dementia, inclusion, comfort, identity, attachment, and occupation. However, in order to cover these needs, a large amount of efforts is required for caregivers. Moreover, the caregivers must carefully observe people with dementia, and face every person for a long time. Therefore, it is difficult to achieve PCC at the nursing home, likewise it is almost impossible to do at home.

To achieve the principle of PCC at home, our research group has been studying PCC support systems using the virtual agent, IoT (Internet of Things), and cloud technologies. These systems include Virtual Care Giver [9] providing personalized communication and reminder service, the activity recognition system based on environmental sensing [6, 7], and indoor positioning system using BLE beacons [4]. To achieve the PCC, these systems exploit user contexts [1], which refer to any situational or contextual information of individual users. For example, a user context may be where the user is, how the user is, what the user is doing, or so on.

A user context is typically derived from event logs collected within the system. For instance, user’s current location can be obtained from the latest log of the indoor positioning system. The current condition of a user may be reasoned from dialogue records with the virtual agent. Thus, every PCC support system must collect event logs to manage the user contexts. To implement sophisticated home care, it is essential to combine heterogeneous user contexts. In the present PCC support systems, however, it is not easy to reuse the user contexts across different systems. This is because the event logs are separately managed within individual systems in their own data formats.

In this paper, we propose a new framework, which universally manages PCC-centric user contexts, by integrating heterogeneous event logs of heterogeneous PCC support systems. The framework also provides the user contexts in a domain-neutral way, in response to various queries from external services and applications. More specifically, we design and implement the following two components in this paper.

  • Log4Care: Common database unifying heterogeneous event logs of PCC support systems

  • Care–API: General-purpose API to retrieve user contexts from Log4Care.

To provide PCC for a person, it is essential to understand the detailed user contexts of the person, including their health conditions and mental states. The proposed Log4Care is carefully designed with a data schema that can store event logs essential for PCC. Specifically, we propose the data schema based on 6W1H perspectives, where the heterogeneous event logs are standardized in what, who, whom, when, where, why, and how. On top of Log4Care, we deploy Care–APIs to allow external applications to insert the event logs in the Log4Care database, and to retrieve user contexts from the database. For this, we consider application-neutral design without assuming any specific applications, so that Care–API can be used for various purposes. A typical use-case is that a care application combines user contexts from different systems. A human caregiver checks the current status of the person under care.

In this paper, we also implement a prototype system that integrates our existing PCC support systems using Log4Care and Care–API. Through practical use cases, we show how the event logs are integrated from heterogeneous systems, and how the user contexts are retrieved across the different systems.

2 Preliminary

2.1 Elderly Care at Home

In Japan, along with the aging society, single households whose head is over 65 years old, is increasing. However, it is difficult to accept all elderly in medical facilities and carry out the care for them. On the other hand, there are a lot of elderly that prefer to receive care at their own home or their family’s home rather than to receive at nursing home or care house. Against these backgrounds, in recent years, many attempts to care for elderly people at home have been made in various fields. Japanese Government is focusing on training human resources for home health care and promoting cooperation in the community. The general companies are starting to work hard on developing new services that relieve elderly of loneliness using a communication robot. These efforts aim to improve the quality of life (QoL) of the elderly.

2.2 User Context

User context refers to every information that indicates user’s current situation in a certain system. The information includes “What is the user doing”, “Where is the user?”, and “What circumstances is the user in?”. Additionally, user’s preference is also a part of user context. In [1], an adaptive message notification service that utilizes user context is proposed. This service sends a context-aware and personalized message to a smartphone, based on user’s current place, physical limitation, and so on. To provide useful information for the user, the service integrates various user contexts. Thus, to construct a service based on an individual person, considering the user contexts is essential.

2.3 PCC Supporting Service Using User Context

Our research group is extensively using the user contexts to implement PCC support systems at home. For example, the person-centered dialogue system with a virtual agent (VA) [9] obtains user contexts from speech communication. This system aims to provide daily counseling for elderly at home, even if human caregivers do not exist. VA asks elderly people about their body condition or whether they have taken the medicines on that day, and read their state from their reply. On the other hand, the ADL recognition system [5] manages user contexts from environmental sensor data. This system read the change of the value of sensors and BLE beacons, and detects user’s activity by machine learning technology.

In this way, using the user contexts is essential for these PCC support systems. However, since these two systems manage the user contexts individually and have own formats of data, reusing the contexts across the two systems is quite difficult. More generally, each service acquires and manages the user context exclusively by itself, which is quite inefficient. Figure 1 shows the conventional architecture of PCC support systems. Each application obtains the user contexts from different data sources and utilizes them for PCC. In order to achieve more efficient development and deployment of PCC support systems, it is essential to establish a uniform framework dealing with user contexts for PCC.

Fig. 1.
figure 1

The conventional architecture of PCC support systems

3 Proposed Methods

In this research, to share the information about users in PCC support systems efficiently, we propose a framework that integrates the data from other services and uniformly manages them.

3.1 Goal and Challenge

The goal of this paper is to propose and implement a framework that universally manages PCC-centric user contexts. The proposed service helps other applications to understand user’s state in detail and make the care plan for individuals by analyzing the accumulated the user contexts. Figure 2 shows the system architecture of the proposed service. The challenges here are how to mediate heterogeneous data from different systems and what are specific properties for data logging in PCC. To share various user contexts from different data sources, the proposed service deploys a common database called log4care in the center of the architecture. The database manages heterogeneous types and formats of data used in PCC support service, in a standard data model. The user context dealt with in this research is not only human-centric, but also include PCC support service-centric information such as what kind of action was given to a specific user and what kind of effect was obtained as a result. In the present circumstances, each service exclusively manages such context information based on its own data format. This information is standardized to fit the data schema covering necessary items from the viewpoint of PCC, and stored in the common database. The standardized user contexts are exposed to external applications via general-purpose API, which accepts various queries. Thus, all the applications can easily query user contexts in a standard manner. The following subsections describe the two key components of the proposed service: The common database and the general-purpose API.

Fig. 2.
figure 2

The proposed system architecture

3.2 Log4Care: Common Database for Managing User Contexts for Person-Centered Care

User contexts from different data sources have their own semantics and formats. Thus, the challenge here is how to define a universal data schema that can accommodate such heterogeneous data within the common database. In this section, we decide how we to manage the user contexts from various systems.

[10] describes how to write a nursing care record in a caring field. The nursing care record describes a series of progress such as changes in the health condition of the user, contents of nursing care, living conditions and the like. By sharing the described information, there is the purpose of organizing nursing care systematically, reflecting it in future care plans, and providing better services to users. Nursing care records need to be written so that facts are accurate and understood by everyone, so it basically describes the events related to users from the 5W1H perspective (i.e., WHAT, WHO, WHERE, WHEN, WHY, and HOW). However, in this research, we handle not only the information about users’ current health condition and their activities, but about what kind of care is done by the PCC support service and what happened as a result. Thus, we need a point of view to whom the service took care of.

In reference to the practical nursing record, we design the new data schema based on the 6W1H perspective (i.e., WHAT, WHO, WHOM, WHERE, WHEN, WHY, and HOW). We empirically know that this perspective can cover most of the user contexts in a MECE (Mutually Exclusive and Collectively Exhaustive) fashion. Table 1 shows the 6W1H perspective that determines the data schema of the common database. From a viewpoint of PCC, the WHY and the HOW is especially important, because they construct a causal chain of activities explaining why the user is currently like that. The causal information is essential for making and reconsidering personalized care plan considering the reason. The database records time-series activities of a target user within PCC, from which various kinds of user contexts can be retrieved.

Table 1. User context from the 6W1H perspective

3.3 Care–API: General-Purpose APIs on Top of the Data Model

We use API (Application Programming Interface) refer to the stored user contexts. We develop general-purpose APIs on top of the data model to access the database. These APIs are deployed as Web service that transmits and receives the data through HTTP protocol. There are two kinds of APIs that the proposed method provides. One is to convert the data from other PCC support services to fit the data schema of Log4Care, and insert the standardized data. The other is to accept multiple arguments from other service and search the stored contextual information using SQL. Thus, the external applications are able to obtain the user contexts using Care–APIs.

4 Prototype Development

In this paper, we develop the prototype based on the proposed method mentioned in Sect. 3. In particular, we construct the common database that handles PCC-centric user contexts from various PCC support services. Additionally, we deploy API to send and receive context information to the database from external applications and services. In the following, we discuss how to decide the data model and the details of the API.

4.1 Data Model

We construct the data model of Log4Care with 6W1H perspectives indicated in Sect. 3.2. Figure 3 shows the entity relationship diagram of Log4Care. The notation conforms to [11]. In Fig. 3, +—\(\cdots \) means the parent-child relationships, +—\(\in \) means reference relationships, and +\(\bullet \)\(\bullet \)+ means derived relationships.

In this subsection, We explain about each entity. The data structure of Log entity which manages what happpens in PCC, is as follows.

figure a

Among these, each event corresponds to the idea that event is “WHAT”, subject is “WHO”, object is “WHOM”, location is “WHERE”, datetime is “WHEN”, description is “HOW”. In addition, an entity of Log also includes the information on who recorded and when it was recorded. By doing this, when there was an error or shortage in the log and need to correct or append, the updated difference becomes easy to understand. On the other hands, an entity of Reference corresponds to the information included in the viewpoint of the remaining “WHY” out of 6W1H. For example, in [6], when the user replies to the question from the system, it can be said that the behavior of “answer” by the user was caused by the behavior of “question” of the system. An entity of Reference manages casual relation of two logs using each of \(log\_ID\), if the one was triggered by the other. By linking a log with its originating log, it is possible to grasp a series of actions of users when searching by API and obtain the detailed information about appearance and effectiveness of the care. An entity of Agent manages the users’ own information. In this research, as a user, we assume two kinds, human and other system or application. If these two users are managed in the same entity, there is a lot of waste such as mutual occurrences of items that cannot be input. Therefore, we distinguish these two users as an entity of Human and an entity of Systems. An entity of Event and an entity of Location associates key id and the name and manages events and location respectively. Using relation database management system MySQL, we construct the common database Log4Care that has the above data model.

Fig. 3.
figure 3

The date model of log4care

4.2 The Development of API

To insert the user contents to Log4Care from external applications and to share the accumulated contexts efficiently, we develop Care–APIs indicated in Sect. 3.3 on the above data model. These APIs exchanges multiple types of data with external applications by using HTTP protocol. To develop these APIs, we utilize MyBatis [8] which is one of the O/RM (Object-Relational Mapper) and connects the database with the object-oriented language. Combining the object in Java and SQL statement allows to search the contexts precisely responding to various queries. The followings show examples of the proposed APIs:

  • Log insertLog(id, datetime, subj, obj, location, event, description, recorder)

  • Log[] getCasualLog(user, event)

  • Log[] getLogByPeriod(user, since, until)

  • Agent getAgent(event, location, since, until)

  • Location getlocation(user, event)

  • Event getEvent(user, location)

  • String getDescription(user, event, since, until)

The insertlog() is to insert the data handled by each PCC support service into the common database Log4Care. This API accepts arguments and stores the data in an entity of Log. We here identify the rdatetime when the log is recorded and the time when the insertLog() is called. The getCasualLog() is to obtain the list of logs related to users using the user id (or the user name) and the event id (or the event name) as arguments. Similarly, the getLogByPeriod() is to acquire logs related to users and was done at the date and time that was sandwiched between since and until. That is, we can get information on what the users did in a certain period of time and what kind of state they were in. Additionally, we develop the getAgent(), the getLocation(), the getEvent(), and the getDescripton() to make a finer search.

Thus, Care–APIs are to insert the user contexts extracted from other systems to fit the data schema of Log4Care, and provide them It aims to facilitate the mutual use of various user contexts between different systems which were difficult under the present circumstances.

4.3 Development Environment

The development environment is as follows.

figure b

5 Use Case

To illustrate the effectiveness of the proposed service, we integrate the prototype into the conventional PCC support systems, and describe a practical use case scenario, showing how the user contexts from different heterogeneous systems are integrated and shared. In the scenario, we assume the following four actors as shown in Fig. 4. The description of each user is as follows.

Fig. 4.
figure 4

Relationship diagram of the users in the use case

  • Takeshi: 78 years old man with mild dementia living alone.

  • Danny: A home environment sensing system with sensors and beacons [7].

  • Greg: A care execution service that triggers a PCC based on the situation.

  • Mei: A communication chat-bot using Virtual Agent technology [9].

Danny is a service that detects the daily activities of a user based on the change of various sensor values and beacon information. Greg has the role of monitoring database log4care. When the information about is recorded by Danny, Greg gathers the related logs using Care–API and comprehends the state of Takeshi. Greg then instructs Mei to carry out the voice calling care depending on the state of Takeshi. Mei starts the care for Takeshi when triggered by Greg, and acquires what Takeshi reply using speech recognition and inserts the communication logs at that time into the common database. Through this use case, we confirm how these series of interactions are efficiently managed by the proposed architecture. The following table shows the timetable of the care scenario in the use case.

Table 2 describes the scenario in a timetable. In this scenario, first, Takeshi gets up on January 22. He then goes to a living room, and have breakfast. Dunny detects each activity by changing of the values of the environmental sensors and BLE beacons, and stored the information as the user contexts. Greg perceives that Takeshi’s blood pressure shows comparatively high score recently, and instructs Mei to confirm whether Takeshi takes a medicine every day. Through the interaction with Takeshi, Mei asks him what he is eating for breakfast and make sure the medication of him. Mei then recognizes that there is a possibility that medication is not taking place on a daily basis based on Takeshi’s reply, and encourage him to take a medicine the location of that. During the scenario, the three systems (Danny, Greg, and Mei) individually perform PCC-related events. In the proposed service, we standardize each event to adapt the data schema with 6W1H perspectives, and accumulate it in the common database.

Figure 5 shows the activities recorded in the common database. For instance, in (4) in Table 2, Danny detects the entering living room from the brightness of the living room turn on, based on the light sensor. This activity is described as data {time: “6:16”, subject: “Dunny”, object: “Takeshi”, location: “Living room”, activity: “Detecting”, description: “Entering the living room”}. Similarly, the data is accumulated from the activities of Greg and Mei. For example, through the interaction between Takeshi and Mei, the contents of the conversation are also stored in the proposed database. Thus, we can see that the heterogeneous data from different systems are well accommodated within the proposed common database. Using the data, we obtain various contexts about Takeshi, which explain his physical or mental state in his daily living. For example, “Did Takeshi gets up on time on January 22?”, “How much was his blood pressure on January 21?”, “Where was Takeshi at 6 o’clock on January 22?” are included. Currently, we assume that basic contexts are covered by the proposed APIs, and that the application-specific contexts are defined and managed within individual applications.

Table 2. The timetable of the care scenario
Fig. 5.
figure 5

The activities recorded in the common database

6 Conclusion

To achieve efficient development of person-centered care (PCC) support systems for elderly people, we have proposed a framework that universally manages PCC-centric user contexts. The proposed method manages heterogeneous data within a common database with 6W1H perspectives. It also provides standardized user context for external applications via general-purpose API. We also showed a practical use case to see how the proposed system efficiently shares the data among different systems. Our future work includes the implementation and evaluation of the proposed method.