- •Основы алгоритмизации и программирования
- •1 Цели курсового проектирования
- •2 Общие требования к курсовому проекту
- •2.1 Тематика курсового проектирования
- •Примерный перечень тем курсовых проектов
- •2.2 Задание на курсовое проектирование
- •2.3 Содержание курсового проекта
- •3 Методические указания по выполнению
- •2.4 Оформление листа «Содержание»
- •2.5 Защита курсового проекта
- •4 Оформление курсового проекта
- •4.1 Оформление пояснительной записки
- •4.1.1 Построение пояснительной записки
- •4.1.2 Изложение текста пояснительной записки
- •4.1.3 Оформление иллюстраций
- •4.1.4 Построение таблиц
- •4.1.5 Список используемых источников
- •4.1.6 Оформление приложений
- •4.1.7 Оформление ссылок
- •4.1.8 Основные надписи
- •4.2 Оформление графической части
- •Приложение а
- •Пример оформления задания на курсовое проектирование
- •І. Разлікова-тлумачальная запіска
- •Іі. Графічная частка праекта (работы)
- •Приложение б
- •Пример оформления титульного листа
- •Приложение в
- •Пример оформления содержания пояснительной записки
- •Приложение е
- •Пример оформления схемы программы
- •Содержание
2.4 Оформление листа «Содержание»
В содержании приводятся наименования разделов и подразделов с указанием номеров страниц, на которых они размещаются. Первый лист содержания является третьим листом ПЗ и оформляется на листе писчей бумаги формата А4 с рамкой и надписью по ГОСТ 2.104–68, форма 2, второй – по форме 2а. Последующие листы оформляются без рамки. Содержание наглядно отражает структуру ПЗ, в соответствии заданию (приложение В).
2.5 Защита курсового проекта
Защита курсового проекта осуществляется в соответствии с графиком курсового проектирования.
Учащийся подготавливает выступление на 10-15 минут, в котором раскрывает суть задачи, ее актуальность, алгоритм решения, используемые программные средства для ее решения. Для выступления желательно подготовить презентацию или демо-ролик, отражающих выполненную работу учащимся во время курсового проектирования.
Для сдачи курсового проекта учащийся должен представить пояснительную записку, графическую часть, диск, содержащий пояснительную записку и все файлы проекта.
3 Методические указания по выполнению
курсового проекта
Курсовой проект представляет собой самостоятельное приложение либо законченный модуль в составе коллективного проекта. Программа должна быть разработана таким образом, чтобы максимально облегчить работу пользователя с ней. Информация, представленная в приложении, должна быть понятна и не носить двусмысленный характер. Все формы должны оснащаться навигацией и кнопками поиска необходимой информации. Система помощи является обязательным компонентом для разработанного приложения. Она должна вызываться с любого места приложения, а также легко и наглядно разрешать проблемы пользователя по эксплуатации программы. Чтобы разгрузить приложение от большого количества кнопок перехода по формам, должна быть организована удобная система меню, система вкладок. Вызов основных функций программы желательно дублировать соответствующими иконками, «горячими» клавишами. Все приложение необходимо организовать в одном стиле и цветовой гамме, приятной для восприятия пользователя.
Порядок изложения ПЗ курсового проекта должен быть подчинен сути задачи. Логичность построения и целенаправленность изложения разделов достигаются при условии, что каждый из подразделов имеет определенное целевое назначение и является базой для последующего раздела.
Желательно, чтобы в каждом разделе приводились краткие выводы. Это позволит четко сформулировать итоги каждого этапа выполнения проекта и даст возможность освободить общие выводы от второстепенных подробностей.
Введение
Введение должно содержать в виде краткой аннотации освещение и оценку современного состояния решаемой задачи, основание и исходные данные для разработки темы, а также краткую характеристику разделов пояснительной записки. Объем введения не превышает двух страниц печатного текста.
Постановка задачи
Объем этого раздела ПЗ предполагается до 20 страниц. Сюда входят:
- собственно постановка задачи (название темы с пояснениями, наиболее общим описанием основных функций программы) и краткое описание предметной области.
Предметная область – это часть реального мира, данные о которой необходимо отразить в приложении. Предметная область определяется темой курсового проекта. Например, в качестве предметной области может быть выбрано математическое программирование, теория графов, алгоритмизация игр и головоломок и т. д.;
- назначение и функции программы, где дается словесная формулировка задачи, перечисляются все основные функции программы, область ее применения;
- математическая модель задачи. Здесь должна быть представлена математическая формулировка задачи, описание задачи с помощью формул, уравнений, неравенств и т.д.;
- выбор метода решения задачи. Описываются методы решения задачи. Производится выбор метода решения и его обоснование;
- информационная база задачи. Здесь должна быть обозначена входная информация, т.е. описана информация, необходимая для работы программы. Разрабатываются структура файлов, формы и способы ввода исходных данных. Для каждой формы описывается назначение всех ее компонентов, их свойств, обрабатываемых событий;
- выходная информация. Описываются формы для вывода информации, ее основные характеристики. Для решения конкретной задачи кроме входных и выходных данных, возможно, необходимы и другие виды информации, например, нормативно-справочная. Эту информацию также необходимо описать;
- система меню. Разрабатывается система меню, описывается назначение всех ее пунктов;
- система помощи. Разрабатывается и описывается система помощи. Желательно, чтобы помощь была контекстно-зависимой;
- контрольные примеры. Разрабатываются и описываются контрольные примеры, необходимые для тестирования и верификации разрабатываемой программы;
- алгоритм программы. Дается описание алгоритма головной программы и отдельных процедур и функций обычным языком, языком математики, с помощью схем и диаграмм, которые должны быть представлены в приложении. Данный раздел должен быть разработан так, чтобы по этой постановке задачи можно было разработать требуемую программу.
Большинство предлагаемых тем курсовых проектов обучающие программы или различные игры и головоломки. Какие функции должны быть реализованы, если темой проекта является обучающая программа по какому-либо методу или алгоритму вычислительной математики, математического программирования, дискретной математики и т.п.?
В первую очередь необходимо реализовать расчетный режим работы программы – на нем основываются обучающий, контролирующий режимы, режим самоконтроля. Расчетный режим может выполняться сразу полностью, а может и по шагам. В последнем случае на экран выводятся все промежуточные результаты. В любом случае все промежуточные и окончательные результаты с соответствующими пояснениями выводятся в Word или Excel. В обучающем режиме пользователь должен иметь возможность обратиться к теоретическому материалу, рассмотреть решение типовых задач, проверить себя, решив предлагаемую программой задачу. В случае затруднения, он может воспользоваться помощью или подсказкой. В режиме контроля пользователь отвечает на вопросы, задаваемые программой, выполняет требуемые действия, решает предлагаемую задачу по шагам, количество подсказок при этом ограничено. Режим самоконтроля отличается от контролирующего режима только тем, что в этом режиме пользователь сам вводит или выбирает пример для решения. Поскольку в программе реализован расчетный режим, то программа может проконтролировать каждый этап решения примера. В проекте должно быть достаточное количество подготовленных примеров.
Если в качестве темы проекта выбрана головоломка, то необходимо реализовать следующие функции: предоставление пользователю для решения головоломки разного уровня сложности, вывод задания для решения как на экран, так и на принтер. Желательно, чтобы пользователь, решая головоломку, имел возможность воспользоваться помощью или подсказкой; возможность пользователю ввести свое условие головоломки для ее решения или вывода на принтер; автоматическое решение головоломки, предлагаемой программой или введенной пользователем; генерирование условия головоломки требуемого уровня сложности.
Многие головоломки решаются с помощью определенного набора процедур, позволяющих на каждом цикле их применения найти минимум один правильный следующий ход. Часто эти процедуры используют известные комбинаторные алгоритмы и алгоритмы на графах. Выявление таких процедур, их реализация достаточно непростая алгоритмическая задача.
Для решения многих головоломок таких процедур не существует и тогда единственным способом авторешения являются алгоритмы с возвращением (backtracking). Реализация алгоритмов перебора с возвратом, по нашему мнению, является наиболее сложным в алгоритмизации решения задач. Но и нахождение авторешения чаще всего не является самым трудным в компьютерной реализации головоломки. Еще более сложным является генерирование головоломки вообще и требуемого уровня сложности в частности. Можно предложить следующий подход для определения сложности сгенерированной головоломки. Если головоломка может быть решена выполнением нескольких простых процедур, то уровень простой. Если для решения головоломки простых процедур недостаточно, но она решается, если добавить некоторые более сложные процедуры, то данный уровень более сложный. Если для решения головоломки необходимо использовать более сложные алгоритмы, в частности алгоритмы с возвращением, то сложность головоломки достаточно велика.
Описание программы
Объем этого раздела ПЗ предполагается до 10 страниц. Здесь отражены:
- выбор и обоснование выбора среды разработки;
- описание интерфейса (описание форм, логики их отображения, система управления – меню, панели инструментов, цветосочетания, общего стиля приложения, компоненты, используемые на формах, их свойства, обрабатываемые события);
- программно-аппаратные ресурсы ПК, минимальное наличие которых предполагает возможность использования приложения;
- оптимальная конфигурация ПК, при которой быстродействие системы максимальное.
Описывается логика работы программы, реализация отдельных процедур, функций, переопределяемые свойства и методы объектов.
Этот раздел предназначен программисту, который будет сопровождать программу, модифицировать ее, настраивать ее для работы в изменяющихся условиях.
Описание применения
Объем этого раздела ПЗ предполагается 4–8 страниц. Здесь необходимо описать процесс взаимодействия пользователя с приложением, указать основные состояния (со ссылками на фрагменты экранных форм), в которых может находиться система, как и в какие директории устанавливается приложение, назначение всех файлов приложения, правила подготовки исходной информации, руководство по использованию каждой функции приложения.
Описываются порядок установки приложения, рекомендации по его модификации и усовершенствованию, требования к использованию программы, правила работы с ней.
Это описание предназначено конечному пользователю, которому не важно как реализована та или иная функция, а важно как добиться от программы выполнения всех ее функций в соответствии со спецификациями.
Заключение
Объем 1–2 страницы. Выводы по результатам выполненной работы должны состоять из нескольких обобщающих пунктов, подводящих итог проведенной работы, и отражать возможные пути ее практического использования.
В заключении необходимо указать как выполнена поставленная задача, какие функции не реализованы и объяснить причину этого, какие изменения и добавления возможны в будущем, что необходимо доработать, чтобы улучшить ее характеристики, расширить область применения.
Список использованных источников
Этот раздел должен содержать перечень источников, цитируемых и используемых при написании курсового проекта, которые следует располагать по алфавиту авторов или заглавий (в случае четырех авторов и более). Сведения об источниках необходимо привести в соответствии с требованиями ГОСТ 7.1–2003 (приложение Г).
Приложения
Приложения оформляются как продолжение работы на последующих ее страницах, располагая их в порядке появления ссылок на них в тексте. В приложения следует включать вспомогательный материал, необходимый для полноты восприятия: формы, структуры таблиц базы данных, таблицы вспомогательных данных, схемы алгоритмов и программ, разработанных в процессе выполнения проекта, иллюстрации вспомогательного характера, текст программы. Текст программы должен содержать достаточное количество комментариев (вводных и контекстных). Во вводном комментарии программного модуля должны содержаться: назначение модуля, сведения о разработчике, сведения об обрабатываемых в данном модуле данных и т.п. Каждая процедура и функция пользователя должны также содержать сведения о назначении данной подпрограммы, ее применении, описание формальных параметров.
