Файл: Методические указания к выполнению курсовой работы по дисциплине Основы конструирования программ Минск бгуир 2017 содержание.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 04.12.2023
Просмотров: 426
Скачиваний: 13
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
1 ОБЩИЕ ТРЕБОВАНИЯ К КУРСОВОЙ РАБОТЕ
1.1 Исходные данные к курсовой работе
1.2 Функциональные требования к курсовой работе
1.3 Требования к программной реализации курсовой работы
2 СТРУКТУРА ПОЯСНИТЕЛЬНОЙ ЗАПИСКИ
3 ПОРЯДОК ЗАЩИТЫ КУРСОВОЙ РАБОТЫ
4 КРИТЕРИИ ОЦЕНКИ КУРСОВОЙ РАБОТЫ
Белорусский государственный университетинформатики и радиоэлектроникиКафедра инженерной психологии и эргономикиМ. М. МеженнаяМетодические указания к выполнению курсовой работы по дисциплине «Основы конструирования программ»Минск БГУИР 2017
1 ОБЩИЕ ТРЕБОВАНИЯ К КУРСОВОЙ РАБОТЕ 3
1.1 Исходные данные к курсовой работе 3
1.2 Функциональные требования к курсовой работе 4
1.3 Требования к программной реализации курсовой работы 7
2 СТРУКТУРА ПОЯСНИТЕЛЬНОЙ ЗАПИСКИ 8
3 ПОРЯДОК ЗАЩИТЫ КУРСОВОЙ РАБОТЫ 11
4 КРИТЕРИИ ОЦЕНКИ КУРСОВОЙ РАБОТЫ 12
ПРИЛОЖЕНИЕ 1. Задания для курсовой работы 14
ПРИЛОЖЕНИЕ 2. Образец титульного листа курсовой работы 25
Допускается использовать классы string и vector, библиотеку algorithm.Для защиты курсовой работы необходимо распечатать пояснительную записку и продемонстрировать работу программу.
Графическая среда может быт любой; в качестве рекомендации обращаю ваше внимание на online-редакторы, например: http://www.newart.ru/htm/flash/risovalka_42.php Выбор способов организации данных:
СОДЕРЖАНИЕ
1 ОБЩИЕ ТРЕБОВАНИЯ К КУРСОВОЙ РАБОТЕ 3
1.1 Исходные данные к курсовой работе 3
1.2 Функциональные требования к курсовой работе 4
1.3 Требования к программной реализации курсовой работы 7
2 СТРУКТУРА ПОЯСНИТЕЛЬНОЙ ЗАПИСКИ 8
3 ПОРЯДОК ЗАЩИТЫ КУРСОВОЙ РАБОТЫ 11
4 КРИТЕРИИ ОЦЕНКИ КУРСОВОЙ РАБОТЫ 12
ПРИЛОЖЕНИЕ 1. Задания для курсовой работы 14
ПРИЛОЖЕНИЕ 2. Образец титульного листа курсовой работы 25
1 ОБЩИЕ ТРЕБОВАНИЯ К КУРСОВОЙ РАБОТЕ
1.1 Исходные данные к курсовой работе
-
Тема курсовой работы выбирается из списка, приведенного в приложении 1. -
Язык программирования С++.–– -
Среда разработки Microsoft Visual Studio версии 2010 и выше. -
Вид приложения – консольное.–– -
Парадигма программирования – процедурная (по согласованию с преподавателем допускается реализация программы в рамках объектно-ориентированной парадигмы программирования). -
Способ организации данных – структуры (struct) (либо поля соответствующих классов в случае объектно-ориентированного программирования). -
Способ хранения данных – файлы (по согласованию с преподавателем допускается подключение баз данных). -
Каждая логически завершенная задача программы должна быть реализована в виде функции (метода в случае объектно-ориентированного программирования). -
Построение программного кода должно соответствовать правилам, определенным в документе «С++ Code Convention» (см. одноименный файл). -
Текст пояснительной записки оформляется в соответствии со стандартом предприятия СТП 01–2013.
Допускается использовать классы string и vector, библиотеку algorithm.Для защиты курсовой работы необходимо распечатать пояснительную записку и продемонстрировать работу программу.
1.2 Функциональные требования к курсовой работе
Первым этапом работы программы является авторизация – предоставление прав доступа (не путать с регистрацией!). В рамках данного этапа необходимо считать данные из файла с учетными записями пользователей следующего вида:-
login; -
password; -
role (данное поле служит для разделения в правах администраторов и пользователей).
-
Управление учетными записями пользователей:
-
просмотр всех учетных записей; -
добавление новой учетной записи; -
редактирование учетной записи; -
удаление учетной записи.
-
Работа с файлом данных:
-
создание файла; -
открытие существующего файла; -
удаление файла.
-
Работа с данными:
-
просмотр всех данных; -
добавление новой записи; -
удаление записи; -
редактирование записи;
-
выполнение индивидуального задания; -
поиск данных (как минимум по трем различным параметрам); -
сортировка (как минимум по трем различным параметрам).
включает подмодуль работы с данными со следующими функциональными возможностями:
-
просмотр всех данных; -
выполнение индивидуального задания; -
поиск данных (как минимум по трем различным параметрам); -
сортировка (как минимум по трем различным параметрам).
-
обработку исключительных ситуаций:
-
введенные пользователем данные не соответствуют формату поля (например, символы в числовом поле) -
введенные пользователем данные некорректны (например, отрицательная цена товара) -
файл с данными для чтения не существует -
ничего не найдено по результатам поиска -
номер удаляемой записи выходит за пределы массива/вектора -
логин новой учетной записи уже существует
-
возможность возврата назад (навигация); -
запрос на выполнение необратимых действий, а именно, подтверждение удаления вида «Вы действительно хотите удалить файл (запись)?»; -
обратную связь с пользователем, например, вывод сообщения об успешности создания файла/удаления записи/ и т.д.
1.3 Требования к программной реализации курсовой работы
-
Все переменные и константы должны иметь осмысленные имена в рамках тематики варианта к курсовой работе. -
Имена функций должны быть осмысленными и строится по принципу глагол+существительное. Если функция выполняет какую-либо проверку и возвращает результат типа bool, то ее название должно начинаться с глагола is (например, isFileExist, isUnicLogin). -
gotoпод запретом. -
Код не должен содержать неименованных числовых констант (так называемых «магических» чисел), неименованных строковых констант (например, имен файлов и др.). Подобного рода информацию следует выносить в глобальные переменные с атрибутом const. По правилам хорошего стиля программирования тексты всех информационных сообщений, выводимых пользователю в ответ на его действия, также оформляются как константы. -
Код необходимо комментировать (как минимум в части объявления структур, массивов/векторов, заголовков функций, нетривиальной логики). -
Код не должен дублироваться – для этого существуют функции! -
Одна функция решает только одну задачу (например, не допускается в одной функции считывать данные из файла и выводить их на консоль – это две разные функции!). При этом внутри функции возможен вызов других функций. -
Выполнение операций чтения/записи в файл должно быть сведено к минимуму (т.е. после однократной выгрузки данных из файла в массив/вектор дальнейшая работа ведется с этим массивом/вектором, а не происходит многократное считывание данных из файла в каждой функции). -
Следует избегать длинных функций и глубокой вложенности: текст функции должен умещаться на один экран, а вложенность блоков и операторов должна быть не более трёх. -
Выносите код логически независимых модулей в отдельные .cpp файлы и подключайте их с помощью заголовочных .h файлов.
2 СТРУКТУРА ПОЯСНИТЕЛЬНОЙ ЗАПИСКИ
Структура пояснительной записки:Титульный лист (образец приведен в приложении 2)Задание по курсовой работе (заполненное и подписанное студентом и преподавателем)Содержание-
Требования к программе (см. пояснения ниже) -
Конструирование программы
-
Разработка модульной структуры программы (см. пояснения ниже) -
Выбор способа организации данных (см. пояснения ниже) -
Разработка перечня пользовательских функций программы (см. пояснения ниже)
-
полный текст Вашего варианта задания, -
исходные данные для курсовой работы из документа Общие требования к курсовой работе (выберите основной или альтернативный вариант), -
функциональные требования к конкретно вашей курсовой работе (рекомендуется взять за основу материал из документа Общие требования к курсовой работе и расширить его для своей темы, например, прописать индивидуальное задание, разновидности поиска и сортировки, + конкретизировать возможные исключительные ситуации), -
требования к программной реализации (см. Общие требования к курсовой работе).
Графическая среда может быт любой; в качестве рекомендации обращаю ваше внимание на online-редакторы, например: http://www.newart.ru/htm/flash/risovalka_42.php Выбор способов организации данных:
-
в качестве выбора способа описания входных данных: приводится описание типов struct (1. для учетных записей пользователей, 2. для данных) с указанием конкретных полей. В случае объектно-ориентированного программирования приводятся названия предполагаемых классов и содержащихся в них полей. При работе с базой данных дополнительно приводится структура таблиц. -
в качестве способа объединения входных данных: указывается использование массивов/векторов/…, а также их выбранная область видимости (локальные/глобальные).