Главная страница
Навигация по странице:

  • Примерный перечень тем курсовых работ по курсу «Объектно-ориентированное программирование 2»

  • Методические рекомендации по написанию и оформлению курсовой работы Цель написания курсовой работы. Выбор темы

  • Подготовка курсовой работы

  • Требования к выполнению курсовой работы

  • Структура пояснительной записки

  • Рекомендации по объему текста курсовой работы

  • Рекомендации по работе над текстом

  • Методические рекомендации по выполнению разделов курсовой работы

  • Рекомендации по написанию введения Структура введения

  • Рекомендации по написанию первой главы

  • Описание задачи и формализация требований к программному обеспечению

  • Проектирование архитектуры программного обеспечения

  • Рекомендации по написанию второй главы

  • Рекомендации по написанию третьей главы Разработка test-units

  • Результаты тестирования программного обеспечения

  • Рекомендации по представлению результатов и выводов

  • Рекомендации по оформлению списка используемой литературы

  • Требования к оформлению курсовой работы, ее объему и срокам сдачи

  • Задание для выполнения курсовой работы


    Скачать 33.89 Kb.
    НазваниеЗадание для выполнения курсовой работы
    Дата26.02.2023
    Размер33.89 Kb.
    Формат файлаdocx
    Имя файлаkursovay(1).docx
    ТипДокументы
    #956165


    Задание для выполнения курсовой работы

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

    Тема курсовой работы может быть предложена и самим студентом, но в этом случае ее необходимо согласовать с научным руководителем.
    Примерный перечень тем курсовых работ по курсу «Объектно-ориентированное программирование 2»

    1. Разработка объектной модели Солнечной системы.

    2. Разработка объектной модели движения на автостраде.

    3. Разработка объектной модели движения на перекрестке дорог.

    4. Разработка системы классов для решения задачи коммивояжера.

    5. Библиотека классов для реализации графических примитивов на плоскости с реализацией операций над множествами.

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

    7. Разработка структуры классов для работы со списками.

    8. Разработка классов для реализации криптографических алгоритмов шифрования информации.

    9. Разработка текстового редактора.

    10. Разработки системы классов работы с деревьями.

    11. Разработка приложения для исследования алгоритмов поиска (сортировки) с графическим интерфейсом.

    12. Разработка приложения для исследования алгоритмов над деревьями с графическим интерфейсом.

    13. Разработка классов для решения задачи поиска кратчайшего пути в графе.

    14. Разработка системы классов для решения транспортной задачи.

    15. Разработка библиотеки классов для реализации игрового приложения «Пятнашки».

    16. Разработка библиотеки классов для реализации игрового приложения «Шарики».

    17. Разработка библиотеки классов для реализации игрового приложения «Крестики-нолики».

    18. Разработка компьютерной игры «Космический бой» с использованием объектно-ориентированной технологии.

    19. Разработка компьютерной игры «Морской бой» с использованием объектно-ориентированной технологии.

    20. Разработка библиотеки классов для реализации игрового приложения «Точки».

    21. Разработка системы классов, описывающих работу службы доставки лекарств.

    22. Разработка системы классов, описывающих обслуживание в банке.

    23. Разработка системы классов, описывающих обслуживание в страховой компании.

    24. Разработка системы классов, описывающих работу автосервиса.

    25. Разработка системы классов, описывающих систему регулирования домашнего отопления.

    26. Разработка системы классов, описывающих автобусный парк.

    27. Разработка системы классов, описывающих работу поликлиники.

    28. Разработка системы классов, описывающих работу ветеринарной клиники.

    29. Разработка системы классов, описывающих работу института.

    30. Разработка системы классов, описывающих работу оптового склада.

    31. Разработка приложения для исследования быстродействия STL контейнеров.

    32. Разработка приложения для изучения графиков тригонометрических функции декартовых системе координат.

    33. Разработка иерархии объектов по анализу формул и выводу графиков в декартовой системе координат.

    34. Разработка приложения для изучения графиков тригонометрических функции в полярной системе координат.

    35. Разработка иерархии объектов по анализу формул и выводу графиков в полярной системе координат.

    36. Электронный стенд для изучения физики. Сила трения.

    37. Электронный стенд для изучения физики. Сила качения.

    38. Электронный стенд для изучения физики. Маятник.

    39. Электронный стенд для изучения физики. Закон сохранения импульсов.

    40. Электронный стенд для изучения физики. Движение заряженной частицы в магнитном поле.


    Методические рекомендации по написанию и
    оформлению курсовой работы

    Цель написания курсовой работы. Выбор темы

    Курсовая работа представляет собой форму контроля знаний студентов по курсу «Объектно-ориентированное программирование 2». В то же время она является самостоятельным творческим исследованием определенной проблемы объектно-ориентированное программирования (ООП).

    Целью курсовой работы является закрепление навыков программирования на языке С++ на практике, а также приобретение и закрепление навыков самостоятельной работы.
    Основные этапы выполнения курсовой работы:

    1. Определение (выбор) темы курсовой работы.

    2. Составление задания на выполнение курсовой работы.

    3. Осуществление подбора научной литературы по выбранной теме и ее анализ.

    4. На основе обработки изученного материала реализация решения задачи и написание текста пояснительной записки.

    5. При необходимости в ходе выполнения курсовой работы получение на форуме консультации от преподавателя/ассистента.

    6. Оформление пояснительной записки в соответствии с требованиями к оформлению.

    7. Предоставление курсовой работы на проверку преподавателю/ассистенту в электронном виде не позднее, чем за три недели до окончания изучения курса.

    8. Если преподавателем/ассистентом сделаны замечания по тексту курсовой работы, то необходимо устранение недочетов в электронном виде не позднее, чем за неделю до зачетной недели.

    Курсовая работа в обязательном порядке проходит проверку по системе «Антиплагиат». Доля авторского текста должна составлять не менее 50 %.

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

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

    При написании курсовой работы следует придерживаться следующего порядка действий:

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

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

    3. Далее следует перейти к написанию основного текста пояснительной записки, разбить основной текст курсовой работы на главы и параграфы.

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

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

    2. Завершает курсовую работу список используемой литературы. Библиографический список использованных источников (используемая литература) должен быть представлен в алфавитном порядке. Правила библиографического описания источников должны соответствовать ГОСТ Р 7.0.100-2018.

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

    Следует разработать программу в объектно-ориентированной парадигме. Объектно-ориентированное программирование – это подход к решению проблем, при котором все вычисления выполняются с использованием объектов. Объект является составной частью программы, которая знает, как выполнить определенные действия и как взаимодействовать с другими элементами программы. Объекты – это основные единицы объектно-ориентированного программирования. В объектно-ориентированном программировании класс представляет собой шаблон для создания объектов, обеспечивающий начальные значения состояний: инициализация полей-переменных и реализация поведения функций или методов. По сути, класс представляет собой план объекта. Это базовая единица ООП, который инкапсулирует как статические свойства, так и динамические операции в «блок» и определяет открытый интерфейс для использования этих блоков. Поскольку классы хорошо инкапсулированы, их легче использовать повторно. Другими словами, ООП объединяет структуры данных и алгоритмы программного объекта внутри одного блока. Чтобы создать объект, вам нужен класс. Данная парадигма позволяет написать программу путем моделирования реальных вещей с точки зрения класса и объекта. Это не только упрощает представление реальных вещей в мире программирования, но также позволяет управлять сложностью вашей программы.

    В процессе объектно-ориентированного проектирования должна быть определена и зафиксирована логическая структура, представленная классами и объектами, и файловая (модульная) структура системы. Объекты в основном основаны на классах.

    Представить описание процесса проектирования иерархии классов и интерфейсов на языке UML. При необходимости диаграммы классов могут быть дополнены другими UML диаграммами.

    В качестве языка программирования допускается использование одного из различных объектно-ориентированных языков, таких как C++, C#, Java и других. Языки ООП допускают более высокий уровень абстракции для решения поставленных задач, позволяя использовать программные объекты для представления и абстрагирования сущностей в проблемном пространстве.

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

    Структура пояснительной записки включает в себя следующие элементы:

    • титульный лист;

    • задание на выполнение курсовой работы (проекта);

    • содержание;

    • введение;

    • основная часть;

    • заключение с краткими выводами по результатам работы;

    • список используемой литературы, который может включать до 20 источников, в том числе не менее 2-х источников на английском языке;

    • приложения.

    Рекомендации по объему текста курсовой работы

    Курсовая работа по дисциплине «Объектно-ориентированное программирование 2» подразумевает теоретическую и практическую части. Объем работы должен составлять не более 40 страниц стандартного печатного текста. Приложения не должны превышать 1/3 основного объема курсовой работы.

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

    Примерный состав пояснительной записки к курсовой работе

    Введение.

    1. Описание задачи и проектирование архитектуры программного обеспечения.

    1.1. Описание задачи и формализация требований к программному обеспечению.

    1.2. Проектирование архитектуры программного обеспечения.

    2. Реализация программного обеспечения.

    3. Тестирование программного обеспечения.

    3.1. Разработка test-units.

    3.2. Результаты тестирования программного обеспечения.

    4. Заключение.

    5. Список используемой литературы.

    6. Приложение А. Листинг рабочего кода разработанного приложения.
    Методические рекомендации по выполнению разделов

    курсовой работы

    Основной текст пояснительной записки состоит из введения, описания разделов основной части и заключения.

    Рекомендации по написанию введения

    Структура введения

    Во введении указываются:

    1. актуальность выбранной темы;

    2. формулировка предмета (это должен быть процесс, например, «процесс решения …») и объекта исследования (это, как правило, программа, модуль, информационная система);

    3. цель курсовой работы («разработать программу …»);

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

    5. описание объекта, предмета и методов исследования.

    Завершается введение описанием структуры работы по главам.
    Рекомендации по написанию первой главы

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

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

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

    Основой курсовой работы является некая предметная область со своими терминами, понятиями, субъектами и объектами, отношениями между ними. Необходимо провести анализ предметной области, в ходе которого необходимо выявить:

    • какие в данной предметной области есть термины и понятия, субъекты и объекты, способы взаимодействия субъектов, способы использования объектов, закономерности;

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

    • каковы функциональные требования к разрабатываемой системе классов.

    Результат должен быть оформлен в виде реферативного описания данной предметной области.

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

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

    С учетом объектно-ориентированного подхода требования определяются в виде вариантов использования (use case). Совокупность всех возможных вариантов использования описывает функциональные возможности системы в целом.
    Проектирование архитектуры программного обеспечения

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

    На этом этапе нужно разработать информационную модель заданной предметной области в виде диаграмм классов и объектов. Раскрыть связи между объектами и алгоритмы их взаимодействия в процессе решения прикладной задачи в нотации UML (унифицированного языка моделирования). В разработке программного обеспечения диаграмма классов в UML – это тип статической структурной диаграммы, которая описывает структуру системы, показывая классы системы, их атрибуты, операции (или методы) и отношения между объектами.

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

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

    Перспектива спецификации. Диаграммы интерпретируются как описание программных абстракций или компонентов со спецификациями и интерфейсами, но без привязки к конкретной реализации. Таким образом, с точки зрения спецификации, мы смотрим на интерфейсы программного обеспечения, а не на реализацию.

    Перспектива реализации. Диаграммы интерпретируются как описание реализации программного обеспечения на определенной технологии и языке. Таким образом, с точки зрения реализации, мы смотрим именно на реализацию программного обеспечения.

    Рекомендации по написанию второй главы

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

    На основе диаграммы классов должна быть выполнена программная реализация системы классов. Все классы должны быть описаны с указанием свойств и методов, для сложных методов, если такие есть, должны быть приведены алгоритмы. Описание этапов разработки должно показывать связь между элементами проекта на языке UML и элементами программного проекта.

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

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

    Разработка test-units

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

    Модульное тестирование (юнит-тестирование, англ. unit testing) – это уровень тестирования программного обеспечения, на котором тестируются отдельные модули/компоненты программного обеспечения. Цель состоит в том, чтобы подтвердить, что каждая единица программного обеспечения работает так, как задумано.

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

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

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

    1. Номер теста (по нумерации тестов в методике тестирования).

    2. Входные данные.

    3. Ожидаемый результат выполнения теста.

    4. Результат выполнения теста.

    5. Вывод – результат выполнения теста соответствует / не соответствует ожидаемому результату.

    Если в ходе тестирования выявляются несоответствия, следует выполнить анализ его причин и привести результаты этого анализа, например, указать, чем вызвано несоответствие – семантическими или алгоритмическими ошибками, сформулировать рекомендации по исправлению несоответствия, и т. п.
    Рекомендации по представлению результатов и выводов

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

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

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

    и срокам сдачи

    Примерный объем курсовой работы составляет 25, но не более 30 страниц формата А4 (без учета приложений). Текст курсовой работы следует печатать, соблюдая следующие размеры полей: правое поле – 15 мм, верхнее и нижнее – 20 мм, левое – 30 мм. Печатать на одной стороне листа через полтора интервала.

    Абзацы в тексте начинают отступом равным 1,25 см.

    Шрифт основного текста, заголовков, подписей рисунков и таблиц должен иметь гарнитуру «Times New Roman», размер 14, обычное начертание. Цвет шрифта черный. В заголовках и подзаголовках рекомендуется полужирное начертание шрифта. В таблицах, при необходимости, разрешается понижение размера шрифта до 12 пунктов и одинарный межстрочный интервал.

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

    Разделы (главы), параграфы и пункты нумеруются арабскими цифрами. Структурные элементы «Содержание», «Введение», «Заключение» не нумеруются.

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

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

    Приложения следуют в конце пояснительной записки и служат для размещения разработанных схем, кода и т. п. Приложения начинаются с новой страницы. Нумеруются приложения следующим образом: Приложение А, Приложение Б и т. д. Номер и название приложения располагаются по центру страницы. Номера рисунков и таблиц, приводимых в приложениях, предваряются буквой «П», например: Рисунок ПА.2 – Блок-схема алгоритма.

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



    написать администратору сайта