|
||||||||||||
|
||||||||||||
|
|||||||||
МЕНЮ
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА - РЕФЕРАТЫ - Автоматизированная обучающая система по дисциплине "Программирование"Автоматизированная обучающая система по дисциплине "Программирование"Федеральное агентство по образованию РФ ГОУ ВПО "Брянский государственный университет имени академика И.Г. Петровского" Социально-экономический институт Финансово-экономический факультет Кафедра автоматизированных информационных систем и технологий КУРСОВАЯ РАБОТА по дисциплине "Разработка и применение пакетов прикладных программ" на тему: Автоматизированная обучающая система по дисциплине «Программирование» Брянск 2010 Содержание
Цель: создать автоматизированную обучающую систему по дисциплине «Программирование» для студентов ВУЗов. Задачи: 1. Изучить и проанализировать предметную область.2. Изучить и сравнить программы-аналоги.3. Обобщить и систематизировать материал для автоматизированной обучающей системы.4. Написать техническое задание к проекту.5. Разработать автоматизированную обучающую систему, протестировать, провести эксперименты исключительных ситуаций.6. Провести экономический анализ эффективности проектного решения.Источниками информации при написании курсовой работы служили учебные пособия для вузов, нормативные документы, электронные ресурсы сети Интернет.Методы исследования: 1. Метод математического моделирования.2. Монографический метод.3. Метод экономического анализа.4. Экспериментальный метод.5. Аналитический метод.6. Синтетический метод.Курсовая работа насчитывает 46 страниц основного текста, 26 рисунков, -4 таблицы и 7 формул.1. Аналитическая часть1.1 Описание предметной областиВ данной курсовой работе требуется автоматизировать процесс обучения студентов по дисциплине «Программирование». Для описания предметной области воспользуемся диаграммой IDEF0, составленной в программе AllFusion Process Modeler R7.Рисунок 1.1. Описание предметной области IDEF0 диаграмма №1На рисунке 1.1 рассмотрен учебный процесс изучения курса программирования в вузе. Этот процесс регламентируется учебной программой курса и учебным планом. Обучение ведется под контролем преподавательского состава, которому оказывается помощь со стороны учебно-вспомогательного персонала (лаборанты и мастера производственного обучения). Также в процессе обучения задействованы программные и технические средства. В качестве итогового испытательного мероприятия выступает экзамен, позволяющий оценить уровень облученности студента. По результатам сдачи экзамена выставляется итоговая оценка.При разбиении сложного процесса на составляющие его функции применяется принцип декомпозиции. Декомпозиция позволяет представить модель системы в виде иерархической структуры отдельных диаграмм, что делает ее менее перегруженной и легко усваиваемой. На рисунке 1.2 изображена декомпозиция учебного процесса.Рисунок 1.2. Описание предметной области. IDEF0 диаграмма №2Декомпозиция наглядно отражает этапы реализации образовательного процесса: вводная часть, сообщение теоретического материала, практические задания, проверка знаний и подведение результатов. На каждом из этапов обязательно взаимодействие преподавателей с обучаемым с целью передачи последним знаний и опыта. В некоторых подпроцессах участвует также вспомогательный персонал. Во время обучения используются ПО и технические средства. Весь процесс обучения регламентируется программой курса и учебным планом. В конце подводятся итоги обучения, выносится оценка знаний студента.На рисунке 1.3 представлена декомпозиция процесса проверки знаний. Проверка знаний студента проходит с помощью тестирования. После того, как студент получает задания и решает их, преподаватель проверяет правильность решения и выставляет оценку.Рис 1.3. Описание предметной области. IDEF0 диаграмма №3Итак, в ходе изучения предметной области были выявлены следующие проблемы:· на прохождение каждого этапа в процессе обучения затрачивается слишком много времени;· тестирование и проверка тестов не всегда осуществляется с помощью ПО и технических средств, а зачастую происходит вручную;· сообщение теоретического материала происходит в традиционной форме и требует активного участия, как студентов, так и преподавателей;· при подведении результатов и оценивании знаний студента играет роль людской фактор, что зачастую не всегда сказывается благоприятным образом на знании студента.Анализ научной литературы показывает, что данные проблемы могут быть решены с использованием автоматизированных обучающих систем.Автоматизированные обучающие системы представляют собой комплексы научно-методической, учебной и организационной поддержки процесса обучения, проводимого на базе компьютерных, или, как их также называют, информационных технологий. С позиций современной дидактики введение информационной среды и программного обеспечения внесло огромное количество новых возможностей во все области процесса обучения. Компьютерные технологии представляют собой принципиально новые средства обучения. За счет своего быстродействия и больших резервов памяти они позволяют реализовывать различные варианты сред для программированного и проблемного обучения, строить различные варианты диалоговых режимов обучения, когда так или иначе ответ учащегося реально влияет на ход дальнейшего обучения.Вследствие этого современный педагог с неизбежностью должен осваивать новые образовательные подходы, опирающиеся на средства и методы индивидуального компьютерного обучения. В общем случае педагог получает доступ к компьютерным средствам, информационной среде и программным продуктам, предназначенным для обеспечения преподавательской деятельности. Все эти средства образуют комплексы автоматизированных обучающих систем.В рамках автоматизированных обучающих систем на сегодняшний день решается ряд задач обучения. В первую группу можно отнести задачи проверки уровня знаний, умений и навыков учащихся до и после обучения, их индивидуальных способностей, склонностей и мотиваций. Для таких проверок обычно используют соответствующие системы (батареи) психологических тестов и экзаменационных вопросов. К этой же группе относятся задачи проверки показателей работоспособности учащихся, что осуществляется путем регистрации таких психофизиологических показателей, как скорость реакции, уровень внимания и т.д. [7]. К таким системам относится система «Федерального интернет - тестирования в сфере профессионального образования».Рисунок 1.4. Сайт Федерального интернет - тестирования в сфере профессионального образованияИнтернет-экзамен в сфере профессионального образования (ФЭПО) проводится в форме компьютерного тестирования студентов и направлен на проверку выполнения требований Государственных образовательных стандартов профессионального образования. Целью ФЭПО является формирование единых требований к оценке качества подготовки специалистов.В целях оказания помощи вузам при создании систем управления качеством подготовки специалистов на основе независимой внешней оценки Национальное аккредитационное агентство в сфере образования проводит эксперимент по введению Федерального экзамена в сфере высшего профессионального образования (ФЭПО). Содержанием эксперимента является проведение компьютерного Интернет-тестирования в части внешней оценки уровня подготовки студентов на соответствие требованиям государственных образовательных стандартов.Принципы ФЭПО:· принцип добровольности участия вузов;· принцип полного доверия вузам по вопросам соблюдения технологии проведения экзамена;· проведение экзамена в единое время по единым измерительным материалам;· два режима проведения экзамена: on-line off-line.ФЭПО - это тестирование студентов совокупности образовательных программ или одной образовательной программе всех вузов Российской Федерации с использованием среды Интернет в режиме off-line или в режиме on-line.ФЭПО позволит объективно оценить степень соответствия содержания и уровня подготовки студентов требованиям государственных образовательных стандартов.ФЭПО позволит сравнить результаты освоения стандарта студентами данного вуза с результатами других вузов.Результаты ФЭПО оформляются в виде информационно-аналитической карты, содержащей материалы, предназначенные для принятия решений в системе внутривузовского управления качеством подготовки.ФЭПО позволит эффективно использовать результаты экзамена при самообследовании для комплексной оценки вуза.Участие вузов в ФЭПО будет способствовать созданию системы обеспечения качества подготовки студентов на основе независимой внешней оценки [14].Вторая группа задач связана с регистрацией и статическим анализом показателей усвоения учебного материала: заведение индивидуальных разделов для каждого учащегося, определение времени решения задач, определение общего числа ошибок и т.д. К этой же группе логично отнести решение задач управления учебной деятельностью. Например, задач по изменению темпа предъявления учебного материала или порядка предъявления учащемуся новых блоков учебной информации в зависимости от времени решения, типа и числа ошибок. Таким образом, эта группа задач направлена на поддержку и реализацию основных элементов программированного обучения [7]. К таким системам относится «Интернет университет информационных технологий» (Интуит).Рисунок 1.5. Интернет университет информационных технологийИнтернет-Университет Информационных Технологий (ИНТУИТ) это частная организация, которая ставит следующие цели:· финансирование разработок учебных курсов по тематике информационно-коммуникационных технологий;· координация учебно-методической деятельности предприятий компьютерной индустрии по созданию учебных курсов по ИКТ;· обеспечение профессорско-преподавательских кадров вузов и их библиотек учебниками и методическими материалами по курсам ИКТ;· содействие органам государственной власти в области развития образовательных программ, связанных с современными информационными технологиями.Это частная организация, учредителями которой являются физические лица. Это даже не учебное заведение, по крайней мере, в том смысле, в котором этот термин используется в официальных документах. Проект существует за счет учредителей. Финансовую поддержку ему оказывают ряд российских и иностранных компаний и частных лиц. Некоторые курсы создаются при поддержке компаний и частных спонсоров, информация об этом специально указывается на сайте [10].Третья группа задач АОС связана с решением задач подготовки и предъявления учебного материала адаптации материала по уровням сложности, подготовки динамических иллюстраций, контрольных заданий, лабораторных работ самостоятельных работ учащихся. В качестве примера уровня таких занятий можно указать на возможности использования различных инструментов информационных технологий. Другими словами, использования программных продуктов, дающих возможность формирования различных сложных лабораторных и др. практических работ. Например, таких, как сборка «виртуального» осциллографа с последующей демонстрацией его возможностей по регистрации усилению или синхронизации различных сигналов. Аналогичные примеры из области химии могут касаться моделирования взаимодействия сложных молекул, поведения растворов или газов при изменении условий эксперимента. К этим системам относят электронные учебники [7].Электронный учебник - это продукт образовательного характера, отличие которого от традиционного учебника в том, что просмотреть его можно только с помощью компьютера. Электронный учебник так же, как и обычный, соответствует всем нужным учебным программам [17].Техническое обеспечение автоматизированных обучающих систем основано на локальных компьютерных сетях, включающих автоматизированные рабочие места (АРМ) учащихся, преподавателя и линии связи между ними. Рабочее место учащегося, кроме монитора (дисплея) и клавиатуры, может содержать принтер, такие элементы мультимедиа, как динамики, синтезаторы звуков, текстовые и графические редакторы. Цель этих всех технических и программных средств состоит в обеспечении учащихся средствами решения, справочным материалом и средствами регистрации ответов [15].В настоящее время разработано большое число электронных учебных материалов, в качестве которых выступают электронные учебники, электронные учебные пособия, автоматизированные обучающие системы и т.п. Существующие электронные учебные материалы решают те или иные задачи обучения с большей или меньшей эффективностью, которая определяется, прежде всего, степенью управляемости обучаемым в процессе обучения. В условиях нарастающего интереса, к созданию различных вариантов электронно-методических материалов возникает необходимость в классификации этих материалов с целью оценки их различия и определения области применения. Уже существует ряд классификаций обучающих систем по различным их свойствам. Однако нет классификации, отражающей управляемость обучаемого системой, что при расширяющемся использовании электронных учебных материалов, является важным на данный момент [12].Сайты, посвященные дисциплине «Программирование». В настоящее время существуют множество сайтов посвященных дисциплине «программирование». На сайтах изложено много теоретического материала, на форумах можно найти помощь по выполнению практического материала. В основном эти сайты настроены на самообучение.Информация на сайтах содержится разнородная. Это информация для начинающих, «середнячков» и профессионалов.1.2 Описание и сравнение программ-аналоговТаблица 1.1 Сравнение обучающих систем
· содержать теоретический материал тем по дисциплине «Программирование»; · содержать систему тестирования; · содержать систему оценивания знаний по результатам тестирования; · хранение результатов тестирования в памяти; · содержать задания для практических работ. Исходные данные: Материал по дисциплине «Программирование». Организация входных и выходных данных. Входные данные поступают с клавиатуры. Выходные данные отображаются на экране и при необходимости выводятся на печать. Требования к надежности. Предусмотреть контроль вводимой информации. Предусмотреть блокировку некорректных действий пользователя при работе с системой. Требования к составу и параметрам технических средств. Система должна работать на IBM-совместимых персональных компьютерах. Минимальная конфигурация: · тип процессора - Pentium III и выше; · объем оперативного запоминающего устройства - 256 Мб и более; · объем свободного места на жестком диске - 40 Мб. Рекомендуемая конфигурация: · тип процессора - Pentium Celeron 1,6 ГГц; · объем оперативного запоминающего устройства - 512 Мб; · объем свободного места на жестком диске - 60 Мб. Требования к программной совместимости. Программа должна работать под управлением семейства операционных систем Windows (Windows ХР / Vista / 7 и т.п.). Требования к программной документации Разрабатываемые программные модули должны быть самодокументированы, т.е. тексты программ должны содержать все необходимые комментарии. Разрабатываемая программа должна включать справочную информацию о работе программы, описания методов сортировки и подсказки учащимся. В состав сопровождающей документации должны входить: · пояснительная записка на пяти листах, содержащая описание разработки; · руководство пользователя. Календарный план работ Таблица 2.1 Календарный план работ
Рисунок 3.4. Функциональная схема программы 3.4 Алгоритм работы программыНа рисунке рисунок 3.4 изображен алгоритм работы электронного учебника по дисциплине «Программирование».Алгоритм -- это точное предписание, которое задаёт вычислительный (алгоритмический) процесс, начинающийся с произвольного исходного данного и направленный на получение полностью определяемым этим исходным данным результата [8].Пользователь запускает программу. Далее программа предоставляет возможность выбрать тему лекции. После выбора лекции появляется окошко с текстом лекции. После изучения материала лекции, пользователь может пройти тестирование по материалам лекции. После прохождения теста выдается результат решения теста. После объявления результата пользователь может завершить работу с программой или перейти к списку лекции.Рисунок 3.5. Алгоритм работы программы в виде блок-схемыПрограммный код реализации программы представлен в приложении.3.5 Проектирование интерфейсаПри разработке интерфейса автоматизированной обучающей системы по дисциплине «Программирование» мы руководствовались принципом простоты и удобства использования программы. В программе задействовано четыре формы. Функции первой формы (рисунок 3.6): выбор темы лекции, из нескольких предложенных программой, и отображение на экране лекционного материала. Вторая форма - тестовая. Она необходима для реализации функции тестирования студентов (рисунок 3.7). Третья форма нужна для ввода с клавиатуры фамилии и имя пользователя перед началом тестирования. Четвертая форма случит для отображения результатов тестирования пользователей программы (рисунок 3.8).Рисунок 3.6. Формы выбора и чтения лекций в режиме конструктораРисунок 3.7. Форма тестирования студентовРисунок 3.8. Формы программы в режиме конструктора 4. Эксплуатационная часть4.1 Требования к вычислительной системе1. Операционная система Windows XP/Vista/7 32/64 bit.2. Наличие установленной программы Microsoft Net Framework 2.0 и выше. При отсутствии этой утилиты система работать не будет.3. Тип процессора - Pentium Celeron 1,6 ГГц и выше.4. Объем оперативного запоминающего устройства - 512 Мб и более.5. Объем свободного места на жестком диске - 60 Мб.4.2 Установка программного продуктаУстановка данного программного продукта не требуется.4.3 Инструкция по эксплуатацииАвтоматизированная обучающая система по дисциплине «Программирование» поставляется на лицензионном диске.1. Вставьте лицензионный диск в дисковод.2. Откройте папку «Мой компьютер».3. В папке «Мой компьютер» откройте диск с программой.4. Запустите программу, кликнув по ярлыке запуска.5. Откроется окно с выбором тем лекций.6. Выберете тему лекции и нажмите кнопку «Выбрать».7. В окне появится лекция по выбранной теме.8. Далее вы можете вернуться к выбору лекций, нажав ссылку «Вернуться к выбору лекций» или пройти тест, нажав кнопку «Тест».9. Перед началом теста введите имя и фамилию с клавиатуры и нажмите кнопу «Начать тест».10. Запустится тест. Выберете правильный, на ваш взгляд вариант ответа и нажмите кнопку «Следующий вопрос». В тесте есть вопросы с многовариантным ответом. Выберете несколько, правильных вариантов и нажмите кнопу «Следующий вопрос».11. Когда тест будет пройден, появится диалоговое окно с результатами решения и вопросом: «Перейти к выбору лекций». Если нажать кнопку «Да» то появится окно с выбором лекции, если нажать кнопку «Нет», то программа завершит работу.12. В окне с выбором лекции есть ссылка «Посмотреть результаты». Если перейти по этой ссылке можно увидеть все результаты решения тестов, а именно число прохождения теста, фамилию и имя тестируемого и его результат решения.4.4 Демонстрационная часть работы продукта.Запускаем программу с лазерного диска при двойном щелчке по ярлыку запуска.На рисунке 4.1 показано, что при запуске программы пользователю будет предложено выбрать тему для самостоятельного изучения. Рисунок 4.1. Выбор темыРисунок 4.2. Лекция по теме. На рисунке 4.2 приведен пример лекции. После ознакомления с лекционным материалом по теме, пользователь может пройти тест.Рисунок 4.3. Ввод информации о студенте перед началом тестированияПеред прохождением тестирования нужно ввести имя и фамилию пользователя системы. В каждом тесте по десять вопросов (рисунок 4.3).Рисунок 4.4. Вопрос с многовариантным ответомРисунок 4.5. Вопрос с одним вариантом ответаВ тесте встречаются вопросы с многовариантными (рисунок 4.4) и одновариантным (рисунок 4.5) ответами.Рисунок 4.5. Результаты тестированияПосле прохождения теста пользователь сможет увидеть результаты решения. На рисунке 4.5 показан результат решения одного из тестов. Количество правильных ответов - четыре из десяти возможных. Пользователю предложена дальнейшая работа с программой. Для этого на вопрос «Перейти к выбору лекций нажать кнопку «Да», или завершить работу с программой, нажав кнопку «Нет».Рисунок 4.6. Результаты тестирования Все результаты тестов можно посмотреть после тестирования (рисунок 4.6). В таблице результатов отражено дата прохождения теста, фамилия, имя студента и его результат.5. Экспериментальная частьСерьезные приложения должны надежным образом обрабатывать исключительные ситуации, сохранять, если возможно, выполнение программы или, если это невозможно, аккуратно ее завершать. Написание кода, обрабатывающего исключительные ситуации, всегда было непростой задачей, и являлось источником дополнительных ошибок [16].Проведем эксперимент по созданию исключительной ситуации с электронным учебником по дисциплине «Программирование».Пусть файл с результатами тестирования удалили студенты из папки с программой. Запустим программу (рисунок 5.1).Рисунок 5.1. Запуск программы в исключительной ситуацииПрограмма запустилась без ошибок и системных сообщений. Теперь попробуем посмотреть результаты тестирования прошлых студентов (рисунок 5.2).Рисунок 5.2. Поведение программы в исключительной ситуацииК сожалению, результаты прошлого тестирования студентов утеряны. Программа в корневом каталоге создала новый файл и при повторном тестировании будет произведена запись результатов в этот файл. Значит, тестирование можно провести заново и результаты тестирования будут фиксироваться и сохраняться.Проведем еще один эксперимент по созданию исключительной ситуации с электронным учебником по дисциплине «Программирование». Теперь студенты удалили файлы с лекциями по темам. При попытке запуска лекций программа выдаст системную ошибку (рисунок 5.3).Рисунок 5.3. Критическая ошибка программы6. Экономическая частьПрограммный продукт в данной курсовой работе будет выполняться индивидуальным разработчиком (студенткой). Решение данной задачи будет проводиться на ЭВМ. Общее ознакомление с предметной областью проходило до решения об изучении и возможности создания программного продукта для решения задач предметной области (определяется техническим заданием). Предполагаемая продолжительность разработки программного комплекса была выбрана в количестве 45 дней. Это позволит не затягивать с выходом продукта и в тоже время не сильно сокращает сроки, что обеспечивает нормальную стоимость работ и желаемую прибыль. 6.1 Определение вида и длительности работ Продолжительности этапов разработки программного комплекса сведены в таблицу 6.1. Продолжительность первого этапа и его работ определяется по результатам предварительного исследования. Общая трудоемкость этого этапа составляет 18% от всего времени. Т1=Траб/100*18 =8 дней. Продолжительность остальных этапов и работ определяется по методу удельных весов: (6.1), где Т1, Т2 - соответственно, определяемая трудоемкость этапа и трудоемкость известного этапа; У1, У2 - соответственно, удельный вес тех же этапов в общей трудоемкости разработки программного комплекса. Этапы и трудоемкость работ показаны в таблице 6.1. Таблица 6.1 Продолжительность этапов разработки программного комплекса
Рисунок 6.1. Этапы и трудоемкость работ Оценивается наиболее вероятная продолжительность работ по формуле = 8(6.2), где Р - число исполнителей на данной работе. Коэффициент перехода рабочих дней в календарные дни = 45 / 365 = 0.12. Ожидаемое время рассчитывается по формуле: =4(6.3), гдеtожд - трудоемкость выполнения отдельных видов работ, человеко-дни; tmin- минимально возможная трудоемкость выполнения отдельных видов работ, дни;tmax - максимально возможная трудоемкость выполнения отдельных видов работ, дни;tнв - наиболее вероятная трудоемкость выполнения отдельных видов работ, дни. tmax = 15 tmin = 10 Итог: ожидаемое время работы над проектом 37 дней не превышает изначально предполагаемую продолжительность работ. 6.2 Определение заработной платы исполнителей Было принято решение о том, что заработная плата не будет начисляться, так как исполнитель работы один. Т.е. доход исполнителя будет равен прибыли, полученной от продажи программного продукта. Без начисления заработной платы затраты на создание программного продукта существенно сократятся. 6.3 Составление сметы затрат Сметная стоимость определяется статьями калькуляции. 1. Накладные расходы. 2. Прочие расходы: диски и упаковка (100 шт.). Диски: 100 шт. по 7 рублей, полиграфические услуги: 100шт. упаковок по 10 руб. Итого 1700 руб. Смета затрат на выполнение представлена в таблице 6.3. Таблица 6.2 Смета затрат на выполнение
6.4 Расчет предполагаемой прибыли Итак, общие затраты на создания программного продукта составляют 2200 рублей. Исходя из 50% рентабельности, сумму, которую мы хотим выручить, рассчитаем по формуле С = З + П = 2200 + 1100 3300 руб. (6.4) Эта сумма без налога на добавленную стоимость (НДС). Планируется ее получить от продажи 100 программных продуктов. Анализ рынка говорит, что реализовать такое количество не составит особых проблем. Исходя из этого, посчитаем цену одного программного комплекса без учета НДС Ц = С / 5 = 3300 / 100 = 33 руб.(6.5) Теперь посчитаем окончательную цену одного программного продукта с учетом НДС 18%. НДС = ((З + П) / 100) * 0.18 = 33 * 0.18 6 руб.(6.6) С учетом НДС цена программного продукта составляет: Цпп = Ц + НДС 40 руб.(6.7) Процентное соотношение себестоимости, прибыли и налогов для ста комплектов продукта представлены на рисунке 2. Рисунок 6.2. Процентное соотношение себестоимости, прибыли и налогов для 100 комплектов продукта На рисунке 6.2 показана динамика роста прибыли от продажи программного продукта относительно числа экземпляров. Рисунок 6.3. Динамика роста прибыли от продажи ПП 6.5 Экономическая целесообразность разработки При разработке программного продукта значительное внимание уделяется экономическому обоснованию необходимости проведения данного комплекса работ по его созданию. Стоимость конечного продукта для потребителя не высока всего 40 руб. Разработка данного программного продукта ведется для образовательных учреждений. Поэтому цена одного лицензионного диска очень важна. Чем ниже цена, тем больше вероятность, что программный продукт купят. При цене всего 40 рублей, диски с программой быстро купят. Покупателями станут преподаватели вузов и учителя других коммерческих учебных заведений. При продаже 100 лицензионных дисков, разработка программы не просто окупится, а принесет прибыль в размере 1100 рублей. Если при продаже всех лицензионных дисков с программой, на рынке все еще будет спрос, то при дополнительном выпуске лицензионных копий, при минимальных затратах, мы получим еще какой-то процент прибыли. В итоге можно сделать вывод, что разработка данного программного продукта целесообразна. ЗаключениеДанная автоматизированная система по дисциплине «Программирование», разработанная в ходе выполнения данной работы, является актуальным на сегодняшний день, так как многие пользователи нуждаются в автоматизированном простом и быстром средстве обучения. Программа может быть успешно внедрена в учебный процесс, что соответственно повысит качество знаний. С экономической точки зрения внедрения целесообразно.Программа соответствует все требованиям, предъявленным к ней. В нее входит: лекционный материал по дисциплине «Программирование», тестовые задания по темам лекций, результаты тестирования записываются в файл, который потом можно посмотреть в программе.Разработанный учебник устойчиво выполняет все свои функции, что делает его применимым в процессе обучения. Но теперь стоит задача сделать учебник еще более совершенным и более расширенным.Список литературы1. ГОСТ 7.32-2001. Отчет о научно-исследовательской работе. Структура и правила оформления, Введен 01.01.2001. М.: Изд-во стандартов, 2001. 9 с.2. ГОСТ 2.105-95. Общие требования к текстовым документам, Введен 02.05.1995. М.: Изд-во стандартов, 1995. 10 с.3. ГОСТ Р 7.0.5-2008. Библиографическая ссылка. Общие требования и правила составления, Введен 15.05.2008. М.: Изд-во стандартов, 2008. 8 с.4. ГОСТ 7.1-2003. Библиографическая запись. Библиографическое описание. Общие требования и правила составления, Введен 01.01.2003. М.: Изд-во стандартов, 2003. 11 с.5. ГОСТ 7.80-2000. Библиографическая запись. Заголовок. Общие требования и правила составления, Введен 01.01.2000. М.: Изд-во стандартов, 2000. 9 с.6. ГОСТ 19.201-78. Техническое задание. Требования к содержанию и оформлению. Введен 18.12.1978. М.: Изд-во стандартов, 1978. 11 с.7. Автоматизированные обучающие системы [Электронный ресурс] URL: http://www.tspu.tula.ru/ivt/old_site/umr/nit/lect/lect4.htm (Дата обращения: 14.11.2010).8. Википедия. Свободная энциклопедия. Официальный сайт. URL http://ru.wikipedia.org/wiki/Алгоритм, (Дата обращения: 14.11.2010).9. Горюнова М.А., Горюхова Т.В., Кондратьева И.Н., Рубашкин Д.Д. Электронные образовательные издания. Учебно-методическое пособие. СПб.: ЛОИРО, 2003.10. Интернет университет информационных технологий: Официальный сайт. URL: http://www.intuit.ru (Дата обращения: 14.11.2010).11. Могилёв А. В. Информатика. - М.: «Академия»,1999.12. Пак Н.И. Нелинейные технологии обучения в условиях информатизации: Учебное пособие. Красноярск: РИО КГПУ, 200413. Олейников Б.В. Проблемы и особенности преподавания информатики и программирования в вузе с учетом современных требований. Красноярский государственный университет, 1997. URL: http://www.nsu.ru/archive/conf/nit/97/c5/node12.html (Дата обращения: 14.11.2010).14. Федеральный интернет-экзамен в сфере профессионального образования: Официальный сайт. URL: http://www.fepo.ru (Дата обращения: 14.11.2010).15. Чистохвалов В.Н. Проблемы организации учебного процесса в вузе в системе зачетных единиц. Российский университет дружбы народов (РУДН), 2006. URL:http://www.rudn.ru/?pagec=293 (Дата обращения: 14.11.2010).16. Шилдт Г. С# Учебный курс. Программирование. СПб.: Питер, 2003.17. Электронный словарь: Официальный сайт. URL: http://chtotakoe.info/articles/elektronnyj_uchebnik_858.html (Дата обращения: 14.11.2010)ПриложениеПриложение 1Код формы с лекциями namespace Kursach {public enum Modes { Lecture, ChooseLecture } public partial class LecturesForm : Form { private ChoiseButtons buttons; private DirectoryInfo[] lecturesDirectories; private DirectoryInfo currentLectureDirectory; private Point startPosition = new Point(5, 15); private Size buttonSize = new Size(200, 30); private int distance = 5; private Modes currentMode; public LecturesForm(string folderPath) { InitializeComponent(); buttons = new ChoiseButtons(ButtonTypes.RadioButton, startPosition.X, startPosition.Y, buttonSize.Width, buttonSize.Height, distance); DirectoryInfo directory = new DirectoryInfo(folderPath); lecturesDirectories = directory.GetDirectories(); foreach (DirectoryInfo lectureDirectory in lecturesDirectories) { groupBoxLectures.Controls.Add(buttons.AddNextButton(lectureDirectory.Name)); } SetChooseLectureMode(); } private void button1_Click(object sender, EventArgs e) { if (currentMode == Modes.ChooseLecture) { List<int> selected = buttons.GetSelected(); if (selected.Count == 0) { MessageBox.Show("Выберите лекцию!", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Information);return; } else { currentLectureDirectory = lecturesDirectories[selected[0]]; try { FileStream fileStream = new FileStream(currentLectureDirectory.FullName + "\\lecture", FileMode.Open); StreamReader streamReader = new StreamReader(fileStream); richTextBoxLecture.Text = streamReader.ReadToEnd(); streamReader.Close(); fileStream.Close(); } catch { TestForm.ShowCriticalErrorMessage("Не найден файл с лекцией\nПриложение будет закрыто");}}SetLecturesMode(); } else { InitForm form = new InitForm(); if (form.ShowDialog() == DialogResult.OK) { new TestForm(currentLectureDirectory.FullName, currentLectureDirectory.Name, form.UserName, this).Show(); } } } private void SetLecturesMode() { currentMode = Modes.Lecture; buttonChoose.Text = "Тест";richTextBoxLecture.Visible = true; linkLabelResults.Visible = false; groupBoxLectures.Visible = false; richTextBoxLecture.Dock = DockStyle.Fill; linkLabelBack.Visible = true; this.MaximumSize = new Size(); this.MinimumSize = new Size(); this.Size = new Size(739, 419); this.MaximizeBox = true; this.Text = currentLectureDirectory.Name; buttonChoose.Select(); } private void SetChooseLectureMode() { currentMode = Modes.ChooseLecture; linkLabelResults.Visible = true; buttonChoose.Text = "Выбрать";richTextBoxLecture.Visible = false; groupBoxLectures.Visible = true; linkLabelBack.Visible = false; this.Text = "Выбор лекции";this.MaximumSize = new Size(739, 419); this.MinimumSize = new Size(739, 419); this.Size = new Size(739, 419); this.MaximizeBox = false; } private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { SetChooseLectureMode(); } private void LecturesForm_VisibleChanged(object sender, EventArgs e) { if (Visible == true) { SetChooseLectureMode(); } } private void linkLabel1_LinkClicked_1(object sender, LinkLabelLinkClickedEventArgs e) { new ResultsForm().ShowDialog(); } private void panel2_Paint(object sender, PaintEventArgs e) { } } } Код тестовой формыnamespace Kursach { public partial class TestForm : Form { private ChoiseButtons buttons; private Test test; private string userName; private List<int> correctAnswers = new List<int>(); private Point startPosition = new Point(5, 15); private Size buttonSize = new Size(200, 30);private int distance = 5;private Form parentForm; public TestForm(string path, string testName, string userName, Form formToClose) { parentForm = formToClose; formToClose.Hide(); InitializeComponent(); this.userName = userName; try { test = new Test(testName, path); } catch (Exception) { ShowCriticalErrorMessage("Один из файлов тестов имеет неверный формат\nПриложение будет закрыто");}test.BeginTest(); Question question = test.CurrentQuestion; buttons = new ChoiseButtons(ButtonTypes.CheckboxButton, startPosition.X, startPosition.Y, buttonSize.Width, buttonSize.Height, distance);InitQuestionWindow(question); questionsGroupBox.Select(); } private void InitQuestionWindow(Question question) { ButtonTypes type = (question.CorrectAnswers.Count != 1) ? ButtonTypes.CheckboxButton : ButtonTypes.RadioButton; buttons.Reset(type); questionsGroupBox.Controls.Clear(); this.Text = question.QuestonName; this.textBoxTest.Text = question.QuestonText; for (int i = 0; i < question.Answers.Count; i++) { buttons.AddNextButton(question.Answers[i + 1]); questionsGroupBox.Controls.Add(buttons[i]); } } public static void ShowCriticalErrorMessage(string message) { ShowErrorMessage(message, "Критическая ошибка");Environment.Exit(1); } private static void ShowInfoMessage(string info, string message) { ShowMessage(message, info, MessageBoxButtons.OK, MessageBoxIcon.Information); } private static void ShowErrorMessage(string info, string message) { ShowMessage(message, info, MessageBoxButtons.OK, MessageBoxIcon.Error); } private static void ShowMessage(string info, string message, MessageBoxButtons buttons, MessageBoxIcon icon) { MessageBox.Show(message, info, buttons, icon); } private void buttonNextQuestion_Click(object sender, EventArgs e) { List<int> selected = buttons.GetSelected(); bool isCorrect = false; if (selected.Count == test.CurrentQuestion.CorrectAnswers.Count) { isCorrect = true; foreach (int correctQuestionNumber in test.CurrentQuestion.CorrectAnswers) { if (!selected.Contains(correctQuestionNumber - 1)) { isCorrect = false; } } } if (isCorrect) correctAnswers.Add(test.CurrentQuestion.QuestionNumber); if (!test.IsTestEnded) { InitQuestionWindow(test.GoToNextQuestion()); } else { EndTest(); } } private void EndTest() { FileStream testFileStream = new FileStream("data\\results.txt", FileMode.Append); StreamWriter testStreamWriter = new StreamWriter(testFileStream); testStreamWriter.WriteLine(DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + "\t" + test.TestName + "\t" + userName + ": " + correctAnswers.Count + "/" + test.QuestionsCount);testStreamWriter.Close(); testFileStream.Close(); DialogResult userDecision = MessageBox.Show("Ваш результат - " + correctAnswers.Count + "/" + test.QuestionsCount + "\nПерейти к выбору лекций?", "Тест окончен", MessageBoxButtons.YesNo, MessageBoxIcon.Question);if (userDecision == System.Windows.Forms.DialogResult.Yes) { parentForm.Show(); this.Close(); } else { Environment.Exit(0); } } private void SetChooseLectureMode() { questionsGroupBox.Visible = false; buttonNextQuestion.Visible = false; textBoxTest.Visible = false; } private void TestForm_FormClosing(object sender, FormClosingEventArgs e) { if (parentForm.Visible == false) { parentForm.Close(); } } private void TestForm_Load(object sender, EventArgs e) { } } } Код формы результатовnamespace Kursach { public partial class ResultsForm : Form { public ResultsForm() { InitializeComponent(); try { FileStream fileStream = new FileStream("data\\results.txt", FileMode.Open); StreamReader streamReader = new StreamReader(fileStream); textBox1.Text = streamReader.ReadToEnd(); this.Select(); streamReader.Close(); fileStream.Close(); } catch { textBox1.Text = "Никто не проходил тесты"; }}private void textBox1_TextChanged(object sender, EventArgs e) { } } } Код информационной формыnamespace Kursach { public partial class InitForm : Form { public InitForm() { InitializeComponent(); } public string UserName { get { return textBoxName.Text + " " + textBoxSurname.Text; } } private void buttonBeginTest_Click(object sender, EventArgs e) { DialogResult = System.Windows.Forms.DialogResult.OK; } private void InitForm_Load(object sender, EventArgs e) {}}} |
РЕКЛАМА
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА | ||
© 2010 |