Assignment 1, CS3213 Software Systems Design