辅导案例-CSCI 1110-Assignment 5
1 Assignment 5: Covid Connections CSCI 1110 (Winter 2020) OVERVIEW Due Date DUE DATE: Monday, April 6th, 2020 @ 11 PM NOTE: All work is to be handed in using Mimir, our online code learning environment. You may use your own IDE for development. Key concepts Basic programming baseline (in language of your choice): • ArrayLists • Object-oriented programming Background This assignment will test your skills in creating and using ArrayLists and object-oriented programming. Review the description below before you begin the assignment. CovidConnect™ is a new monitoring tool for students at Dalhousie University. It helps Dalhousie keep track of all social contacts for students at Dal. It is intended to help us better understand connections that could exist between student groups. Students can be added and removed from CovidConnect. In order to join CovidConnect a student must have a valid Student ID number and when a student is removed from CovidConnect, they must be removed from all students' contact lists. You will need to implement two classes for this tool: CovidConnect and Student. The attributes and methods for each class are listed below (as well as a short explanation of some of the methods). You are allowed add extra methods or attributes if you find it necessary. You will implement all the lists in this program as ArrayLists. 2 GRADING Each problem on the assignment will be graded based on three criteria: Functionality “Does it work according to specifications?". This is determined in an automated fashion by running your program on a number of inputs and ensuring that the outputs match the expected outputs. The score is determined based on the number of tests that your program passes. Quality of Solution “Is it a good solution?" This considers whether the solution is correct, efficient, covers boundary conditions, does not have any obvious bugs, etc. This is determined by visual inspection of the code. Initially full marks are given to each solution and marks are deducted based on faults found in the solution. Code Clarity “Is it well written?" This considers whether the solution is properly formatted, well-documented, and follows coding style guidelines. A single code clarity score is assigned for all solutions. If your program does not compile, it is considered non-functional and of extremely poor quality, meaning you will receive 0 for the solution. Marking Scheme Problem Points Problem 1: Student class - Functionality - Quality of solution/ Code clarity 35 25 10 Problem 2: CovidConnect class - Functionality - Quality of solution/Code clarity 35 25 10 Problem 3: Making the connection - Functionality - Quality of solution/Code clarity 30 20 10 TOTAL 100 3 Hint for separating a String based on commas: There are different ways to separate a String by a token (e.g., a comma). Oneway to split a string is to use the String method split. For example, if you had the string String place = "Halifax,Nova Scotia,Canada"; then String result = place.split(","); would give you an array with three elements:  "Halifax";  "Nova Scotia"; and  "Canada".