автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.18, диссертация на тему:Технология "активный блок" для создания распределенных обучающих программных комплексов
Оглавление автор диссертации — кандидата технических наук Хрущев, Сергей Анатольевич
Введение.
Глава I. Модель формализации интерактивного процесса обучения
1.1. Место формального описания в процессе проектирования обучающих систем.
1.2. Система обозначений.
1.3. Приобретение учащимися знаний - как основное назначение обучающей системы.
14. Первый этап построения формального описания обучающей системы: определение списка состояний.
15. Второй этап построения формального описания обучающей системы: построение переходов между состояниями.
I.6. Пример построения формального описания интерактивного процесса решения задачи.
Глава П. Технология создания обучающих и контролирующих систем «Активный блок».
П.1. Обзор основных технологий создания обучающих и контролирующих систем.
П.2. Браузер - универсальный клиент.
113. Выбор технологий СОМ и ActiveX в качестве базы для создания обучающих и контролирующих систем.
II.4. Технология "Активный Блок".
Глава Ш. Реализация технологии «Активный блок» на примере задачника по естественно - научным дисциплинам.
П1.1. Основные характеристики задачника.
П1.2. Структура и основные принципы построения задачника.
1П.З. Наиболее важные математические компоненты задачника
Введение 2001 год, диссертация по информатике, вычислительной технике и управлению, Хрущев, Сергей Анатольевич
Задача проектирования программного обеспечения достаточно интенсивно изучается с момента появления первых ЭВМ. Многие аспекты создания операционных систем и программ для решения задач вычислительной математики изучались в работах Г. Дейтела, А. Ахо, Ф. Брукса, Н. Вирта и др. [22, 7, 65, 75]. В настояш;ее время существует достаточно много методов моделирования программных систем, а также языков для их использования. Согласно Саммервиллю все методы можно разделить на три основные группы [71]:
• метод структурного проектирования сверху вниз;
• метод потоков данных;
• объектно-ориентированное проектирование.
Большинство современных систем проектирования программ (То-gether/J, RationalRose) используют для построения диаграмм описаний проекта язык моделирования UML (Unified Modeling Language), который преимущественно ориентирован на проектирование приложений деловой сферы [2]. Построенные с помощью UML диаграммы могут отражать различные процессы. Например, диаграммы классов и диаграммы взаимодействия предназначены, преимущественно, для непосредственного построения шаблонов программ, в то время как диаграмма распределения может служить для построения распределенной по узлам модели. Достаточно близко подходящей для решения задач проектирования обучающих систем является модель состояний, однако правила построения диаграмм состояний диктуют необходимость использования классов в качестве элементов значков состояний, что часто дает чрезмерно подробное описание, не отражающее общей сути решаемой задачи.
Все три приведенных выше метода позволяют проектировать программные системы как общего, так и специального назначения, однако они не отражают специфики создаваемой программы.
В то же время, результаты психологических исследований послужили основой для разработки педагогических аспектов проблемы развития мышления и творческих способностей обучаемых в процессе использования информационных технологий в обучении. Это нашло отражение в работах П.Я. Гальперина [19], В.В. Давыдова [21], Талызиной [47]. Традиционная теория обучения в высшей школе также хорошо разработана и освещена в трудах СИ. Архангельского [5, 6], Ю.К. Бабанского [8, 9], В.П.Беспалько [12, и;.
Однако, специализированные методы построения обучающих и контролирующих систем, пригодных для дистанционного обучения, разработаны довольно слабо. В большинстве случаев такие системы создаются с использованием стандартных методов, не всегда пригодных для этого. Такое положение дел объясняется, отчасти, относительной новизной данной области. Еще одной причиной может служить бурный рост количества различных технологий построения распределенных приложений, среди которых бывает довольно трудно выбрать технологии, необходимые для создания конкретного приложения.
Подавляющее большинство доступных в настоящее время систем дистанционного обучения представляют собой статические НТМЕ-страницы, построенные по принципу "вопрос + варианты ответов" либо "введите правильный ответ" [67, 70, 66, 62]. Данные системы не позволяют обучаемому практиковаться в многошаговом решении более или менее сложной математической задачи. Авторы подобных систем, по всей видимости, идут на сознательное их упрощение в силу ограниченности используемых программных средств и высокой трудоемкости создания законченного программного продукта на базе гипертекста и скриптовых языков. Дополнительной сложностью является то, что предназначенные для проектирования программ пакеты зачастую не подходят для разработки моделей программ, основанных на использовании Web-браузера, в силу своей ориентированности на традиционные приложения.
Из общей массы выделяется русскоязычный ресурс ANRI, на котором обучение основам серверных скриптовых языков сопровождается возможностью создания небольших собственных примеров программ, отправки их на сервер и немедленного получения результатов их работы. Все эти действия выполняются на одной web-странице, что достаточно удобно для пользователя. Данный метод обучения является существенно более продуктивным, чем обучение с помощью ввода ответов на контрольные вопросы, так как здесь достигается почти полная аналогия с реальным созданием серверных приложений. Однако такой вид обучения требует обязательного наличия некоторого центрального компьютера, на котором и выполняется обработка ввода пользователя, что, в свою очередь, не позволяет выполнять обучение в рамках простой сетевой среды или отдельного компьютера.
В нашей стране основы проектирования и оптимизации программ были заложены А.П. Ершовым и М.Р. Шура-Бура. В настоящее время данная тематика развиваются И.В. Поттосиным [38, 40, 41, 39] и другими учеными. Создание и применение нотаций, основанных на ориентированных графах и конечных автоматах, применительно к тестированию программ изучается такими авторами как И.Б. Бурдонов, A.C. Косачев [16], А. Баранцев [76'.
Общие принципы использования графов и конечных автоматов для тестирования программ исследуются уже достаточно давно. В последнее время изучаются вопросы построения обобщений графа состояния для тестирования классов ООП [72, 69, 68, 76]. В работе CD. Turner и D.G. Robson [72] изучается методология тестирования классов при помощи модели класса как конечного автомата. Имеются также специальные инструменты, способные строить обход графа состояний конечного автомата (ClassBench [68]). Проектирование же программ в настоящее время практически полностью базируется на моделировании поведения классов ООП с использованием UML. Возможно, что появляющиеся в настоящее время компонентные технологии в скором времени изменят сложившуюся ситуацию, так как создание приложений с использованием стандартных блоков, зачастую гораздо более крупных, чем классы, существенно меняет общую парадигму проектирования программ и собственно программирования.
В данной диссертации решается задача построения модели формализации интерактивного процесса обучения и разработки технологии создания обучающих и контролирующих систем, позволяющей на основе формальной модели программно поддерживать процесс обучения, в том числе и дистанционного. Кроме того, строятся базовые компоненты технологии, а также компоненты, специфичные для обучающих систем по теории вероятностей.
Таким образом, АКТУАЛЬНОСТЬ исследования обусловлена:
• происходящей в настоящее время ориентацией на использование Internet в учебном процессе;
• необходимостью разработки такой формальной модели обучающей системы, которая позволила бы проводить анализ качества системы без создания ее программной реализации;
• необходимостью создания технологии, позволяющей достаточно быстро строить обучающие и контролирующие системы, которые были бы доступны с отдельного компьютера, из локальной сети и через Internet.
• отсутствием на данный момент технологии, удовлетворяющей указанным требованиям.
ЦЕЛЬ данной работы состояла в решении следующих основных задач:
1) построение не зависящей от языка программирования и компьютерной среды разработки формальной модели интерактивного процесса обучения;
2) создание универсальной технологии построения обучающих и контролирующих систем, пригодной для создания программного обеспечения, способного функционировать на изолированной ЭВМ, в локальной сети и в Internet;
3) развитие существующих методов создания локальных и распределенных обучающих и контролирующих систем;
4) практическая реализация технологии в виде задачника по естественнонаучным дисциплинам.
При выполнении работы использовалась следующая МЕТОДИКА ИССЛЕДОВАНИЯ:
• был проведен анализ существующих методов проектирования и разработки программных продуктов в целом и обучающих систем в частности;
• выполнялся сравнительный анализ доступных технологий создания распределенного программного обеспечения;
• были изучены существующие в настоящее время локальные и распределенные обучающие и контролирующие системы;
• при разработке алгоритмов работы с формулами алгебры событий использовалось их отображение на систему множеств в общем положении;
• при создании алгоритмов проверки эквивалентности, независимости событий, декомпозиции формул, использовались методы теории вероятностей и теории компиляторов.
НАУЧНАЯ НОВИЗНА исследования выражается в том, что в результате анализа существующих методов проектирования и создания программного обеспечения разработана технология построения распределенных обучающих систем.
МЕТОДЫ ИССЛЕДОВАНИЯ:
В диссертации приведены результаты исследований, полученные с использованием методов вычислительной математики, теории вероятностей и случайных процессов, теории графов, теории алгоритмов и языков программирования.
ПРАКТИЧЕСКАЯ И ТЕОРЕТИЧЕСКАЯ ЦЕННОСТЬ РАБОТЫ выражается в следующем:
• применение разработанной модели формализации интерактивного процесса обучения позволяет моделировать обучающие и контролирующие системы. Это дает возможность вести их итеративную предварительную разработку и оценивать ее качество без создания программ для ЭВМ;
• структурные элементы предложенной технологии позволяют в сжатые сроки строить распределенные обучающие системы на основе компонентов;
• разработано программное обеспечение, содержащее в себе набор универсальных компонентов, пригодных для создания обучающих систем, а также компоненты для построения задачников по естественнонаучным дисциплинам;
• проведен сравнительный анализ основных методов создания обучающих и контролирующих систем.
Основные положения, выносимые на защиту:
1. Модель формализации интерактивного процесса обучения и представления его в виде ориентированного графа (возможно с циклами).
2. Разработанная технология "Активный блок", предназначенная для создания обучающих и контролирующих систем, доступных через Internet, из локальной сети и с отдельного компьютера.
3. Реализация технологии на примере задачника по естественнонаучным дисциплинам с протоколированием хода решения задач и всех действий пользователя. Математические компоненты "Калькулятор множеств" и "Визуализатор", позволяющие производить вычисления по формулам алгебры событий, проверять эквивалентность формул, работать с условными событиями и визуально представлять полученные результаты.
АПРОБАЦИЯ РАБОТЫ. Результаты диссертации докладывались на международной конференции "Интернет, общество, личность (ИОЛ-99)" (Санкт-Петербург, 1999), международной конференции "Новые информационные технологии в университетском образовании". (Новосибирск, 1999) а также на семинаре "Методы прикладной математики и информационные технологии в многодисциплинарных исследованиях и проектах" (Омск, 1998).
Структура диссертации. Диссертация состоит из введения, трех глав, заключения и приложений.
Заключение диссертация на тему "Технология "активный блок" для создания распределенных обучающих программных комплексов"
ЗАКЛЮЧЕНИЕ
В представленной работе решается задача построения не зависящей от языка программирования и компьютерной среды разработки формальной модели интерактивного процесса обучения. Создана формальная модель, позволяющая проектировать обучающие и контролирующие системы и проверять корректность построенных моделей с использованием аппарата теории графов и методики моделирования программных систем. С целью максимально полного отражения специфики обучающих программных комплексов, для построения моделей предложена специализированная нотация. Построены наборы простых тестов, выполнение которых позволяет легко проверять модели на правильность. На примере построения формального описания процесса интерактивного решения задачи показано применение предлагаемых методов.
Создана универсальная технология построения обучающих и контролирующих систем, пригодная для создания программного обеспечения, способного функционировать на изолированной ЭВМ, в локальной сети и в Internet. Технология базируется на использовании Web-браузера в качестве основы для создания обучающих программных комплексов. Выбор основанной на использовании браузера модели сделан в ходе анализа существующих в настоящее время методов создания обучающих систем. Практическая реализация технологии построения программного комплекса базируется на его формальной модели, ее состояниях и переходах между ними. В связи с очевидной сложностью реализации многих функций обучающих систем на базе исключительно скриптовых языков, предложена программная реализация, использующая технологию СОМ и набор компонентов ActiveX для создания ключевых деталей архитектуры создания обучающих программных комплексов. Введение компонентов ActiveX позволило добиться достаточной гибкости программной системы и, одновременно, довольно простой и быстрой реализации необходимых возможностей.
Проведен анализ различных вариантов построения обучающих и контролирующих систем с использованием Web-браузера. Предложены наиболее приемлемые варианты управления переходами между отдельными документами. Даны методы синхронизации загрузки документов во фреймах браузера, предложены стандартные механизмы инициализации как системы в целом, так и ее отдельных компонентов. Построен универсальный механизм динамической генерации элементов пользовательского интерфейса, управляющего переходами. Построена связь между наличием или отсутствием элементов интерфейса и состоянием программного комплекса в терминах формальной модели.
Технология реализована практически на примере задачника по естественнонаучным дисциплинам. В задачнике продемонстрированы основW W ТЛ ные преимущества, предоставляемые предложенной технологией. В ходе построения задачника создан базовый набор ActiveX-компонентов, который может быть расширен и использован повторно в проектах по созданию различных обучающих и контролирующих программных комплексов. В частности, созданы специализированные математические компоненты "Калькулятор множеств" и "Визуализатор", позволяющие производить вычисления по формулам алгебры событий, проверять эквивалентность формул, работать с условными событиями и визуально представлять полученные результаты.
Представлен метод ведения протокола работы пользователя с программным комплексом. С целью обеспечения возможности как ручной, так и автоматической обработки файлов протокола предложен специализированный набор тегов. Являясь достаточно простым и компактным. данный набор, тем не менее, позволяет описать процесс работы пользователя таким образом, что он впоследствии может быть легко восстановлен. Например, может быть написана специальная программа, читающая протокол и отображающая процесс решения задач в графической форме.
Данное исследование, разумеется, не исчерпывает тематику проектирования и построения распределенных программных комплексов. Дальнейшим развитием изучаемых в диссертации вопросов является разработка программного обеспечения для автоматизации построения формальных моделей. Перенесение процесса моделирования на ЭВМ открывает возможность создания инструментального средства, предназначенного для генерирования шаблонов HTML-документов соответствующих модели. Построение модуля расширения (plug-in) браузера позволит проводить тестирование программного комплекса на соответствие формальной модели в полуавтоматическом режиме.
Библиография Хрущев, Сергей Анатольевич, диссертация по теме Математическое моделирование, численные методы и комплексы программ
1. Айзеке С. Dynamic HTML . Санкт-Петербург: BHV - СПб., 1998. -488 с.
2. Аписелла М. UML упрощает описание проектов //Computerworld. -2000.-№16-17.-С. 40-41.
3. Армстронг Т. ActiveX: создание Web-приложений. -Киев: BHV, 1998. -590 с.
4. Арнольд К., Гослинг Дж. Язык программирования Java. СПб.: Питер-Пресс, 1996.-304 с.
5. Архангельский СИ. Лекции по теории обучения в высшей школе, М.: Высш. шк., 1974.-384 с.
6. Архангельский СИ. Учебный процесс в высшей школе, его закономерные основы, методы. М.: Высш. шк., 1980. - 368 с.
7. Ахо А., Хопкрофт Дж., Ульман Дж. Структуры данных и алгоритмы. -М.: Мир, Издат. дом "Вильяме", 2000. 382 с.
8. Бабанский Ю.К. Взаимосвязь закономерностей, принципов обучения и способов //Сов. Педагогика. 1982. - № П. - С 30-34.
9. Бабанский Ю.К. Интенсификация процесса обучения. М.: Знание, 1987. - Вып. 6.
10. Баранова Е.В. Методика создания формализованного описания учебного материала по математике для реализации компьютерного обучения: дис. К. пед. Л., 1990.
11. Беспалько В.П. Стандартизация образования: основные идеи и понятия //Педагогика. 1993. - № 5. - С. 16-25.
12. Беспалько В.П. Теория учебника. М.: Педагогика, 1988. - 160 с.
13. Биллиг В.А. Visual С++ . M.: Русская редакция, 1996. - 326 с.
14. Болски М.И. Язык программирования Си. М.: Радио и связь, 1988. - 96 с.
15. Боровков A.A. Теория вероятностей М.; Новосибирск: Эдиториал УРСС; Изд-во Ин-та математики, 1999. - 470 с.
16. Бурдонов И.В., Косачев A.C., Кулямин В.В. Использование конечных автоматов для тестирования программ //Программирование. -2000.-№2.-С. 12-28.
17. Бусленко Н.П. Моделирование сложных систем. М.: Наука, 1978. -399 с.
18. Буч Г. Объектно-ориентированный анализ и проектирование. М.: Бином, 1998.-560 с.
19. Гальперин П.Я., Решетова З.А., Талызина Н.Ф. Психолого-педагогические проблемы программированного обучения на современном этапе. -М., 1966.
20. Гринь А.Г., Гринь И.П. Условные вероятности. Формулы полной вероятности и Байеса. Омск: ОмГУПС, 1999.
21. Давыдов В.В. Проблемы развивающего обучения: опыт теоретического и экспериментального исследования. М.: Педагогика, 1986.-240 с.
22. Дейтел Г. Введение в операционные системы: В 2 томах. Т. 1,2-М., Мир, 1987.
23. Елманова Н.З., Трепалин C.B. Delphi 4 технология СОМ. М.: Диалог-МИФИ, 1999.-318с.
24. Ершов А.П. Компьютеризация школы и математическое образование //Информатика и образование. 1992. - № 5-6. - С. 3-12.
25. Ершов А.П. Информатика и компьютерная грамотность. М.: Наука, 1988.
26. Зубков А.М., Севастьянов Б.А., Чистяков В.П. Сборник задач по теории вероятностей. М.: Наука, 1989. - 320 с.
27. Кокс Д. Компоненты Java ускоряют разработку приложений //Computerworld. 2000. - № 35. - С. 47.
28. Колмогоров А.Н. Основные понятия теории вероятностей М.: Наука, 1974.-119 с.
29. Коржов В. Универсальный Web-интерфейс //Computerworld. 2000. -№21.-С. 37.
30. Крокет Ф. MFC мастерская разработчика. М.: Русская редакция, 1998.-377 с.
31. Круглински Дэвид Дж. Основы Visual С++ M.: Русская редакция,1996. -658 с.
32. Кэнту М. Delphi 4. Санкт-Петербург: Питер, 1999. - 1114 с.
33. Мейнжер Д. JavaScript: Основы программирования. Киев: ВНУ,1997. -510 с.
34. Мешков А., Тихомиров Ю. Visual С++ и MPC: В 3 томах. СПб.: BHV - Санкт-Петербург., 1997. - Т. 1, 2, 3.
35. Морган М. Java 2. M.: Вильяме, 2000. - 719 с.
36. Петцольд Ч. Программирование для Windows 95: В 2 т. СПб.: BHV- Санкт-Петербург, 1997. Т. 1, 2.
37. Полани М. Неявное знание. М.: Прогресс, 1984.
38. Поттосин И.В. К обоснованию алгоритмов оптимизации программ //Программирование. 1979. - № 2. - С. 3-13.
39. Поттосин И.В. К обоснованию алгоритмов оптимизации программ //Программирование. 1999. - № 6. - С. 48-56.
40. Поттосин И.В. К задаче "чистки циклов" //Цифровая вычислительная техника и программирование. М.: Сов. радио, 1968.- Вып. 4.
41. Поттосин И.В., Юргинова О.В. Обоснование преобразования чистки циклов // Программирование. 1980. - № 5. - С. 3-16.
42. Пчелин М. С физикой на равных //Мир ПК. 2000. - Ко 11. - С. 142143.
43. Пьюполо Д. OLE: создание элементов управления. Киев: BHY, 1997.-429 с.
44. Роджерсон Д. Основы СОМ. М.: Русская редакция, 1997. - 352 с.
45. Соловов А.В. Проектирование компьютерных систем учебного назначения, Самара: СГЛУ, 1995. -www.informika.ru/text/inftech/edii/design/
46. Страуструп Б. Язык программирования С++. М.: Бином, 1999. -990 с.
47. Талызина Н.Ф. Методика составления обучающих программ. М.: МГУ, 1980.-46 с.
48. Уемов А.И. Логические основы метода моделирования. М.: Мысль, 1971.
49. Филден Т. ArgoUML помогает находить верные рещения //Computerworld. 2000. - № 21. - С. 36.
50. Филден Т. Моделирование на базе компонентов //Computerworld. -2000.-№20.-С. 38.
51. Ха Ле. Представление математических объектов, ориентированное на обмен информацией //Программирование. 2000. - № 1. - С. 13-26.
52. Хрущев С.А., Топчий В.А. Технология ActiveX для создания распределенных обучающих систем. //Докл. Всероссийской научно-методической конф. "Интернет и современное общество". СПб.: СПбГУ, 1998. - (CD-ROM)
53. Хрущев С.А., Топчий В.А., Дворкин П.Л. Технология ActiveX для создания распределенных обучающих систем. //Тезисы докл. Междунар. конф. "Интернет, общество, личность (ИОЛ-99)". СПб.: ИОО, 1999.-С. 263-264.
54. Чеппел Д. Технологии ActiveX и OLE. М.: Русская редакция, 1997. -301с.
55. Чистяков В.П. Курс теории вероятностей М.: Наука, 1987. - 240 с.
56. Шилдт Г. Теория и практика С++. -СПб.: BHV-Санкт-Петербург, 1996.
57. Ширяев А.Н. Вероятность. -М.: Наука, 1989.
58. Шрейдер Ю.А. Экспертные системы: их возможности в обучении //Вести, высш. шк. 1987. - № 2. - С. 14-19.
59. Экзамен //www.examen.ru: Online-системы интерактивного тестирования и обучения.
60. ANRI //www.anriintem.com: Online-системы интерактивного тестирования и обучения.
61. Brainbeimch //www.brainbench.com: Online-системы интерактивного тестирования.
62. Brooks F. No silver Bullet: Essence and Accidents of Software Engineering /ЯЕЕЕ Computer. 1987. - V. 20 (4).
63. College // www.college.ru/mathematics/demo.html: Обучающая система по математике.
64. DAU Stat refresher //www.cne.gmu.edu/models/dau/stat/index.html: Обучающая система по теории вероятностей и математической статистике.
65. Hoffman D., Strooper P. ClassBench: a Framework for Automated Class Testing //Software Maintenance: Practice and Experience. 1997. - V. 27. -№ 5. - P. 573-579.
66. Physicon //www.physicon.ru/ras/openmath.htm: Обучающая система по математике.
67. Sommerville I. Software Engineering. Second Edition. Workingham, England: Adisson-Wesley.
68. Turner CD., Robson D.G. The State-based Testing of Object-Oriented Programs //Proc. IEEE Conf. Software Maintenance. 1993. - P. 302-310.
69. UML RC //www.rational.com/uml: Интерактивный центр ресурсов по языку UML.
70. Kasyanov V. N., Pokrovsy S.B. Shematology in a multilanguage optimizer //Lecture Notes in Computer Science. N.Y.: Springer-Verlag, 1977.-P. 315-323.-V. 53.
71. Wirth N. Program Development by Stepwise Refinement //Communications of the ACM. 1983. - V. 26 (1).
72. Wong H., Barantsev A., Burdonov L, Kossatchev A. Report on Test Generation Methodology // Nortel, 1997.
-
Похожие работы
- Оптимизация формирования информационного базиса в интерактивных адаптивно-обучающих системах
- Модель обучающего курса и реализация программной оболочки дистанционного обучения: системный и объектный подходы
- Адаптивная обучающая программа для нефтегазовой отрасли
- Система программно-алгоритмической поддержки мультилингвистической адаптивно-обучающей технологии
- Формирование информационно-терминологического базиса в мультилингвистических системах обучения
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность