diff --git a/docs.json b/docs.json index a30ace3..9a06dcf 100644 --- a/docs.json +++ b/docs.json @@ -55,7 +55,8 @@ "staff/assignments/handgrading", "staff/assignments/autograding", "staff/assignments/rubrics", - "staff/assignments/testing" + "staff/assignments/testing", + "staff/assignments/dashboards" ] }, { diff --git a/staff/assignments/autograding.mdx b/staff/assignments/autograding.mdx index dde886a..2ea38c7 100644 --- a/staff/assignments/autograding.mdx +++ b/staff/assignments/autograding.mdx @@ -16,6 +16,19 @@ The autograder system uses an "overlay grader" architecture that allows flexible *Detailed documentation coming soon.* +## Rerunning Autograders + +Instructors can rerun the autograder on student submissions when needed. The enhanced rerun feature allows you to: + +- **Reuse the same submission**: Rerun the autograder on the existing submission without creating a new one +- **Select grader version**: Choose which version of the grader to use for the rerun, allowing you to test grader updates or revert to previous versions +- **Batch operations**: Rerun autograders on multiple submissions at once + +This is useful when: +- You've fixed a bug in the autograder +- You want to apply updated test cases to existing submissions +- You need to verify grading consistency across different grader versions + ## Quickstart: Java and Python Build system integration guides for common programming languages. diff --git a/staff/assignments/dashboards.mdx b/staff/assignments/dashboards.mdx new file mode 100644 index 0000000..6f7bdac --- /dev/null +++ b/staff/assignments/dashboards.mdx @@ -0,0 +1,46 @@ +--- +title: "Assignment Dashboards" +description: "Monitor assignment security, test insights, and grading progress with comprehensive dashboards" +icon: "chart-line" +--- + +# Assignment Dashboards + +Pawtograder provides several dashboards to help instructors monitor and analyze assignment data. + +## Assignment Security Dashboard + +The Assignment Security Dashboard helps instructors identify potential academic integrity issues by tracking: + +- **Submission patterns**: Unusual submission timing or frequency +- **Code similarity**: Potential collaboration or copying between students +- **Repository activity**: Suspicious commit patterns or repository access +- **Anomaly detection**: Statistical outliers in submission behavior + +This dashboard provides early warning signs that may warrant further investigation, helping maintain academic integrity while respecting student privacy. + +## Test Insights Dashboard + +The Test Insights Dashboard provides detailed analytics on student performance across test cases: + +- **Test pass rates**: Which test cases students struggle with most +- **Performance trends**: How student performance changes over time +- **Common failures**: Patterns in test failures that indicate conceptual misunderstandings +- **Individual vs. class performance**: Compare individual student progress against class averages + +Use these insights to: +- Identify topics that need additional instruction +- Adjust assignment difficulty +- Provide targeted help to struggling students +- Recognize areas where students excel + +## Assignment Dashboard + +The Assignment Dashboard provides a high-level overview of assignment status: + +- **Submission statistics**: How many students have submitted +- **Grading progress**: Completion status of grading tasks +- **Due date tracking**: Upcoming deadlines and extensions +- **Score distribution**: Grade distribution across the class + +This centralized view helps instructors stay on top of assignment logistics and identify issues that need attention. diff --git a/staff/assignments/grading-assignments.mdx b/staff/assignments/grading-assignments.mdx index d667820..4c9b69f 100644 --- a/staff/assignments/grading-assignments.mdx +++ b/staff/assignments/grading-assignments.mdx @@ -37,3 +37,14 @@ You can choose to reuse existing grading assignments (e.g. if you want to assign Lastly, you can choose to enforce that graders are **not** assigned to the same submission as they were on a prior assignment or rubric. This feature is useful to assign meta-graders, where the meta-grader is a different grader than the one who graded the submission. You will be able to preview the assignments before creating them, and can manually tweak them through the drag-and-drop interface. + +## Grading Status Dashboard + +The Grading Status Dashboard provides instructors with a comprehensive overview of grading progress across all assignments. Access this dashboard to monitor: + +- **Completion rates**: Track how many submissions have been graded versus pending +- **Grader workload**: See the distribution of grading tasks across staff members +- **Due dates**: Monitor upcoming grading deadlines +- **Assignment progress**: View grading status for each assignment at a glance + +This dashboard helps instructors identify bottlenecks, ensure equitable workload distribution, and keep grading on schedule. diff --git a/staff/assignments/handgrading.mdx b/staff/assignments/handgrading.mdx index 3c0f74c..3acd31c 100644 --- a/staff/assignments/handgrading.mdx +++ b/staff/assignments/handgrading.mdx @@ -28,6 +28,10 @@ Instructors can assign graders to entire submissions (grading the whole rubric o You can also grade the submission as a whole, by clicking on the "Grade" button. +### Pinning Errors + +When grading submissions, you can pin specific errors or issues to make them globally visible across all submissions. This is useful for tracking common mistakes or patterns that appear across multiple student submissions. Pinned errors remain visible as you navigate between different submissions, helping you maintain consistency in grading and identify widespread issues that may need to be addressed with the entire class. + ## Grading Submissions Without Assignments If you have not been assigned to grade any submissions, you will see a list of all submissions on the assignment's landing page. diff --git a/staff/assignments/intro.mdx b/staff/assignments/intro.mdx index 6278bec..ff7df10 100644 --- a/staff/assignments/intro.mdx +++ b/staff/assignments/intro.mdx @@ -32,3 +32,26 @@ Instructors can set a class-wide number of late tokens, and configure assignment Each token can be exchanged for a 24-hour extension, but the extension must be requested before the student's original due date. Instructors and graders can also manually grant extensions to students, and can view all extensions granted to a student. This is done in the assignment configuration under "Due Date Exceptions". + +When granting extensions, instructors can now choose an extended due date directly using a date picker, rather than entering extension hours and minutes. This makes it easier to set specific deadlines for individual students. + +## Assignment Leaderboard + +Assignments can include an optional leaderboard feature that displays student rankings based on their scores. This feature: + +- Can be enabled or disabled per assignment +- Shows student rankings in a less cluttering way +- Helps motivate students through friendly competition +- Is configurable to match your course's pedagogical goals + +Instructors can control whether the leaderboard is visible to students and customize its display settings. + +## Score Capping + +Instructors can set a maximum score cap for assignments. This feature allows you to: + +- Limit the maximum points a student can earn on an assignment +- Prevent extra credit from inflating grades beyond a certain threshold +- Maintain consistent grading scales across assignments + +Score capping is configured per assignment and applies after all autograder and handgrading scores are calculated. diff --git a/staff/assignments/rubrics.mdx b/staff/assignments/rubrics.mdx index 87ec226..9cf3153 100644 --- a/staff/assignments/rubrics.mdx +++ b/staff/assignments/rubrics.mdx @@ -35,6 +35,8 @@ Rubrics can only be edited by instructors. - Each applied check creates a comment entry tied to a check with points and optional text. - For each criteria, the sidebar shows a running subtotal. +Recent usability improvements to the grading interface include enhanced annotation workflows, making it easier to apply feedback directly to code and artifacts. + ### How Points Are Computed - Per criteria: diff --git a/staff/discussion.mdx b/staff/discussion.mdx index 8788f24..2b8aaf1 100644 --- a/staff/discussion.mdx +++ b/staff/discussion.mdx @@ -60,6 +60,20 @@ When a student has an active help request in office hours, a widget appears in t This integration ensures students never miss updates on their help requests, even while browsing the discussion board. +## Drag-and-Drop Image Uploads + +The discussion board supports drag-and-drop image uploads, making it easy for students and staff to share screenshots, diagrams, and other visual content. Simply drag an image file into the post editor to upload it. + +## Karma System + +The discussion board includes a karma system that rewards helpful contributions. Students earn karma points by: + +- Creating helpful posts that receive likes +- Providing answers that are marked as solving questions +- Engaging constructively with the community + +Karma scores are visible to instructors and can help identify active, helpful community members. This gamification element encourages quality participation in course discussions. + ## Notifications By default, users do not get notifications for new posts, but can optionally "watch" a post to receive notifications when the post is updated or receives a new reply. Interacting with a post (e.g. replying to it) will automatically watch the post. diff --git a/staff/office-hours/intro.mdx b/staff/office-hours/intro.mdx index 43b2311..c75e6c8 100644 --- a/staff/office-hours/intro.mdx +++ b/staff/office-hours/intro.mdx @@ -65,6 +65,31 @@ When a student has an active help request, it follows them around the site. They This ensures students never miss updates, even while browsing the discussion board or other course pages. +### Office Hours Status and Schedule + +The office hours interface includes: + +- **Office Hours Status Card**: Shows whether office hours are currently active and provides a course-level description of office hours +- **Per-Queue Cards**: Displays information for each help queue, including current wait times and staff availability +- **Weekly Queue Schedule**: A calendar view showing when each queue is scheduled to be active, with live "Happening now" highlights for currently active queues + +This helps students understand when help is available and which queue to join based on their needs. + +### Demo Queues + +Instructors can create demo queues for testing and training purposes. Demo queues allow staff to practice using the office hours system without affecting real student help requests. + +### Rich Notifications for Students + +Students receive comprehensive notifications for their help requests: + +- **Browser notifications**: Desktop alerts when request status changes +- **Title bar updates**: Browser tab title shows queue position +- **Sound notifications**: Audio alerts for important updates +- **Favicon changes**: Visual indicator in browser tab + +Students can test notifications and manage notification permissions directly from their help request page. + ## Resolving Requests A help request can be marked as "Resolved" by either a staff member or a student. diff --git a/students/discussion-board.mdx b/students/discussion-board.mdx index ec37e9b..e3f4d30 100644 --- a/students/discussion-board.mdx +++ b/students/discussion-board.mdx @@ -8,6 +8,8 @@ icon: "comments" Pawtograder's discussion board feature allows students and staff to discuss course content and ask questions. It is **not** intended to be a replacement for office hours, although there is an option to format the post as a question that needs an answer (as opposed to a "note" that does not need an answer). Posts are formatted as Markdown, and support drag-and-drop attachments and images. +You can easily add images to your posts by dragging and dropping them directly into the editor, making it simple to share screenshots, diagrams, or other visual content. + ## Discussion Board Layout The discussion board features a feed-based layout with helpful sidebar widgets: @@ -82,3 +84,13 @@ Each post displays helpful metadata: - **Answered badge**: Indicates questions that have been resolved Replies are threaded, allowing for organized conversations. Use the Markdown editor to format your responses with code blocks, links, images, and more. + +## Karma System + +The discussion board includes a karma system that rewards helpful contributions. You earn karma points by: + +- Creating helpful posts that receive likes +- Providing answers that are marked as solving questions +- Engaging constructively with the community + +Your karma score reflects your positive contributions to course discussions and helps identify active, helpful community members. diff --git a/students/office-hours.mdx b/students/office-hours.mdx index 9e6e241..c12227e 100644 --- a/students/office-hours.mdx +++ b/students/office-hours.mdx @@ -86,6 +86,21 @@ Once you submit a help request: Your active help request follows you around the site! You'll see status updates and video call notifications even while browsing the discussion board or other pages. +### Get Help Button + +A persistent **Get Help** button appears throughout the site, making it easy to request assistance from anywhere in the course. Click this button to quickly open the help request form without navigating to the office hours page. + +### Rich Notifications + +Pawtograder provides comprehensive notifications for your help requests: + +- **Browser notifications**: Desktop alerts when your request status changes +- **Title bar updates**: Your browser tab title shows your queue position +- **Sound notifications**: Audio alerts for important updates (when enabled) +- **Favicon changes**: Visual indicator in your browser tab when you need attention + +You can test notifications and manage notification permissions from your help request page. If browser notifications are blocked, you'll see a warning with instructions to enable them. + ## Help Request Status Your help request will show different statuses: