Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Языки программирования - метод. указания к КР

.pdf
Скачиваний:
17
Добавлен:
18.03.2016
Размер:
703.08 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ

Брянский государственный технический университет

Утверждаю Ректор университета

_______________А.В. Лагерев «______»_____________2013 г.

ЯЗЫКИ ПРОГРАММИРОВАНИЯ

Методические указания к выполнению курсового проекта

для студентов очной формы обучения специальностей 090303 – «Информационная безопасность

автоматизированных систем», 090900 – «Информационная безопасность»

Брянск 2013

2

УДК 004.43

Языки программирования: методические указания к выполнению курсового проекта для студентов очной формы обучения специальностей 090303 – «Информационная безопасность автоматизированных систем», 090900 – «Информационная безопасность». – Брянск: БГТУ, 2013. – 24 с.

Разработали: Ю.А. Леонов, к.т.н., доц. Е.А. Леонов, к.т.н., доц.

Научный редактор Ю.М. Казаков Редактор издательства Л.И. Афонина Компьютерный набор Ю.А. Леонов

Рекомендовано кафедрой «Компьютерные технологии и системы» БГТУ (протокол № 2 от 24.10.12)

 

 

 

Темплан 2013 г., п.

 

 

 

Подписано в печать

Формат 60х84 1/16.

Бумага офсетная.

Офсетная печать.

 

 

 

Усл. печ. л. 1,39 Уч. – изд. л. 1,39 Тираж 20 экз.

Заказ

Бесплатно

 

 

 

 

Издательство брянского государственного технического университета, 241035, Брянск, бульвар 50-летия Октября, 7, БГТУ. 58-82-49 Лаборатория оперативной полиграфии БГТУ, ул. Харьковская, 9

3

1. Цели и задачи курсового проектирования

Курсовой проект рассматривается как вид учебной работы по дисциплине «Языки программирования» и выполняется в пределах часов, отводимых на ее обучение.

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

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

Курсовое проектирование должно также прививать студентам навыки производства расчетов, составления технико-экономических записок

2. Содержание курсового проекта

Курсовой проект по дисциплине «Языки программирования» выполняется студентами, обучающимися на первом курсе по специальностям «Информационная безопасность автоматизированных систем», «Информационная безопасность». Он представляет собой комплексную работу, и ее выполнение требует использования знаний, полученных не только в одной конкретной дисциплине, но и в ходе предшествующего изучения фундаментальных и общетехнических дисциплин («Информатика», «Высшая математика»).

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

4

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

Всостав курсового проекта входят: программный комплекс, по-

яснительная записка и презентация.

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

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

Кроме того, записка должна иметь содержание, введение, за-

ключение, список использованных источников, приложения.

Рассмотрим содержание рекомендуемой структуры курсового проекта (прил. 3).

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

Объем введения должен составлять одной до трех полных стра-

ниц.

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

5

тов), а также отметить достоинства и недостатки для каждой программы.

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

Объем этой части записки составляет 10-15% от всего объема.

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

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

Рис. 1. Общий вид функциональной схемы программы

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

(ER-модель, от англ. entity-relationship model, ERM). Для описания

6

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

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

2).

Рис. 2. Общий вид диаграммы объектов программы

Также необходимо представить иерархию классов (рис. 3), описывающую совокупность классов и их родственные отношения. Для описания иерархии классов можно использовать унифицированный язык моделирования UML (Unified Modeling Language).

7

Рис. 3. Общий вид иерархии классов

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

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

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

8

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

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

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

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

Объем конструкторской части должен составлять 40-50% всего объема записки.

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

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

9

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

описание установки; описание запуска; инструкция по работе; сообщения пользователю.

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

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

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

Пункт «Инструкция по работе» содержит описание режимов работы, форматов ввода-вывода информации и возможных настроек.

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

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

Объем этой части работы составляет 30-40%.

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

10

количества обрабатываемых объектов и сложности их математического представления.

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

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

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

После выявленных ошибок необходимо их устранить. Также как

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

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

Объем этой части записки составляет 10-15% от всего объема.

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

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

Материал записки должен излагаться грамотным техническим языком, быть оформлен в соответствии с требованиями ЕСКД, ГОСТ, ЕСПД.