Должна ли такая курсовая работа по CS быть предметом плагиата?

Я только что присоединился к новому курсу CS и не могу понять, стоит ли мне беспокоиться о том, что моя курсовая работа будет считаться плагиатом или нет. Ситуация следующая.

Я делаю проект системного программирования с математикой. Наш профессор дал нам множество рабочих примеров кода и математики, которые можно напрямую скопировать в программу с небольшими изменениями. Некоторые тривиальные детали структуры кодовой базы были опущены, но их можно легко получить путем простого обратного проектирования из предоставленных образцов кода с некоторыми усилиями; это очень интуитивно понятно.

В предоставленных примерах кода было опущено очень мало нетривиальных деталей, и именно в этом, на мой взгляд, заключается реальная попытка отличить одно решение от другого; это менее 5% всей кодовой базы.

Дело усложняется тем, что ответ на эту курсовую работу доступен в Интернете другими студентами. Глядя на решение других учеников, нельзя не увидеть более-менее одинаковые решения с небольшими вариациями.

Поскольку я смотрел на решения других студентов, разрабатывая свое собственное решение, я не могу не чувствовать себя виноватым за то, что впитал некоторые из их идей и, таким образом, привел к похожей структуре программы. В то же время все мы использовали образцы кода профессора в качестве основного ресурса. Там, где я думал, что смогу улучшить структуру программы или добавить функции, которые были неверны или пропущены другими студентами, я так и сделал. Так что есть некоторые отличия от других решений, но не такие уж большие.

Поэтому я не уверен, стоит ли мне беспокоиться о том, что мои решения считаются плагиатом в этом сценарии или нет. Я предполагаю, что мое решение больше похоже на «сильно исправленную копию», а не отличается от «с нуля».

Вам нужно будет спросить инструктора, каковы их параметры.
Честность — лучшая политика: сообщите инструкторам, что решения доступны в Интернете и что вы их видели.
Если вы беспокоитесь о том, что на самом деле вас могут обвинить в плагиате, то не помешает процитировать. Но с этической точки зрения вы не сделали ничего плохого.

Ответы (2)

Это в основном запрос мнений, потому что нет общего ответа на определение плагаризма в кодировании. Заимствование кода — огромная часть обучения программированию!

Тем не менее, вот мои рекомендации для себя:

make choices you're comfortable with. 

Если это кажется неправильным, вероятно, так оно и есть. Вы должны быть готовы открыто поддерживать каждое решение и каждый поиск в Google.

add comments with sources throughout your code. 

Это облегчит задачу только с точки зрения кодирования, а если вас обвинят в плагиате, будет легче утверждать, что вы не собирались этого делать.

В частности, я ссылаюсь на ответы по обмену стеками, которые были полезны, особенно на вопросы, которые я задавал.

вы даже можете поместить ссылку на эту ветку в свой код отправки где-нибудь, чтобы продемонстрировать, что вы явно думали об академической честности.

Намерение имеет большое значение в плагиате на уровне выпускников или аспирантов. Когда что-то публикуется, оно становится гораздо более объективным.

Будучи студентом, вы должны учитывать больше, чем плагиат как таковой. Конечно, плагиат — приписывание себе чужой работы — остается неправильным для студентов, но он «лечится» путем надлежащего цитирования того, что вы используете.

Но профессор, назначающий вам какой-то проект, заботится о вашем обучении, а не конкретно о программе, которую вы создаете, а только о том, как она способствует вашему обучению.

Итак, профессора обычно устанавливают правила и, надеюсь, соблюдают их. Если вы не понимаете правила, вы можете и должны спросить. И вы должны относительно консервативно интерпретировать правила, когда сомневаетесь.

Но, и это важно, правила будут меняться по мере прохождения образовательной системы. Это должно быть верно для всех полей, а также для CS.

В какой-то момент вашего образования (начало) разумно попросить вас работать строго в одиночку. В других случаях уместно разрешить или даже потребовать от вас работать в группах. Может быть уместно потребовать, чтобы «команда» выполняла все свои собственные коды, а не использовала найденный код.

На других этапах процесса уместно и даже необходимо потребовать, чтобы отдельные лица или группы пересматривали и расширяли работу других, а учащиеся находили и использовали ресурсы в Интернете.

Но правила существуют не для того, чтобы быть противными, а для того, чтобы убедиться, что каждый учащийся проходит через различные психические изменения, которые позволят глубокому обучению.

Но есть несколько профессоров, которые позволят студентам «копировать» из прошлых итераций данного задания, если они будут обнаружены. Точно так же есть несколько профессоров, которые запретили бы вам использовать (и адаптировать) код, который они специально дают вам для задания.

В то время как поведение преподавателей, которые повторно используют задания, зная, что решения легко доступны, может быть серьезно подвергнуто сомнению, общие цели обучения должны направлять вас в отношении того, что уместно.

Если я предоставлю «идеальное» решение, которое я где-то нашел, но не узнаю ничего, кроме того, как использовать Google, то я напрасно потратил время всех. «Идеальное» решение не было целью, пока вас не нанял Google. Затем цели меняются.

Более того, неправильное копирование может фактически привести к тому, что человек лишит себя возможности озарения, которое будет трудно вернуть. Эти идеи ведут к глубокому обучению и являются основным оправданием необходимости процесса «обучения в условиях ограничений».

Целью любого задания является не продукт, произведенный студентом. Именно изменение психического состояния делает возможным акт производства . Не упускайте из виду это.


Для более четкого ответа на ваш вопрос я предполагаю, что использование и изменение предоставленного вам кода - это нормально - даже в этом суть. Но обращаться к старым решениям, вероятно, неправильно, даже если это прямо не указано. Однако профессор поступил бы мудро, если бы прояснил ситуацию и даже объяснил почему, как я попытался сделать выше.