A course project for SE 4453