Functional mobile apps for the elderly
Nguyen, Dac Khue
Date of Issue2016
School of Computer Engineering
The Smart Butler is a native Android application that provides the helpful information, interact and communicate with the elderly to maintain a healthy and engaging life style. The interactive module in the Smart Butler is governed by a rule engine, which receives the current context as the input from the environment and output the most reasonable rule that the Smart Butler would deliver to the elderly. The current rule engine of the Smart Butler adopts a simple mechanism “If this, then that”, which is simple and easy to implement, but it has some limitations. Firstly, the rule engine does not have a well-defined way to handle some complex situation where multiple rules could be triggered at the same time. The current rule engine cannot differentiate which rule is more urgent than others. Secondly, it has not handled some scenarios that involve user’s interaction such that depending on the user response, different actions will be delivered accordingly. Thirdly, the rule engine is not flexible, extensible and learnable. To address these limitations, this project proposed an improved version of the rule engine which utilizes the Fusion Adaptive Resonance Theory (Fusion ART) . The project also proposed a more abstract and generalized rule format to capture the rules into Extensible Markup Language (XML). New system architecture is introduced to bridge the gap between theoretical models and the implementation of the Fusion ART based rule engine. With a higher level of abstraction, the reusability of the rule engine component is also increased. Fusion ART based rule engine also proposed a new way of utilizing the Fusion ART, which uses a priority channel as an independent channel, together with other common channels including context, action. An instance of the Fusion ART based rule engine is implemented using Java. Unit test is being used to verify the functional behaviour of the rule engine by presenting the exact condition of each rule to the rule engine and compare expected and actual output. The result of the Unit test is positive; the rule engine passes all the test cases. Positive feedback is also received when testing the rule engine using an event simulator, which create a random scenario and present the current context data to the rule engine to retrieve the matching rule.
Final Year Project (FYP)
Nanyang Technological University