Programming Assignments for EE422C: Software Design and Implementation II