Background: The Virtual Rehabilitation Environment (VRE) provides patients of long term neurological conditions with a platform to review their previous physiotherapy sessions, as well as see their goals and any treatments or exercises that their clinician has set for them to practice before their next session. Objective: The initial application implemented 21 of the 27 core features using the Microsoft ASP.NET MVC stack. However, the two core, non-functional requirements were negated from the project due to lack of experience and strict time constraints. This project aimed to investigate whether the application would be more suited to a non-relational solution. Method: The application was re-written using the MEAN stack (MongoDB, ExpressJS, AngularJS, NodeJS), an open source, fully JavaScript stack and then performance tests were carried out to compare the two applications. A scalability review was also conducted to assess the benefits and drawbacks of each technology in this aspect. Results: The investigation proved that the non-relational solution was much more efficient and performed faster. However, the choice of database was only a small part of the increase in efficiency and it was an all-round better design that gave the new application its performance upper hand. Conclusion: A proposal for a new application design is given that follows the microservice architecture used by companies such as Amazon and Netflix. The application is to be split up into four parts; database, client application, server application and content delivery network. These four, independently scalable and manageable services offer the greatest flexibility for future development at the low costs necessary for a start-up.
翻译:虚拟康复环境(VRE)为长期神经疾病患者提供了一个平台,以审查他们先前的理疗疗疗程,并查看他们的目标和任何治疗或临床医生在下次会议之前为他们设定的治疗或练习。目标:初始应用使用微软 ASP.NET MVC堆,实施了27个核心特征中的21个。然而,由于缺乏经验和严格的时间限制,两个核心、不起作用的要求从项目中删除了。该项目旨在调查应用程序是否更适合非关系解决方案。方法:应用程序是用工具堆(MongoDB、ExpressJS、AgormaJS、NodeJS)重新撰写的,这是开放源,完全使用JavaScript堆,然后进行了业绩测试,以比较两个应用程序中的2个核心特征。还进行了缩放审查,以评估这方面每项技术的效益和缺陷。结果:调查证明非关系解决方案更有效率和效果更快。然而,数据库的选择只是使用工具堆(MongoDB、Express)中的4个小部分,在内部设计中提高了设计效率,随后采用了4个网络应用程序。