Проект интегрированной среды для обучения программированию - Дипломная работа

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

Скачать работу Скачать уникальную работу

Чтобы скачать работу, Вы должны пройти проверку:


Аннотация к работе
По прогнозам Министерства образования и науки РФ в ближайшие пять лет ожидается сокращение численности студентов высших учебных заведений. Одновременно с этим по результатам исследований аналитического центра REAL-IT потребность в IT-специалистах в ближайшие пять лет продолжит расти, а в случае модернизационного сценария развития российской экономики при текущем уровне выпуска вузов потребность в IT-специалистах станет неудовлетворительной, что сделает невозможным такой сценарий. Организовать выпуск IT-специалистов, удовлетворяющий потребности государства, можно только путем автоматизации процесса обучения. Однако в последние годы в вуз приходит все больше школьников, не изучавших программированию в школе, поэтому в настоящее время требуется осуществлять обучение программированию с начального уровня. При этом большинство школ и университетов используют профессиональные промышленные системы разработки программного обеспечения и языки высокого уровня со сложной формальной грамматикой, что затрудняет процесс обучения программированию, заставляя обучаемого разбираться в особенностях синтаксиса и реализации конкретного языка.Integrated Development Environment) - система программных средств, используемая программистами для разработки программного обеспечения.Операции, выполняемые с контейнерами, делятся на операции с элементами контейнера (поиск элементов и групп элементов, добавления и удаления отдельных элементов или групп элементов, специальные операции), операции доступа и операции с контейнером как объектом (сцепление, слиянием, объединение двух контейнеров как объединение множеств, объединение двух контейнеров как пересечение множеств). Условный оператор «если» имеет следующий формат: если условие тогда операторы; Конструкция операторы; называется блоком. Оператор цикла только один и имеет следующий синтаксис: цикл условие: операторы; Определение функции имеет вид: тип имя (параметры) операторы;Интерпретатор языка программирования - языковой процессор, который построчно анализирует исходную программу и одновременно выполняет предписанные действия, а не формирует на машинном языке скомпилированную программу, которая выполняется впоследствии. Программа, написанная в семантическом редакторе, в памяти системы представлена в виде семантического дерева, а все объекты уже лежат в куче, поскольку помешаются в память при наборе программы. Такой подход позволяет сразу интерпретировать программу без предварительной компиляции путем обхода семантического дерева в глубину с запуском процедуры интерпретации у текущего оператора. Каждый оператор реализует собственную процедуру интерпретации. В случае возникновения ошибки процесс интерпретации прерывается, и управление передается отладчику.Произвести проверку правильности выполнения лабораторной работы, а также оценить навык программиста можно путем сравнения эталонной семантической модели программы, написанной преподавателем, с семантической моделью программы, написанной обучаемым. Первоначальная проверка лабораторной работы производится с помощью серии тестов, генерируемых системой автоматически на основе эталонного решения преподавателя. Для этого система анализирует входные параметры эталонной программы, вычисляет диапазоны значений данных, указанных в условии задачи, и генерирует несколько десятков вариантов тестовых входных данных. Далее система производит тестирование программы, написанной обучаемым, на тех же наборах входных данных и сравнивает результаты тестов. В случае если программа успешно преодолевает первый этап, она подвергается сравнению с семантической моделью эталонной программы.Тогда данное задание будет выглядеть следующим образом: Написать функцию, которая формирует выходной файл, записывая в него K случайных целых чисел из диапазона от хн до хк. Очевидно, что параметр K зависит от параметров хн и хк , и имеет естественную нижнюю границу 1 (при хн = хк - в данном случае будет K одинаковых чисел), но верхняя может быть любой - она и будет являться параметром. В формулировке задания указаны следующие данные: тип случайных чисел, способ задания количества случайных чисел, способ задания границ диапазона, тип выходного файла, способ задания имени выходного файла. Пусть в шаблоне определено n параметров и пусть количество значений параметра pi равно mi. При условиях m3 = 4 и m4 = 3 (параметр p4 обязательно задается способом, не совпадающим со способом задания параметра p3), m2 = 4 и m7 = 4 (параметр p7 обязательно задается способом, не совпадающим со способом задания параметра p2) имеем N = 15360.Система состоит из четырех компонентов: семантического редактора, интерпретатора, модуля оценки и модуля генерации вариантов заданий. В ходе работы с модулем генерации вариантов лабораторных работ преподаватель оформляет условие задачи в виде шаблона, задает ограничения и реализует эталонное решение задачи. Далее обучаемый выбирает лабораторную работу, получает свой вариант задания, пишет программу, периодически запуская ее на исполнение и просматривая результаты,

План
СОДЕРЖАНИЕ

Введение

1. Технический проект

1.1 Описание предметной области

1.1.1 Семантический редактор

1.1.2 Интерпретатор языка высокого уровня

1.1.3 Модели оценки программы и навыка программиста

1.1.4 Генерация вариантов заданий на основе шаблонов

1.2 Технология обработки информации

1.2.1 Входные и выходные данные

1.2.2 Пользователи системы

1.2.3 Варианты использования системы

1.3 Информационно-логическая модель системы

1.3.1 Структура и содержание входных и выходных данных

1.3.2 Процесс обработки информации

1.3.3 Требования к интерфейсу пользователя

1.4 Требования к техническому и программному обеспечению

2. Рабочий проект

2.1 Общие сведения о работе системы

2.2 Функциональное назначение

2.3 Установка и выполнение программного продукта

2.4 Описание структуры системы

2.5 Даталогическая модель системы

2.6 Общий алгоритм программного продукта

2.7 Руководство пользователя

2.8 Сообщения системы

3. Программа и методика испытаний

Заключение

Литература

Приложение 1. Диаграмма классов

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

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

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

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

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

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

Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность
своей работы


Новые загруженные работы

Дисциплины научных работ





Хотите, перезвоним вам?