System Architecture of eSticky: how it works
The purpose of eSticky is to support people with memory problems to make them increasingly autonomous and independent even in their own homes. That is why, in the development of our digital post-it note, it is necessary to have an infrastructure of hardware and software components, which can meet all the necessary requirements.
The overall goal of the development work is to use state-of-the-art hardware components and software technologies, taking into account:
- Functionality and performance appropriate to the needs of different target groups;
- User-friendly usability and accessibility;
- Cost factors.
In this article we have described in great detail the basic ideas for a System Architecture with the most appropriate hardware and software components at this stage of development.
High Level System Architecture: what it is used for.
The High Level System Architecture provides an overview of the eSticky system architecture.
Figure 1 shows the basic relationships between the different components of the system.
Let us now see a description of each part of the system and what its function is:
- Internet connection: to establish communication between remote clients and the base station. Specifically, the base station connects via (W-)LAN or SIM card to the Internet;
- Base station: the base station is the heart of the eSticky system. It includes the web server, the connection service for interacting with the registration server, and the middleware that interacts with the displays. It also includes local storage-a database-used by both the middleware and the web server. The base station operating system handles time management, obtains the actual time from the timeservers, and includes an administrator user account for software installation and network configuration;
- Middleware: the middleware controls the displays. It uses a repository that includes all messages and their scheduling-in minutes-as well as managing the assignment to which each message is sent. It can also register new displays using a unique ID and an automated association process;
- Web server and connection service: the Web server provides the Web app that interacts with the user. It uses the database to store messages and all configuration data so that the middleware can use them for transmission to the displays. With an easy-to-use and usable user interface, the administrator user can configure the system-such as setting descriptive names for registered displays, performing user management, adjusting settings for communication-and each user can interact with the system-collect messages, schedules, and displays to which these messages are to be sent, set parameters for messages such as time periods and intervals or presentation attributes;
- Logging server: the logging server runs a Web service that logs home environments and forwards connection information to remote users. It must be highly available. Each client base station registers its external IP address and keeps it updated if it changes. The base station connection service uses a dedicated account to communicate with the registration server and provide its connection details needed by remote clients to communicate with the base station;
- Clients: relatives and companions – i.e. secondary users – can communicate with the web application via various terminal devices, such as PCs, tablets or smartphones. Communication between the base station webserver and the clients is possible either from within the home of the clients-primary users-via the local network, or from external networks-via the Internet. If already available, the previously used connection details of the home server are taken from the local Web repository of the secondary users’ Web app. In case the connection attempt is unsuccessful, the registration server will be contacted. At this point a second connection attempt will be initiated with the details returned by the registration server. In case of an unreachable registration service or unreachable base station web service, a message will inform the user of this outcome and provide further information on what to do. Special attention will be paid to ensure responsiveness, usability, ease of use, and accessibility (WCAG 2.1 AA) when implementing the client GUI;
- Passive displays: passive displays show corresponding messages. Their purpose is only to passively inform the user. The user has no opportunity to interact with a passive display. The middleware manages the sending of messages – via push – to the displays according to a predetermined schedule. Then, the displays show these messages with the determined display parameters and for the time period specified by the middleware. It is important to note that each display can only display one message at a time;
- Active displays: unlike passive displays, using active displays the user can perform simple interactions. The goal of an active display is not only to inform the user, but also to prompt the user to trigger an action. This is useful for secondary users-such as relatives and caregivers-to be able to confirm that important messages have actually been read by the primary user. Active displays, through the use of a button, give the user a choice of several responses to confirm a message. The response is then sent to the middleware where it is stored in the base station database and shown to secondary users upon request through the Web app. After confirmation by the user, the message disappears on all displays;
- Administrator user role: the administrator configures all system-relevant settings and performs user management tasks, such as providing a descriptive name for the base station, initiating the association process between displays and the base station, providing a descriptive name for each registered display, managing secondary user accounts-usernames, passwords, rights, and roles-and managing the calendar for primary users. An optional standard message can be set for each display that is displayed constantly and is interrupted only by a scheduled message;
- Secondary user role: Relatives and/or companions can manage messages through the web app. A primary user in the secondary user role can also manage messages as a personal reminder. In this case, new messages can be created, messages can be customized-display settings such as text color, font, size, style-create message schedules, select the displays on which messages are to appear, and read user confirmations;
- Role of the main user: the main user can read the messages on the displays to remember certain things. He can also confirm messages on active displays, if they have been parameterized as active messages.
eSticky: the digital post-it note to live the days independently
eSticky is a real digital post-it note that can help older people remember their daily commitments and small appointments. The aim of the project is to support people with memory problems so that they can maintain their independent living.
Together to help people get a new perspective.