For the LU Software Engineering course we developed a medical journal application targeted towards elderly users. In this application, the patient (user) is asked a series of questions (read aloud with TTS technology) and asked to answer by text or speech (interpreted with TTS). For each list of questions the answers are interpreted and categorised and an analysis through Natural Language Processing (specifically Spark) is performed. The answers and analysis is sent to the patient's GP, who has insight in the given answer, interpreted answer and the NLP analysis made. Based on the analysis, the GP has greater insight into answers given by patients and could be assisted in determining a treatment plan. As an added benefit, the user is asked questions on a more regular basis than is possible with physical doctor visits. The objective of this is to make patients who are unable to visit the doctor feel heard, and help with feelings of loneliness and get a greater overall insight in day-to-day fluctuations in the course of illness or disability than patient anamnesis could provide. Finally, the application is to have emergency functionality, responding to signals as interpreted by the NLP, but this is not yet implemented.The specific goals for this project were to make an application which was fun and easy to use despite the limitations of screen size and the technical skills of the targeted audience. To do this we had to take many factors into account when it came to design: the interface needs to be clear and the amount of text fields is to be limited or optional. The application also responds through TTS to make the user feel like they are conversing with an actual person instead of simply using an application.
Our customer was Marco Spruit. He is a professor at LIACS and was a great person to work with. He provided a lot of enthusiasm and was very involved in the process. The collaboration was initiated in the first meeting which was used for the elicitation of requirements. After this the plan was to meet every two weeks, this would be to ensure the correct items would be placed in the sprint backlog. There was a period around week 7 where the contact was less than it should have been. This was resolved by increasing the interval of contact moment to weekly meetings. These meetings were very productive and really gave Marco a chance to voice his opinion and suggest changes. The frequent contact with Marco resulted in a final product that was close to his expectations and thereby avoiding disappointment.
Our team consists of six team members. Three Computer Science students and three Economy & Computer Science students. Because of this we are able to combine a lot of different skillsets. Allowing us to assist one another in our knowledge and skill gaps. One of our teammates had a background in web development, which allowed us to speed up some parts of the project. Even though all of us were new to Flutter and CI/CD, we were all eager to learn more about these technologies as they are also interesting from a business perspective.