Assignment 3 of SOFTENG206