Skip to main content

Independent Task: Submit Project

There are a few tasks that you must complete to wrap up Guided Project 2 for grading.

Callout Box Icon

Learning Outcomes

  • Run static analysis tools and fix notifications

Run WolfSchedulerGUI and ensure that you pass the extended suite of system tests for the WolfScheduler project.

The Black Box Test Plan is stored on Google Drive. As part of running your tests, you must report the actual results of execution. Download the document as a Word document by select File > Download > Microsoft Word in Google Drive. Create a new folder in your WolfScheduler project called project_docs by right clicking on WolfScheduler and selecting New > Folder. Save your black box test plan as a Word document (*.doc or *.docx) in the project_docs folder. As you run each test, report the results of execution in the black box test plan in the actual results column. DO NOT record, “Passed” or “Failed.” Instead, describe the results, similar to the provided Expected Results.

Make sure all your black box tests pass! However, if you run out of time, report the actual results of execution - EVEN IF THEY ARE FAILING! You’ll earn some points on the system test portion of the grading rubric for reporting actual, failing results. –>

Reminder: Running Static Analysis Tools

Run Static Analysis Tools

Run SpotBugs, PMD, and CheckStyle on your code (if you haven’t already) and remove any notifications.

Reminder: Generating Javadoc

Generate Javadoc

If you haven’t been commenting your code all along, go back and comment your code with JavaDoc. All classes, methods, and fields should be commented. If you have been commenting as you have implemented the Activity hierarchy, go back and double check that the comments are up to date for the implemented functionality.

Make sure you include comments for overridden method that describe why the override was important.

Generate JavaDoc for WolfScheduler. You may want to delete the existing doc/ folder before generating a new one to ensure that all Javadoc is updated. Double check that everything was generated!

Reminder: Jenkins Feedback

Continuous Integration and Automated Grading

As with Guided Project 1, and all programming assignments for CSC 216/217, we are using Jenkins as an automated grading and feedback system. Check your Jenkins results and use them to estimate your grade against the Guided Project 2 rubric.

Final Tasks

Before you complete your final submission to GitHub, you should ensure the following:

  • You have met the requirements and design for the WolfScheduler project, except for the conflicting activities functionality.
  • You have a green ball on Jenkins. (No test failures and no static analysis notifications.)
  • All JUnit tests pass with a green bar (0 errors). There should be no modifications to the teaching staff tests.
  • All System Tests pass and actual results are reported.
  • There are no SpotBugs notifications.
  • There are no PMD notifications.
  • There are no CheckStyle notifications.
  • All code is commented with meaningful comments.
  • JavaDoc webpages are generated with the latest comments.
  • AI usage documented in README.md (see AI Usage Documentation below).
  • That you meet all rubric items for the assignment.

Make sure that all code and other assignment deliverables are pushed to GitHub by the assignment deadline. There are deductions for any late work up to 48 hours.

Callout Box Icon

Required Deliverables for GP2

Your GP2 submission should include the following in your GitHub repository:

  • All source code for the WolfScheduler project (including the new Activity and Event classes)
  • All test files (CourseTest.java, ExtendedCourseTest.java, EventTest.java, WolfSchedulerTest.java, etc.)
  • Generated Javadoc in the doc/ folder
  • System Test Plan (.docx file) in project_docs/ folder with actual results reported
  • Updated README.md with AI usage documentation

Note: You do not need to remove any GP1 artifacts (like the GP1 System Test Plan) from your repository. The graders will look for the GP2-specific deliverables.

AI Usage Documentation

As stated in the syllabus, the use of AI assistants (e.g., ChatGPT, Claude, Copilot) is permitted for programming assignments. All AI assistance MUST be documented in your README.md file. Include for each use:

  • The AI tool used
  • The prompt given
  • A summary of the AI response
  • How you verified the AI response
  • How you used the AI response in your solution

Undocumented AI usage is a violation of academic integrity. Include an AI documentation section in your README.md even if you did not use AI tools (state that no AI tools were used).

Grading Rubric

Your Wolf Scheduler Guided Project 2 will be evaluated on the following items:

Overall Rubric

Phase Grade Item Points Details
Teaching Staff JUnit Tests 40 Pass all of the provided JUnit tests.
Teaching Staff System Tests 45 There are 15 system-level black box tests. All tests are worth 3 points for a total of 45 points. For each test, 2 points are for passing the test and 1 point is for reporting the actual results of running the test on YOUR program - even if the test if failing!
Javadoc Contents 5 See the Javadoc rubric, below. The rubric will be applied per class and will be averaged by the number of classes.
Javadoc Generation 5 Javadoc tool was used to generate the HTML version of the API, which matches the current version of the in-code Javadoc.
Style 5 Any PMD, CheckStyle, or SpotBugs Scary or Scariest notifications will result in a one point deduction, up to the available points.
  Prerequisite Review 10 Completion of the activity will earn the points.
  Total Points 110  

Deductions

Grade Item Points Details
Misnamed file or incorrect project structure -5 Incorrect names of files or incorrect project structure. This can include problems when importing the project to Eclipse for acceptance testing, incorrect location of the system test file, etc.
Late varies You will lose 1 point for every 2 hours your projects is late, up to 24 points in 48 hours.

JavaDoc Rubric

Item Strong - 3 points Adequate - 2 points Inadequate - 1 point
Reference: Staging and Pushing to GitHub

Check Your Progress

Complete the following tasks before pushing your work to GitHub.

  • Make sure that all fields, methods, and constructors are commented.
  • Resolve all static analysis notifications.
  • Fix test failures.
  • Commit and push your code changes with a meaningful commit message. Label your commit with [Test], [Static Analysis], [Fix], [GUI], [Documentation] as appropriate for the change and for future you!
  • Check Jenkins results for a green ball! Fix any Jenkins issues.