# A Case Study on the Design and Implementation of a Platform for Hand Rehabilitation
## 1 Introduction  
Health systems worldwide face many emerging challenges, including population growth, population aging, and the prevalence of diseases. There is a substantial and increasing need for rehabilitation all over the world. However, specialized rehabilitation equipment is expensive. Rehabilitation institutions are confronted with the absence of rehabilitation facilities and equipment. Next, every rehabilitation department's prevalent limitation is the number of medical staff available for the rehabilitation service. Staff efficiency and service quality need to be addressed to reduce waiting times in rehabilitation centers. On the other hand, the question needs to be addressed if we are keeping up with modern times and including technology in the rehabilitation process [1, 2, 3]. The mentioned drawbacks (expensive equipment, lack of medical staff, lack of time to educate medical staff), can be reduced if computer technology takes the right place in the medical institutions. We believe modern technology (3D printing, micro-controllers, hardware customization, etc.) and advances in computer science (cloud solutions, open-source, etc.) can help to provide more efficient rehabilitation solutions [4, 5, 6, 7] or even shift part of the rehabilitation process from medical institutions to the local or even home environment. Technology, known under 3D printing and additive manufacturing [8], is the process of making a three-dimensional object from a 3D model with metal and plastic materials. There is already a wide range of 3D solutions available in medical research. Usually, they use 3D technology to reconstruct specific parts of the human body [9]. Recent advances in additive manufacturing bring tremendous promises for printing prosthetics for individual patient needs. These solutions are just coming into existence and beginning to display future potential [10]. 3D printed casts for a broken bone also speed up healing and improve the patient's life. In medical research, many challenges exist in additive manufacturing (integration with tissue, ethical standpoints, etc.). Assistive technology [11] concerns the technology which can improve the functional capabilities of persons with disabilities [4], and might make use of additive manufacturing easier than in medical research. Another technology that can help in the rehabilitation process is the consequence of the rapid development of robotics [12]. Robot-assisted rehabilitation training emerged in wide areas of rehabilitation [13], like hand functions [14], cerebral palsy [15], lower limb rehabilitation [16]. The number of rehabilitation tools in the market is growing. Some specialized devices serve particular treatments. On the other hand, there are multi-functional devices that serve a variety of purposes. Besides, tools change frequently--new hardware comes with new software, etc. As a result, the therapists need to learn new software each time they switch to new or upgrade existing rehabilitation devices. The ability to work with a unified system, thinking only on rehabilitation treatment, not dealing with specific settings of hardware or software would make work faster, simpler, and more intuitive for therapists. This paper focuses on presenting the human-computer interaction system design and its implementation RehabHand, used by therapists to prepare customized tasks for the individual patients. In RehabHand, we use the benefits of Domain-Specific Languages (DSLs) [17; 18; 19; 20]. DSLs are computer languages designed to solve tasks in a specific domain. In our case, the domain is a description of rehabilitation exercises, more specifically, hand rehabilitation exercises. One of the major benefits is end-user programming [21], meaning that domain experts write DSL programs without possessing knowledge of computer science and programming [22]. In our DSL, we used code generation technology [23] to enable the use of different hardware. On the market, you can find a wide range of robotic hands, exoskeleton hands, etc.