Final research article and software development report for CSC4006: Research and Development Project.