Инструменты пользователя

Инструменты сайта


diplomants:start:thesis_structure

Содержательная структура пояснительной записки для ВКР

Введение

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

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

Содержательные части пояснительной записки

В том, как и что писать, вам помогут матералы курса Основы подготовки научных публикаций.

Введение

Введение обязательно должно содержать как минимум следующие микро-разделы:

  • Актуальность решаемой в ВКР проблемы
  • Цель работы
  • Задачи
  • Объект исследования
  • Предмет исследования
  • Практическая значимость работы

При этом все микро-разделы выше (кроме актуальности) должны содержать свое название, выделенное жирным шрифтом, например:

Актуальность - посмотрите, как делать правильно https://stepik.org/lesson/104086/step/6?unit=78652 и обязатально укажите ссылки на источники.

Цель работы: разработать модель / алгоритм / метод / программу … для …

Для достижения цели необходимо решить следующие задачи - задача 1 - задача 2

Объектом исследования является …

Предметом исследования является

Практическая значимость решения заключается в…

Введение может также включать (оформляется по аналогии с микроразделами выше):

  • Научная значимость работы
  • Опубликованные работы по теме ВКР

Обзор предметной области

В данном разделе ожидается минимум два компонента - описание предметной области + обзор литературы.

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

Описание предметной области

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

О чем нужно сказать в данном разделе:

  • Очень кратко про предметную область и про место вашего решения в ней
    • Если у вас есть завязка на специфичное железо / роботов / какую-то иную аппаратуру - покажите картинки
    • Если у вас тема связана с навигацией / техническим зрением - покажите и картинки объектов, и обозначьте их примерные размеры, и условия съемки / движения
  • Зачем оно там нужно - какие проблемы оно решит
  • Кто будет пользователем, как часто и каким способом они будут ваше решение применять
  • Какую форму должно ваше решение иметь (отдельная программа, модуль и тд)

Обзор литературы

Необходимо с помощью литературы:

  • Определить используемые в работе термины.
  • Привести формальную запись решаемой проблемы. Если решаемая вами проблема сводится к математической (в широком смысле) задаче (например, сортировка / классификация / кластеризация / сегментация / сжатие / предсказание ….), то желательно дать ее общую постановку на математическом языке.
  • Сравнить существующие подходы к решению проблемы:
    • привести их краткую характеристику;
    • сформулировать и, по возможности, обосновать критерии сравнения для подходов;
    • охарактеризовать каждый подход по каждому критерию;
    • сделать вывод о
      • общих недостатках,
      • общих достоинствах.

Выбор (обоснование) [метода] решения / формулировка требований к решению / постановка задачи

В данном разделе дается развернутая постановка задачи, решаемой в ВКР. Сама постановка это по сути развернутое и уточнение предложение вида «Необходимо сделать …, при этом результат должен обладать следующим набором свойств: 1) …, 2)….». При этом, постановка задачи должна по смыслу полностью перекликаться с целью/задачами во Введении.

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

Решением может быть:

  • программа (как самостоятельное приложение, так и модуль/патч/драйвер и т.д.),
  • алгоритм,
  • метод,
  • математическая модель.

Описание [метода] решения

