WING-NUS / SSID

Student Submission Integrity Diagnosis
18 stars 23 forks source link

✨Feedback from user survey: Implement multi-file support and flexible structure for more complex assignments #388

Open joeyylow opened 7 months ago

joeyylow commented 7 months ago

Cc:

Hi

Pain

The restrictive input format requirements cause users to be frustrated when trying to submit complex, multi-part coding assignments. Users face issues when the codes have many parts (eg. many internal text files). These parts will not be able to be checked until all the lines are combined into a single, clean submission. This makes it difficult to process projects that contain many separate code files. The checker only works with a specific folder structure and file extensions.

Suggested Solution

Allow users to submit complex, multi-part coding assignments seamlessly by enhancing the code submission process. Enable the checker to handle projects with multiple separate code files, accommodating diverse folder structures and file extensions.

Tasks

Acceptance Criteria

Users should be able to upload coding assignments with multiple code files. The system should be able to process and evaluate assignments consisting of various file types and folder structures.

More Information

The feedback provided originates directly from the user feedback surveys and may include requirements and suggestions that lack clarity. The SSID team should evaluate and decide whether the team should address the identified issues or reject suggestions that do not provide clear and actionable insights.

Screenshots

Thanks!

sibinhho99 commented 6 months ago

Currently multiple files belonging to the same student in the same folder (e.g. multiple java files each with a class) are concatenated together internally.

For example, for this submission zip: cs1101_a1.zip

All source files of student 01 (2 java files) are concatenated into a single file for processing in the _compare folder

image
sibinhho99 commented 6 months ago

Currently multiple files belonging to the same student in the same folder (e.g. multiple java files each with a class) are concatenated together internally.

For example, for this submission zip: cs1101_a1.zip

All source files of student 01 (2 java files) are concatenated into a single file for processing

image

This concatenation is only for multiple files in the first level of the students' root folders (e.g. 01/Main.java, 01/Tree.java). Looks like there are some stale efforts to account for other types of structures: https://github.com/WING-NUS/SSID/pull/144, https://github.com/WING-NUS/SSID/issues/137

sibinhho99 commented 5 months ago

Currently multiple files belonging to the same student in the same folder (e.g. multiple java files each with a class) are concatenated together internally. For example, for this submission zip: cs1101_a1.zip All source files of student 01 (2 java files) are concatenated into a single file for processing

image

This concatenation is only for multiple files in the first level of the students' root folders (e.g. 01/Main.java, 01/Tree.java). Looks like there are some stale efforts to account for other types of structures: #144, #137

My bad, this information is incorrect. Currently recursively nested files are already accounted for (all of them would be combined into a single file for comparison)

SCR-20240118-ioni