Skip to content

hattas/medication-reminder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MedicationReminder

Data Structures Group Project

Project Title: Medication Reminder

Creators: John Hattas and Nathan Lang

Quick Links

To Do List

Main

How to edit this README

JavaFX tutorials

Good intro with lots of code examples

Easy to follow video tutorials

Project Description

The foundation of the project is a system of interactive times and reminders targeted at those, who take large amounts of medication at infrequent intervals through the day. The times are designed to interactively remind the user to do whatever the timer is set for, refusing to move along to the next timer until the user responds with an affirmative that the reminder was not only seen but completed. This is an extremely practical project for a huge portion of the population. It is different to most/all timers on the market due to its ability to question the user and make decisions based on the received input and not blindly move along to the next timer.

Original Project Conception

A teenager living with Cystic Fibrosis, has to take large amounts of medication their entire life. Daily having to do nebulizers, physical treatments, inhalers, pills, and antibiotics, some even need to eat every two hours or risk succumbing to a coma from lack of blood sugar. Keeping track of these many medications, the times they need to be taken at, and remembering if the time you took that was actually today or yesterday is - even for someone in their prime - a massive challenge, one that they struggle with every day. The elderly and those with mental disabilities struggle even more than that, and often their medication is even more important.

Anyone who has taken large amounts of medication for a long period of time is painfully aware of how ineffective normal timers and alarms are in the best of circumstances, they know even better how ineffective they are if you are distracted.

This application should track the time of day that each medication was taken at and log all of this information in a database (or file or a serialized object) that the user could access.

Logistics

Team size for the projects should be two to three at most. Follow the key dates and deliverable described below. Submit the interim reports to d2l.

Technology

Java FX/Java Swing/Java Web Application or any programming language of the team’s choice.

Key Dates and Deliverables

Market Research and Mockup Design (Nov.10th) ✅

Conduct market research of relevant products such as mobile apps or web applications that do similar things as the project. Survey the competition designs, and include the report of what is available out there and what features you can realistically implement by the end of this semester. Also, use a professional mock up generator to create sample mock-ups of your final project (see Useful Links section below).

GUI Design with some features (Nov.20th) ✅

Write basic prototype of the application that displays the GUI. Either hard code the inputs such as medication history, reminders, etc or read them from a file and display on the GUI. Take screenshots of your GUI and include them in a report and upload your source code and the report.

GUI Design with most features (Dec.4th)

Write prototype of the application that displays the GUI with most of the functionality implemented. Highlight the different data structures that you have used. They could be simple ArrayList, Queue, Stack, HashMap, etc from Java Collection Framework. . Take screenshots of your application and include them in a report and upload your source code and the report.

Prototype Presentation (Dec.6th , Dec.8th)

Include the screenshots of your application into a shared presentation at the following link. We will have presentations of your project during those two dates.

https://docs.google.com/presentation/d/1eF_kJV_wcCfhyLKsLHeJOqGoCtslvSe_xpC0eRoOmKU/edit?usp=sharing

Final Report (Dec.13th 11:59 PM)

Your final report should include the application description, motivation, competing market research, and your prototype description. More details to be announced.

More Links:

https://moqups.com/ ( mock-up designer tool)

https://balsamiq.com/ (mock-up designer tool – free 30 day trial)

https://docs.oracle.com/javase/8/javase-clienttechnologies.htm (JavaFX Tutorial)

https://docs.oracle.com/javase/tutorial/uiswing/index.html (Java Swing Tutorial --older way of creating GUI)

https://help.github.com/articles/basic-writing-and-formatting-syntax/ (how to edit this README)

Git Tips

  • use git clone https://gitlab.mscs.mu.edu/rthomas/stocks.git to download repository

  • once you have made changes to files, use git add <filename> to add files to be committed, i.e. git add executor.py MovingAverageModel.py

  • use git commit -m "commit message blah blah" to commit the files you have added, including an appropriate commit message explaining what you have done

  • use git pushto sync your commits with the remote version of the repository

  • use git pull to sync your local repository with the current version of the remote

  • use git reset --hard to discard local changes so you can pull from github without conflicts