В данном разделе необходимо подробно описать и обосновать созданное в рамках ВКР решение / метод решения. Традиционно раздел может включають в себя:

  • Мат.аппарат
    • используемые формализации;
    • ваши разработки:
      • формальная запись,
      • границы применимости.
  • Архитектура программной реализации.
    • Алгоритмы
      • блок-схема или псевдокод,
      • входные и выходные данные алгоритма.
    • Сценарии использования.
    • Используемые технологии.
    • Структура программной реализации
      • классы / модули / функции;
      • как структурные элементы программы связаны / взаимодействую друг с другом - текст и графическая схема;
      • как программа взаимодействует с другими системами - текст и графическая схема.
    • Интерфейс пользователя (пользователями могут быть не только люди, но и другие программы)
      • Виды:
        • командная строка;
        • веб-интерфейс;
        • REST-интерфейс;
        • GUI;
        • сетевой протокол.
      • Что необходимо описать:
        • общие правила взаимодействия;
        • процедура авторизации;
        • назначение отдельных команд, ключей командной строки, запросов, экранов приложения;
        • последовательность использования интерфейса ( с каких команд необходимо начинать и т.д.);
        • примеры запросов для REST-интерфейсов, командной строки, сетевых протоколов и пр.
    • Модель данных:
      • технологии хранения (используемые СУБД),
      • ER-диаграммы,
      • назначение и состав отдельных коллекций (таблиц):
        • какие данные хранятся,
        • как выглядит схема данных,
        • связи между коллекциями и их реализация,
        • примеры хранимых данных,
        • ограничения.
    • Тесты:
      • юнит-тесты,
      • интеграционные тесты,
      • ui-тесты.
    • Апробация - опишите в этом разделе (Если такое было) как и куда было внедрено (развернуто ваше решение), о статистике использования, дайте ссылки на акты о внедрении.

Исследования свойств решения

В разделе «Исследование свойств решения» необходимо исследовать качественные и количественные свойства решения и, по возможности, противопоставить их аналогам. В большинстве случаев эти свойства надо исследовать путем экспериментов над вашим решением - по нескольку раз воспроизводить определенную ситуацию (Например - работа ПО под нагрузкой) и измерять характеристики решения (например, ОЗУ, % CPU, время работы, точность ….). Эксперименты должны быть объективными и воспроизводимыми.

Свойства, интересные для исследования

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

Свойства решений для мат.моделей:

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

Свойства решений для программ:

  • быстродействие (количество операций в единицу времени, пропускная способность),
  • расход ресурсов (память, пропускная способность сети, количество операций с дисковой подсистемой ),
  • точность (аппроксимации, предсказания, распознования и т.д.),
  • надежность (вероятность / статистика сбоев сбоев).

Если у вас в работе используется LLM, то полезно провести оценку - сколько в токенах и в рублях ваше приложение потребляет.

Что писать в разделе с исследованием

Раздел с исследованием для программного решения может включать в себя:

  • Описание эксперимента
    • сценарий эксперимента
      • входные данные
      • измеряемые величины
      • последовательность действий
      • подтверждаемая или опровергаемая гипотеза
    • методика измерения,
      • где происходит измерение (характеристики ПК, на котором производятся эксперименты)
      • с помощью каких инструментов измеряются величины (точность измерения, алгоритм измерения)
    • используемые программные средства.
  • Результаты:
    • графики и таблицы,
    • словесное описание характера зависимости («зависимость прямо-пропорциональная»),
    • сравнение с результатами аналогов,
    • выводы по итогам эксперимента.

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

Апробация решения

Хорошим дополнением к исследованию является раздел про практическую аппробацию решения. Варианты аппробации:

  • внедрение в организации,
  • публикация программы в магазине приложений / каталоге приложений
  • доклады на конференция, публикации по теме работы.

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

Как делать не надо

Точно не надо обосновывать качество работы вашей системы ТОЛЬКО автоматизированными тестами (любыми, кроме нагрузочных и стресс- - ими можно).

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

Заключение

В заключении необходимо:

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

Приложения

В разделах вида «Приложение А / Б / В …» указывают дополнительные материалы, которые

  • Слишком громоздкие для основного текста (большие таблицы и рисунки)
  • Не относящиеся напрямую к сути работы, но частично ее поясняющие

Примеры того, что нужно помещать в Приложения:

  • Акты о внедрении, свидетельства о регистрации программ для ЭВМ, дипломы и грамоты за работу
  • Исходный код (если он не закрыт nda - non disclosure agreement | не является коммерческой тайной)
  • Таблицы размером более 60% от листа А4
diplomants/start/thesis_structure.txt · Последнее изменение: mark