BDigital Delivers E-Health and Smart Home Platform Using the WSO2 Carbon Platform
BDigital Used Pre-Integrated WSO2 Middleware Products to Mediate Services Across the Cloud and Internet of Things, as Well as Manage APIs, Applications, and Identity
Senior citizens—many in fragile health and requiring assistance—often have limited resources for managing their health, participating in society, and ensuring their security. The Ambient Assisted Living (AAL) Joint Programme is committed to addressing these challenges through Active Ageing initiatives using information and communications technologies (ICT) that enhance the quality of life of the elderly.
One of the organizations supporting AAL in its efforts is the non-profit Barcelona Digital Technology Center (BDigital) with research and development and technology transfer services in the fields of healthcare, security, mobility, energy, and food and environment. BDigital provides smart solutions with high added value for therapy management, disease prevention and healthy habit promotion through its three lines of specialization: Integrated Continuous Care, Personalized Computational Medicine, and Active Independent Living (AIL).
Recently, BDigital developed eKauri, a non-invasive e-health and smart home platform, that empowers seniors to gain autonomy, participate in modern society, and achieve independence through ICTbased solutions. To deliver its services, the cloud-enabled eKauri takes advantage of credit-card sized Raspberry Pi computers and Z-Wave wireless home automation devices. It also relies on four products from the 100% open source WSO2 Carbon enterprise middleware platform: WSO2 API Manager, WSO2 Identity Server, WSO2 Enterprise Service Bus (WSO2 ESB) and WSO2 Application Server.
Needed: A Full Solution for Senior Services
In Spain, where BDigital is based, the market for senior living is underdeveloped and faces limited resources for the elderly. Through eKauri, the organization is helping to address this issue by helping to facilitate active aging in ambient assisted living scenarios using normal communications technologies.
As a reference for its own eKauri platform, BDigital turned to the SAAPHO European research and development (R&D) project aimed at promoting active aging and improving the quality of life of the elderly. Seeking to take SAAPHO to the next level, BDigital’s platform has focused on improving senior:
- Participation: through video call services, such as WebRTC, seniors can communicate with relatives, friends and professionals easily.
- Healthcare: monitoring senior medical routines to support and provide services, which are managed by third-party professionals who use the platform’s APIs.
- Smart Home Security: using ambient sensors and parameters, ambient data is collected for emergency detection and action to ensure safety and protection.
Three years of development led BDigital to produce a pilot that would serve as a foundation for its eKauri solution. Although the pilot was a success, the company knew it would need to adopt technology solutions that could handle the greater scale required for a full production solution.
“The main objective of our pilot project was to make a proof of concept that would work for a limited number of users and roles,” recalled Joan Protasio, AIL software engineer of the BDigital e-health R&D group. “But for the final product, we needed a scalable solution that would be able to live on for years and serve the different roles of users.”
Weighing Options for Scalability
To support the production version of its eKauri platform, the BDigital team explored open source offerings from Apache, Oracle, and WSO2, evaluating each for their scalability and ability to support growth of the system.
After running a few concept tests in-house, BDigital knew that WSO2’s Carbon middleware platform was the right fit for its eKauri platform. Not only was it fully open source and scalable, but WSO2 offered an OSGi-compliant architecture and decoupled schema, which would provide greater development and deployment flexibility. Similarly, because all WSO2 middleware products are built on the same Carbon core code, BDigital’s programmers found them easier to understand.
At the same time, WSO2’s platform provided support for a broad range of industry standards. Together with WSO2’s large user community and frequent product updates, this gave the BDigital team the confidence that they were working with a leading-edge solution.
“Although each offering we evaluated could deliver on scale, we wanted a solution that could help us go that extra mile of innovation,” Mr. Protasio noted. “WSO2 offered more solutions and modular products that were easier to work with, which made it the clear choice.”
A Detailed Design Process
Before designing the schema of its eKauri solution, BDigital carefully studied WSO2’s framework and consulted WSO2 white papers to ensure best practices.
“This was a key moment for us, so we dedicated many efforts to researching and developing the right schema for our product,” Mr. Protasio noted.
Based on a RESTful architecture, BDigital’s decoupled schema follows an API façade that works with WSO2 API Manager, WSO2 Identity Server, WSO2 ESB and WSO2 Application Server. The company also uses Apache ActiveMQ for optimized reliability using message persistence. Additionally, BDigital works with Z-Wave sensors—deploying four or five sensors per smart home—and a Raspberry Pi computer to collect user data. The company follows the S35 protocol for Internet of Things (IoT) devices.
Because IoT devices have limited computational capabilities, data is transmitted from the Z-Wave sensors and Raspberry Pi to eKauri applications and supporting middleware, which all run in the cloud as virtual machine images.
“Our product version addresses both professionals and patients—offering a wide variety of services and possibilities for seniors, including smart home security, healthcare and user participation,” Mr. Protasio explained. “WSO2’s architecture allows us to manage and maintain all of this unique user intelligence and calculations in the cloud.”
Rapid Implementation with WSO2 Middleware
A distinct advantage of the WSO2 middleware products is that they are part of the fully componentized WSO2 Carbon enterprise middleware platform. As a result, they are pre-integrated, share the same core functionality, and are interoperable and highly configurable.
“Since all WSO2 products extend from its Carbon base, it created a seamless environment that allowed for our programmers to rapidly gain an understanding of the technology as well as accelerate our integration and product development,” Mr. Protasio observed. “As a result, we were able to complete the first minimally viable version of our product three months ahead of schedule.”
The WSO2 support team also played a key role in facilitating BDigital’s development, Mr. Protasio observed: “When you are developing a project, knowledgeable professionals are a valuable resource. WSO2 support provided great service and was a key player in accelerating our project.”
Delivering Innovative Services
Today BDigital’s eKauri platform is composed of two main modules: the patient application and a care center module that has different interfaces for caregivers and managers.
The patient application provides a range of services activated by the user, including a home media center, tools for taking measurements and reviewing the last results, video calls, calendar, and tool for managing contacts. Additionally, sensors monitor TV viewing, food and water consumption, hours asleep, physical activity, and temperature. Sensors also monitor the environment and trigger an alert if there is, for example, a fire. If there is an issue with a patient or the patient’s home, the sensor can trigger an alert, not only to the appropriate caregiver, but to external care centers and a designated family member.
“All of the calculations for this Ambient Intelligence (AmI) are done in the cloud,” Mr. Protasio notes.
The care center module gives caregivers a dashboard for managing patients, a list of patients, a profile of each patient, and a tool for managing patient alarms. Meanwhile the module provides managers with the results of patient monitoring, reports that track the progress in a patient’s monitoring over time, notes about caregivers, and questions for the patient.
“By providing insights into senior users, our eKauri platform serves as an extension of security and care and offers critical communications to professional healthcare workers, as well as other caregivers, such as family members or neighbors.”
Optimizing Scalability, Security and Performance with WSO2
Behind the scenes, four WSO2 products drive services across the eKauri platform. Among the most widely used is WSO2 API Manager, which supports a large amount of e-health RESTful APIs managed by BDigital’s solution.
“WSO2 API Manager is a state-of-the-art tool that helps us manage the authentication of users in accessing services, such as the video conferencing, and validates the access of sensors in order to let them provide updates to our platform. It also facilitates the use of APIs by our developers,” Mr. Protasio explains. “Without WSO2 API Manager, this would have been very difficult to manage. Additionally, with the API Façade pattern we implemented with WSO2 API Manager, we are set to address any expansion, scalability and deployment demands.”
BDigital relies on WSO2 ESB for protocol mediation, as well as helping to ensure reliability and recovery through message persistence. Working with Apache ActiveMQ, if a network or server fails, WSO2 ESB will persist the message and present it when the system is back up and running.
“WSO2 ESB is the most important product for us because it is responsible for messages between all of the APIs. It can easily adapt messages and has helped us learn more about the products,” Mr. Protasio notes. “We are able to improve one service and not affect the rest, since the WSO2 ESB mediator routes the message to the other services.”
"“Since all WSO2 products extend from its Carbon base, it created a seamless environment that allowed for our programmers to rapidly gain an understanding of the technology as well as accelerate our integration and product development. As a result, we were able to complete the first minimally viable version of our product three months ahead of schedule” "
AIL Software Engineer
BDigital E-Health R&D Group
Working with the WSO2 Identity Server for identity management helps BDigital separate data that the company needs based on user access level and attributes. Combined with WSO2 ESB, WSO2 Identity Server helps manage authorization policies by allowing BDigital to detect whether users can perform an certain action or not.
Figure 01: The eKauri e-health and smart home platform manages API consumption through an API Façade based on API Manager. WSO2 ESB manages mediation and supports WSO2 API Manager and WSO2 Identity Server on user authentication. WSO2 Application Server manages the platform’s Web applications and services.
Mr. Protasio explains, “Our eKauri solution users include patients, caretakers, installers and consumers, who are all working with sensitive information. It is critical that we define these specific user roles and enforce authorization policies across operations.”
Smart Growth from Smart Homes
BDigital’s charter is to develop technology that commercial partners can then deliver as solutions to the market. With that in mind, the organization had planned to have partners deliver the first minimal product version of its eKauri smart home and e-health platform in January 2015. However, the shorter development time enabled by WSO2 has allowed BDigital to move that first launch three months earlier to October 2014.
The initial eKauri launch will feature the installation of the solution into 100 smart homes in order to gain experience, as well as create a fuller schema with failover and load balancing to increase scalability.
“We already have a built-in market and clients that want to pay for the product,” Mr. Protasio says. “The experience we gain from this minimal product version rollout will help us strengthen our platform to support the many homes of senior citizens, who could benefit from the services it delivers.”
Looking ahead, Mr. Protasio adds, “Already, other teams in our company are designing more solutions with the WSO2-based framework. Now that we have been able to implement a very state-of-the-art platform with WSO2’s software, we know it works, and we’re going to exploit that as we continue to innovate.”