I. Introduction
The service-oriented architecture (SOA) is a paradigm of architectures that allows to design and develop distributed computing systems, in such a way that makes it easy to create scalable and weakly coupled systems 1posing new challenges to fulfill growing requirements for reusability, interoperability, flexibility and reconfigurability. The adoption of service-oriented architectures (SOAs. These features enable the modularity and availability of a certain functionality as a service; that is, a computational system is formed by the integration of applications and services through standardized protocols 1 posing new challenges to fulfill growing requirements for reusability, interoperability, flexibility and reconfigurability. The adoption of service-oriented architectures (SOAs. A web service (WS) is an example of this type of architecture 2, which is based on a set of norms that include Simple Object Access Protocol (SOAP), Web Services Description Language (WSDL), Universal Description, and Discovery and Integration (UDDI), to support the autonomy and the interoperability between applications developed in different programming languages and running on different platforms or operating systems 3 clinical environments, and the electronic health record. Standards are emerging to support clinical information collection, exchange and management and to overcome information fragmentation and actors delocalization. Heterogeneity of information sources at patients' homes calls for open solutions to collect and accommodate multidomain information, including environmental data. Based on the experience gained in a European Research Program, this paper presents an integrated and open approach for clinical data interchange in cardiac telemonitoring applications. This interchange is supported by the use of standards following the indications provided by the national authorities of the countries involved. Taking into account the requirements provided by the medical staff involved in the project, the authors designed and implemented a prototypal middleware, based on a service-oriented architecture approach, to give a structured and robust tool to congestive heart failure patients for their personalized telemonitoring. The middleware is represented by a health record management service, whose interface is compliant to the healthcare services specification project Retrieve, Locate and Update Service standard (Level 0. These applications offer autonomy and independence from the operating system where they are executed. In this context, this approach provides a structural flexibility that makes it possible to configure new functionalities in the system, integrating and coordinating the delivery of new services 1posing new challenges to fulfill growing requirements for reusability, interoperability, flexibility and reconfigurability. The adoption of service-oriented architectures (SOAs. For example, different projects based on SOA have been submitted in applications of tele-operation of physical devices, such as appliances and unmanned vehicles, among others 4, where the term tele-operation creates an integrated environment, which defines a series of commands contained in a communication channel that allows the action of the physical device regardless of its geographic location 4.
One of the challenges for SOA in this type of applications focuses on the specification of the choreography and/or orchestration of the services that integrate the tele-operation system, which determine, for instance, what the messages are and how they will produce the interactions between the services involved in the development of the tele-operated implementation 5,6. Focusing on tele-operation oriented toward human rehabilitation have resulted in several advances in communication technology, such as telemedicine and tele-rehabilitation. Telemedicine is defined as the exchange of medical information, from a point/site to another by means of electronic communications, with the goal of improving the health status of an individual 7QoS (Quality of Service. This term is related to tele-health, which incorporates the concepts of health care management, education, and medical computing; tele-health provides technological solutions addressed to implement health-oriented applications (e.g., integrated information health systems at the hospital or organizational levels, electronic clinical history, etc.) 7QoS (Quality of Service. On the other hand, tele-rehabilitation is based on technologies for intervening and remotely supporting persons with disabilities, which implies that the patient can be taken care of in a location different to the health center, for example, their own residence.
In this context, this article develops the implementation of a SOA for a tele-operated rehabilitation system by means of web services, which enables the integration and orchestration of both hardware and software elements that make up this application. In this article, section 2 describes the machine used for the tele-operated rehabilitation system; section 3 presents the developed services that constitute the SOA; section 4 describes the integration of services and their interaction within the SOA; section 5 reports the results of the integration of services; and finally, section 6 presents the conclusions.
II. Technical assistance
The technical assistance used for physical rehabilitation has control subsystems, security and power based on the configuration of a modular architecture, where each one of the electronic cards that make up the technical assistance have a specific function, which allow scalability and reuse of the components of the system (Fig. 1).
Fig. 2 depicts the elements that constitute the technical assistance. The technical assistance presents several innovations with respect to 8-11; for example, the ability to run two types of therapies: passive and active, which are required to perform a cycle of rehabilitation of a joint 12. In the passive therapy, the motor-reducer induces movement in the patient's joint, whereas in the active therapy, the motor-reducer is uncoupled by means of an electronic clutch, and a controllable resistance is induced by means of a magnetic brake, allowing the patient to strengthen the muscles and recover the force in the affected member.
III. Web services
This section presents in a methodological way each one of the services that were developed and considered necessary to construct the architecture oriented toward an application in tele-medicine, under the modality of tele-operation in physical rehabilitation. The services that were developed are the following:
User authentication. There are two direct users: the specialist and the auxiliary. This authentication is carried out with respect to the information stored in the database. The function of this service is to look for and authenticate users according to their role.
Patient search. This service consists in searching patients in the database assigned for this purpose and extracting three types of information: 1) the patient's personal information, 2) the information associated with an order for a rehabilitation clinic, and 3) the information related to the rehabilitation therapy history.
Clinical history update. In the tele-medicine processes, it is very important the management of the information because it includes the patient's evolutionary process, the performed treatments, and the data on the patient's recovery. In the process of physical rehabilitation, it is necessary to know the behavior of the patient during the therapies, in order to prevent or reduce to the minimum the functional and physical consequences. The implementation of this service allows collecting both qualitative and quantitative information that facilitate tracing the history and evolution of the therapies carried out by each patient in rehabilitation. This service allows updating each session's information for every patient; the specialist can search this information, and can compare the protocol assigned at the beginning of the session with the exercises achieved by the patient at the end of the therapy session.
Communication service. This service is essential because it grants access to the technical assistance of the tele-operated rehabilitation system, so it makes possible to carry out tasks or operations defined by the technical assistance in a physical rehabilitation therapy. This service maintains a permanent communication between the system and the technical assistance, logging in any type of event that may put at risk the physical integrity of the patient.
IV. Integration of Web Services
The objective of the SOA is to perform physical human knee rehabilitation by means of tele-operation of technical assistance through the internet. The goal is to integrate the four web services previously described, which interact with two web applications with different privileges, each depending on the type of user (specialist or auxiliary). This application starts with the authentication of the auxiliary, who should enter the login information and password; independently, the specialist may start the authentication process in an asynchronous way; when the two users are correctly authenticated by the system through the authentication service, a communication channel between them is created using the communication service. It should be noted that since the creation of such channel, the communication will be synchronous. Subsequently, the auxiliary enters the identification number of the patient, and the patient search service extracts the information associated with such number; the specialist then visualizes this information and generates a rehabilitation protocol, which is stored in the patient's medical history by means of the clinical history update service; with this information the tele-rehabilitation session starts, during which the technical assistance continuously monitors and stores the information on the patient's evolution in their medical history. Fig. 3 depicts the diagram of integration of the four web services comprising the SOA, including their entries, processes and outputs.
V. Results
To perform the functional tests, a functional prototype of the architecture was implemented, which was composed of the specialist's PC, the auxiliary's PC, and the technical assistance (Fig. 4). The functional testing of the system evaluated and validated the behavior of the information flow between the specialist, the auxiliary and the database, based on the updates of the interfaces and the information stored in the database.
Here, we present the functional testing of the system behaving in an ideal way, that is, without submitting any novelties when providing the service. This operation starts with the users' authentication, where the specialist and auxiliary are registered in the graphical interface by entering the login information and password (Fig. 5). The authentication service performs the search in the hospital database, and according to the data supplied by the person, the user is authenticated either as specialist or auxiliary.
After the users are authenticated, the auxiliary enters the patient's identification number, so the patient search service can look for and extract the information related to personal data, order of therapy, and medical history associated with the rehabilitation therapy. This information is visualized in the user's interface for both the auxiliary and the specialist (Fig. 6).
Fig. 7 shows the configuration parameters defined by the specialist that are loaded in the technical assistance for implementing the tele-operated therapy session.
The data achieved by the technical assistance during the therapy is visualized both in the specialist's and the auxiliary's interfaces (Fig. 8). The purpose is to see how the therapy session develops and whether the settings are correct, in comparison with parameters that were programmed in the technical assistance.
The technical assistance sends permanent information to update the database and, in this way, the treatment of each patient in rehabilitation therapy can be traced. Once the technical assistance executes the entire therapy scheduled by the specialist, it sends a therapy completion message to the specialist's and the auxiliary's interfaces.
VI. Conclusions
The use of new technologies, such as the internet, for medical applications provides accessibility advantages, so the patients can easily access the medical service and the specialists can access the information on their patients, thus reducing the accessibility barriers.
The SOA approach for tele-operating technical assistance ensures that the application can be integrated regardless to the hardware and/or software; it also promotes the flexibility and scalability of the system, which allow users to tele-operate any type of machine without changing the architecture, just modifying some modules. On the other hand, this system can be expanded because in the future more services could be added to the architecture, in such a way that the initial architecture can be reused either to develop a different application, or to complement it.
Proposing an architecture allows the system to be applied to different musculoskeletal lesions in different joints, because this architecture characterized each articulation according to the degrees of freedom and the maximum and minimum angles defined by the anatomy and biomechanics of the articulation. In addition, this architecture can be implemented in other fields of human health, such as remote diagnosis of patients, management of patient's information, and the possible coordination of this system with the administrative systems of the Colombian health centers.
The architecture proposed for the tele-operated rehabilitation system was validated with real evidence, since the web services were designed and developed in accordance to the architecture defined for the provision of tele-operated rehabilitation services via internet; in addition, the flow of information that runs in the system was managed with a real database of a health center in the city of Cali.