
- •1. Назначение и объем курсовой работы. Выбор задания
- •2. Разработка технического задания
- •3. Оценивание курсовой работы
- •3. Содержание отчета
- •4. Задание на курсовую работу
- •5. Постановка задачи
- •6. Внешняя спецификация программы
- •7. Метод решения задачи
- •8. Описание алгоритма
- •8.1. Структура данных
- •8.2. Выделение подпрограмм
- •8.3. Алгоритмы главной программы и подпрограмм
- •9. Структура программы
- •10. Пример программы
- •Варианты индивидуальных заданий
- •Игра «Жизнь».
- •Игра «Минер».
- •Игра «Космос».
- •Игра «Сапер».
- •Игра «Города».
- •Игра «Поле Чудес».
- •Игра «Животные».
- •Игра «Крестики – нолики».
- •Игра «6 пешек».
- •Игра «Спички».
- •Игра «Быки и коровы».
- •Игра «Волки и овцы».
- •12. Библиографический список
- •109028 Москва, б. Трехсвятительский пер., 3/12.
- •113054 Москва, ул. М. Пионерская, 12
ПРАВИТЕЛЬСТВО РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное образовательное учреждение
высшего профессионального образования
Национальный исследовательский университет
«Высшая школа экономики»
Московский институт электроники и математики
Национального исследовательского университета
«Высшая школа экономики»
Кафедра информационных технологий
и автоматизированных систем
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
для выполнения курсовой работы по дисциплине
«Программирование»
(язык C++)
МОСКВА 2013
Составители: ст. преподаватель каф. ИТАС Е. А. Ерохина,
учебный ассистент Ю. В. Журин.
Методические рекомендации предназначены для студентов первого курса бакалавриата направления 230100.62 «Информатика и вычислительная техника», изучающих программирование на языках высокого уровня Паскаль и C/C++. В рекомендациях содержатся сведения по подготовке технического задания на разработку программы и поясняются основные стадии и этапы разработки. В заключение приводятся варианты индивидуальных заданий. Рекомендации содержат пример разработки и оформления программы на языке С++.
Методические указания для выполнения курсовой работы по дисциплине "Программирование” (язык C++) / Сост. Е.А. Ерохина, Ю. В. Журин; / Московский Институт Электроники и Математики НИУ ВШЭ. – М. : МИЭМ, 2013 . – 32 с.
Библиогр.: 3 назв.
ОГЛАВЛЕНИЕ
1. Назначение и объем курсовой работы. Выбор задания 4
2. Разработка технического задания 4
3. Оценивание курсовой работы 5
3. Содержание отчета 7
4. Задание на курсовую работу 9
5. Постановка задачи 9
6. Внешняя спецификация программы 10
7. Метод решения задачи 14
8. Описание алгоритма 15
8.1. Структура данных 15
8.2. Выделение подпрограмм 16
8.3. Алгоритмы главной программы и подпрограмм 16
9. Структура программы 18
10. Пример программы 19
1. Варианты индивидуальных заданий 26
12. Библиографический список 31
1. Назначение и объем курсовой работы. Выбор задания
Курсовая работа выполняется в четвертом модуле. Целью работы является выработка у студентов практических навыков по проектированию программ, их отладке и документированию.
На выполнение курсовой работы планируется 50 часов самостоятельной работы студентов.
Выполнение курсовой работы начинается с разработки технического задания (ТЗ) и завершается составлением отчета, в котором должно содержаться описание всей проделанной работы.
Задания выполняются по бригадам. В состав бригады может входить от 1 до 3 человек. При защите отчета работа каждого члена бригады оценивается индивидуально. В отчете должно быть явно указано, какие именно работы выполнял каждый член бригады.
Задания можно выбирать из числа приведенных в методических рекомендациях по выполнению курсовой работы. Кроме того, студенты могут сами сформулировать задачу и согласовать свой выбор с преподавателем. В этом случае бригаде студентов необходимо предварительно (до согласования задания) разработать набросок внешней спецификации программы.
2. Разработка технического задания
Техническое задание - это основной документ, регламентирующий все этапы выполнения курсовой работы. Техническое задание должно содержать следующие разделы:
назначение программы;
требования к программе;
требования к программной документации;
стадии и этапы разработки.
В разделе "назначение программы" указывается, для решения какой задачи разрабатывается программа.
В разделе "требования к программе" должны быть следующие подразделы:
"требования к функциональным характеристикам" - здесь перечисляются все функции, которые должна выполнять программа, требования к организации входных и выходных данных (именно требования, а не сама организация). Например, если в программе предполагается хранение данных в файле, в этом разделе сообщается об этом, но способ размещения данных в файле здесь не описывается;
"требования к надежности" - в этом подразделе указываются требования к обеспечению надежного функционирования программы (контроль входной информации, защита от сбоев, обработка ошибок и т.п.);
"требования к составу технических средств" - здесь указывается состав технических средств: тип ЭВМ, необходимый комплект внешних устройств и т.п.;
"требования к информационной и программной совместимости" - это требования к информационным структурам на входе и выходе, методам решения, языкам программирования, операционным системам и другим программным средствам, которые будет использовать данная программа. В курсовой работе разрабатывается программа на языке C++.
В разделе "требования к программной документации" указываются программные документы, которые следует разработать (в данной работе разрабатывается ТЗ).
В разделе "стадии и этапы разработки" устанавливаются необходимые стадии разработки, этапы и содержание работ, а также сроки их выполнения.
3. Оценивание курсовой работы
В приведенной ниже таблице отражены критерии оценивания курсовой работы. Контрольные сроки даны для 4 модуля 2012-13 учебного года.
№ (i) |
Содержание задания |
Отчетность |
Dead Line |
Макс. балл |
Доп. балл** |
|
№ 1* |
№ 2* |
|||||
1 |
Получение задания. Формирование бригад разработчиков. |
Формулировка задачи. Списки бригад. |
12 апреля |
1 |
0 |
0,2 |
2 |
Разработка технического задания (ТЗ). Разработка внешней спецификации (сценария) программы |
ТЗ. Внешняя спецификация |
25 апреля |
1
|
0 |
0,2 |
3 |
Разработка структуры входных и выходных данных |
Описание структуры |
||||
4 |
Разработка алгоритма |
Алгоритм |
30 мая |
2 |
1 |
0,2 |
5 |
Написание кода программы |
Программа |
||||
6 |
Разработка тестов. |
Тестовые примеры |
5 июня |
3 |
1,5 |
0,3 |
7 |
Отладка программы |
Отлаженный код (первая версия) |
||||
8 |
Тестирование программы, исправление ошибок |
Окончательная версия программы |
13 июня |
3 |
1,5 |
0,3 |
9 |
Написание отчета по курсовой работе |
Отчет |
||||
10 |
Защита отчета |
Оценка за курсовую работу |
13 июня |
10 |
– |
– |
* В графе «Максимальный балл» в первом столбце (№ 1) указаны баллы, которые студент получит при своевременной сдаче соответствующего этапа. Во втором столбце (№ 2) – баллы, которые будут получены, если сдача произойдёт в течение 2-х недель после DeadLine.
**Дополнительные баллы будут начисляться при своевременной сдаче соответствующего этапа (даже в случае если студент не набрал максимального балла за этот этап).
,
где И – итоговая оценка за курсовую работу,
Оi
– оценка за сдачу i-го этапа i=1,9,
О10 – оценка за защиту отчёта,
Д – дополнительные баллы.
Баллы за этапы 1-9 и дополнительные - начисляются всей бригаде. Балл за 10-й этап начисляется каждому студенту индивидуально.