This page is currently being built. Please check back soon.

Work through the user stories in order. Each story states the goal and acceptance criteria; its nested tasks retain the detailed implementation and verification steps.
Check the result against this instruction: Copy your 2.2 Grade Book end code and rename the folder and solution to 2.3
This focused design shows the members or flow relevant to this feature. Keep unchanged members from your preceding checkpoint; follow the tasks below for the order of intermediate edits.
| Course and index | Name | Type | Points | Difficulty |
|---|---|---|---|---|
| Both: 0 | Plan | Start Here | 5.0 | 2.1 |
| Blackboard: 1 | HTML Exercises | Midterm | 100.0 | 12.7 |
| Blackboard: 2 | Website 1 | Final | 100.0 | 64.8 |
| Canvas: 1 | Short Essay | Midterm | 100.0 | 31.3 |
| Canvas: 2 | Term Paper | Final | 100.0 | 66.2 |
Instantiate the list of Assignments at the field definition using field initializer syntax.
Check the result against this instruction: Modify the class structure using this story’s design reference.
Check the result against this instruction: Modify the Course.GetAssignmentByType method using this story’s design reference.
Use a local variable of type Assignment to hold a reference to each newly instantiated Assignment object. Use that local variable to configure the object and add it to the list.
Check the result against this instruction: In MainWindow in the newBlackboardButton_Click add 3 assignments to it using the list values in this story’s design reference.
Use a local variable of type Assignment to hold a reference to each newly instantiated Assignment object. Use that local variable to configure the object and add it to the list.
Check the result against this instruction: In MainWindow in the newCanvasButton_Click add 3 assignments to it using the list values in this story’s design reference.
Ensure that your solution builds without warnings or errors. All references to the Midterm and Final fields must be removed. This should have been done during the previous steps.
Check the result against this instruction: In the Course class, remove the field definitions for the Midterm and Final fields.






This focused design shows the members or flow relevant to this feature. Keep unchanged members from your preceding checkpoint; follow the tasks below for the order of intermediate edits.
| Teacher | Index | Assistant | KnowledgeLevel | Salary |
|---|---|---|---|---|
| Alan | 0 | Donald | 65.3 | 39000.00m |
| Alan | 1 | Sheldon | 75.3 | 40000.00m |
| Jeff | 0 | Linus | 75.3 | 40000.00m |
| Jeff | 1 | Samuel | 85.3 | 35000.00m |
Class diagram changes: Instructor new field Assistants, new method GetAssistantByKnowledgeLevel. Course GetTutor new param double knowledgeLevel.
Check the result against this instruction: Modify the class structure using this story’s design reference.
Check the result against this instruction: Define the logic of the GetAssistantByKnowledgeLevel method using this story’s design reference.
Check the result against this instruction: Modify the logic of the GetTutor method using this story’s design reference.
Check the result against this instruction: Modify the FindHelp method to pass in a knowledge level when it calls the GetTutor method.
Check the result against this instruction: In MainWindow in the newBlackboardButton_Click add 2 assistants to the Teacher's list of Assistants using the list values in this story’s design reference.
Check the result against this instruction: In MainWindow in the newCanvasButton_Click add 2 assistants to the Teacher's list of Assistants to it using the list values in this story’s design reference.
Check the result against this instruction: Now that the Course class, in the FindHelp and GetTutor methods, has the logic to find a tutor, we need to ensure this logic has been removed from the Instructor's TutorStudent method so it can just focus on tutoring. Ensure it matches the Activity Diagram below.
Ensure that 'this' is the instance of Sheldon.

Check the result against this instruction: Ensure that all code is StyleCop compliant
Check the result against this instruction: Zip the solution and submit to the Feedback System.
Check the result against this instruction: Submit the Feedback System URL to the correct assignment in Canvas.
Return to each user story and confirm that you can demonstrate its acceptance criteria. Use the task checkboxes to track completion; a checked box is not a substitute for testing or inspecting the required evidence.
Choose from a collection of assignments Find a qualified assistant from a collectionRemove temporary lines used only to demonstrate compile-time errors. Build without errors or warnings, check StyleCop compliance, and rerun the required scenario paths.
Use the submission or attendance instructions in this page. For a Feedback System submission, upload the requested ZIP, review and resolve the feedback, and submit the resulting URL to the matching Canvas activity. For a Canvas quiz, enter only the requested answers; for an oral final, complete the scheduling and attendance steps.