автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.12, диссертация на тему:Автоматизация проектирования обучающих систем на основе объектно-контейнерного подхода
Автореферат диссертации по теме "Автоматизация проектирования обучающих систем на основе объектно-контейнерного подхода"
На правах рукописи
ЦЫТОВИЧ ПАВЕЛ ЛЕОНИДОВИЧ
РГ6 од
АВТОМАТИЗАЦИЯ ПРОЕКТИРОВАНИЯ ОБУЧАЮЩИХ СИСТЕМ НА ОСНОВЕ ОБЪЕКТНО-КОНТЕЙНЕРНОГО ПОДХОДА
Специальность 05.13.12 — «Системы автоматизации проектирования»
Автореферат диссертации на соискание ученой степени кандидата технических наук
Челябинск 2000
Работа выполнена в Южно-Уральском государственном университете на кафедре электронных вычислительных машин
Научный руководитель —
доктор технических наук, профессор, член-корреспондент МАИ Мельников Андрей Витальевич,
Научный консультант —
кандидат технических наук, доцент Вадточий Ирина Львовна. Официальные оппоненты:
доктор технических наук, профессор, действительный член МАИ и РАЕН Чащое Рудольф Петрович,
кандидат технических наук Скоепень Владимир Макарович. Ведущая организация —
Уфимский государственный авиационный технический университет
Защита состоится 14 июня 2000г., в 16 ч, на заседании диссертационного совета К053.13.08 при Южно-Уральском государственном университете по адресу: 454080, г. Челябинск, пр. им. В.И. Ленина, 76, конференн-зал ЮУрГУ (ауд. 244).
С диссертацией можно ознакомиться в библиотеке Южно-Уральского государственного университета.
Автореферат разослан «_» мая 2000 г.
Ученый секретарь диссертационного совета канд.техн.наук. доцект
А.М. Коровин
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность темы. Современные образовательные технологии требуют значительной интенсификации процесса обучения, заключающейся в увеличении доли самостоятельной работы учащихся. Использование учебной литературы не позволяет в полном объеме решать указанные. задачи, поэтому в учебном процессе все шире начинают использоваться средства автоматизированного обучения. Эти средства позволяют преподнести учащемуся изучаемый материал на качественно новом уровне и оперативно закрепить или проверить его знания путем проведения опросов, например, в форме теста. Анализ истории развития средств автоматизированного обучения показывает, что их возможности расширялись по мере эволюции ЭВМ. Так, в настоящее время широкое распространение получили наиболее перспективные, с позиций достижения максимальной эффективности результатов учебного процесса, автоматизированные обучающие системы (А ОС), представляющие собой интегрированные программные системы для обучения и контроля знаний учащихся.
Однако, несмотря на огромный спрос на АОС, большинство из них не удовлетворяют запросам пользователей по своим функциональным возможностям и качественным характеристикам. Можно выделить следующие причины такого положения:
• преподаватель, использующий АОС, и, ее разработчик воспринимают проблему разработки АОС в рамках своих индивидуальных профессиональных знаний, что не 'Позволяет четко сформулировать задачу в целом, наметить и реализовать на практике наиболее рациональные пути ее решения, в результате чего требования заказчика к АОС реализуются не в полном объеме;
• отсутствие стандартных приемов проектирования АОС влечет за собой неоправданное увеличение сроков их разработки;
• отсутствие методики автоматизация проектирования ДОС снижает производительность разработчиков и требует сосредоточения их внимания на программной стороне задачи вместо ее информационного наполнения.
Анализ этапов развития АОС показывает, что решение отмеченной проблемы их совершенствования целесообразно решать в следующих направлениях.
Проектирование большинства программных систем производится на основе общеизвестных методов структурного подхода к проектированию, которые рассматривают их как сложную многосвязную систему с большим числом разнородных объектов. Основные положения этого подхода рассмотрены в работах Лингера Р, Фокса Дж, Брукса Ф.П., Горбатова В.А., Логиновского О.В.
Структурный подход позволяет достаточно эффективно проектировать сложные программные системы, однако, он имеет существенные недостатки.
которые ограничивают его применение в современной индустрии программного обеспечения. К числу этих недостатков относятся:
• достаточно низкий уровень абстракции, который - не позволяет оперировать терминами предметной области для более эффективного проектирования АОС;
» метод структурного подхода в проектировании АОС осложняет ее дальнейшую эволюцию, что, в конечном итоге, выливается в усложнение и удорожание программной системы в целом.
Преодоление указанных недостатков структурного проектирования ведется на основе широко распространенных методов объектно-ориентированного подхода (ООП), основы которых рассмотрены в работах Г. Буча, М. Джексона, К. Орра, Б Страуструпа, П. Ирэ, С.С. Гайсаряна и др. Наиболее распространенные из методов ООП, такие как ОМТ, ЦМЬ и т.д., рассматривают программную систему в терминах той предметной области, на которую она ориентирована, а возможность создания на базе существующей АОС более совершенной, является одним из принципов указанного подхода.
Использование ООП в проектировании сложных программных систем также имеет ряд недостатков, среди которых следует выделить:
» сложность в определении объектов предметной области из-за практического отсутствия формальных методов их поиска;
• низкий уровень абстракции ООП, который требует от разработчика решения задач проектирования и реализации практически всех аспектов функционирования программной системы, начиная от интерфейса пользователя и заканчивая доступом к базам данных, а также другими системными задачами.
Очевидно, что АОС представляет собой сложную программную систему, на создание которой требуются значительные трудозатраты. Поэтому для интенсификации процесса проектирования и реализации указанных программных систем необходим иной подход в проектировании, который, с одной стороны, рассматривал бы АОС на более высоком уровне абстракции, чем предлагает ООП, а, с другой стороны, позволял бы разработчику путем комбинации различных ее составляющих получать программные системы с заранее заданными функциональными возможностями.
Эффективным средством решения поставленной задачи является применение систем автоматизированного проектирования (САПР), которые не требуют от разработчика знаний основ программирования и позволяют создавать на основе описания модели требуемого объекта проектирования достаточно эффективные программные системы. САПР являлись предметом исследований Братищева Д.И., Белоцерковского О.М., Буркова В.Н., Гольдштейна С.Л. Глушкова В.М., Зобнина Б.Б., Надточий И.Л., Норенкова И.П., Петренко А.И., Прохорова А.Ф., Самойлова Д.С., Соломенцева Ю.М, Чашюва Р.П.
Существующие системы разработки АО С не являются средствами автоматизации проектирования, так как они ориентированы на разработку
обучающих курсов с фиксированными способами обучения и не позволяют проектировать АОС как программную систему.
С учетом вышеизложенного целью работы является разработка методологии автоматизации проектирования обучающих систем с . использованием принципов ООП.
В диссертационной работе решаются следующие основные задачи:
• анализ АОС как прикладной системы;
• анализ АОС как сложной системы в виде объектоз и отношений между ними;
• получение множества моделей АОС на основе объектно-ориентированного подхода;
• разработка типовых моделей АОС;
» разработка методологии автоматизации проектирования АОС;
• реализация разработанной методики автоматизации проектирования АОС.
Методика проведения исследований
В качестве методов исследований применялись теория множеств, теория системного анализа, теория графов и объектно-ориентированный подход к проектированию программных систем.
Научная новизна исследований заключается в следующем:
» с помощью аппарата теории множеств формализованы понятия класса и объекта, и на их основе математически определено множество отношений между объектами, которое является основой для построения объектной модели типовой АОС;
• впервые введено понятие контейнера, как следующего уровня абстракции ООП, позволившее формально определить правила построения контейнерной модели АОС с определением критерия эффективности разбиения на контейнеры;
• путем объединения преимуществ объектно-ориентированного и структурного подходов разработана методика автоматизированного проектирования АОС на базе объектно-контейнерного подхода (ОКП).
Практическая ценность работы заключается в следующем:
• разработан и реализован необходимый набор контейнеров типовой АОС;
• предложен и практически реализован технический метод взаимодействия контейнеров и объектов автоматизированной обучающей системы на основе компонентной архитектуры приложений современных операционных систем Windows 9х и Windows NT;
• результаты исследований могут быть распространены на широкий круг сложных программных комплексов, как в учебном процессе, так и в других прикладных областях.
Реализация результатов работы. Разработанный объектно-контейнерный подход и методика автоматизации проектирования автоматизированных обучающих систем легли в основу:
• контрольно-тестирующего комплекса Teach Wizard'98™;
» имитационной обучающей программы «Эмулятор Internet»;
• Обучающего курса «Деньги».
Перечисленные работы внедрены в учебном и производственном процессе на приборостроительном, энергетическом и международном факультетах ЮжноУральского государственного университета, Челябинской междугородной телефонной станции и РНПО «РОСУЧПРИБОР», о чем имеются акты внедрения.
Апробация работы. Основные положения диссертационной работы докладывались на- Всероссийском методическом семинаре «Компьютерные технологии в образовании» (г. Челябинск, 1995), Всероссийской научно-методической конференции «Новые информационные технологии и учебная техника» (Челябинск, 1995г.), Всероссийской научно-методической конференции ТЕЛЕМАТИКА '97 (г. Санкт-Петербург, 1997г.), межрегиональном научно-нрактическом семинаре «Информатизация органов управления регионального и муниципального уровней» (г. Челябинск, 1998г.), межрегиональной научно-методической конференции «Проблемы и перспективы высшего профессионального образования в уральском регионе» (Челябинск, 1999г.). Практические результаты экспонировались на всероссийской выставке ЛЕНЭСКПО (Санкт-Петербург, 1997 г.) .
Связь с государственными программами:
Основные исследования выполнялись в рамках работ, проводимых по всероссийским научно-техническим программам «Информационные технологии в образовании и науке» (Приказ № 1273 от 30.12.94) и «Учебная техника» (Указание от 16.01.98 № 33-18. Приказ № 580 от 5.03.99).
Публикации. Основные положения диссертации отражены в 8 публикациях, в том числе подтверждены свидетельством об официальной регистрации программы для ЭВМ.
Структура и объем работы. Диссертация состоит из введения, пяти глав и выводов по работе, содержание которых изложено на 179 страницах машинописного текста, иллюстрирована 89 рисунками, имеет 2 таблицы, перечень используемой литературы из 129 наименований, и приложения на 5 страницах машинописного текста.
. ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ
Классификация автоматизированных обучающих систем
Современная А ОС должна обладать рядом характеристик, которые определяются проектом отраслевого стандарта «ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ. СЕРТИФИКАЦИЯ СРЕДСТВ И СИСТЕМ В СФЕРЕ ИНФОРМАТИЗАЦИИ. ПРОГРАММНЫЕ СРЕДСТВА УЧЕБНОГО НАЗНАЧЕНИЯ». Однако здесь оговариваются только эксплуатационные характеристики и отсутствует стандартизация приемов проектирования и программной реализации А ОС.
Каждая АОС имеет определенную структуру на основе группы элементов с указанием связей между ними и дающая представление о системе в целом. Поэтому структура системы может быть охарактеризована по имеющимся в ней типам связей. При этом различают программные системы разомкнутого типа с последовательным, параллельным или комбинированным соединением блоков и системы замкнутого типа с обратной связью «внутри» программного обеспечения (рис.1). Замкнутые и разомкнутые системы отличаются тем, что у замкнутых присутствует обратная связь, позволяющая учитывать исходный и текущий уровень знаний обучаемого и степень усвоения им текущего и ранее предложенного материала. При этом наиболее простыми являются презентационные АОС, а наиболее сложными — имитационные.
Автоматизированные обучающие системы
Без обратной связи (разомкнутые)
С обратной связью (замкнутые)
-j Презентационные"] - Тестирующие |
Имитационные |
Комплексные
]
Без игровых С игровыми
элементов элементами
Рис. 1. Классификация принципов построения АОС
При программной реализации любой из структур АОС используются вполне определенные алгоритмические подходы, диктуемые методикой проведения учебного занятия. Обычно обучающая система по своей сути является совокупностью порций информации, называемой- слайдами, в которых можно сосредоточить все средства представления об изучаемом материале, включая видеоизображение или звукозапись. Наиболее перспективными для учебного процесса являются АОС с обратной связью и возможностью выбора нескольких линий урока. В результате достигается максимальная эффективность получения обучаемым необходимого уровня знаний в изучаемой им области.
Таким образом, процесс разработки АОС включает необходимость решения следующих основных задач:
• разработка алгоритма урока;
• создание интерфейса пользователя;
• проектирование базы данных.
Приведенная классификация АОС и сформулированные в работе задачи проектирования легли в основу разработанной методики объектно-контейнерного подхода (ОКП) автоматизации проектирования обучающих систем
Основные положения объектно-контейнерного подхода
ОКП базируется на технологии ООП, которая рассматривает в своей основе объект, составляющий элементарную подзадачу в анализируемом процессе проектирования. ООП исследовался в работах С.С. Гайсаряна, Г. Буча, М. Джексона, К. Орра, Б Страуструпа, П. Ирэ и др. Методология ОКП опирается на пять моделей: целевую, объектную, структурную, контейнерную и системную (рис.2).
Проектирование программной системы начинается с постановки задач, которые должна решать разрабатываемая программа. Описание подобных задач представляет собой Целевую модель АОС, которая оказывает большое влияние на предметную область, так как в зависимости от требуемых функций программной системы формируется набор объектов, составляющих ее основу.
Как видно из структуры предлагаемого подхода (рис.2), процесс проектирования разбивается на две параллельные ветаи. Одна из ветвей связана с созданием объектной модели программной системы, а именно, поиском объектов, составляющих подмножество предметной области проектируемой системы и установлением взаимосвязей между объектами. Задача поиска объектов и анализа предметной области в настоящее время практически не описана формальными методами и поэтому, как правило, выполняется эмпирическим путем. Результатом данного этапа является объектная модель, содержащая объекты проектирования и взаимосвязи между ними.
Объектный подход рассматривает проектируемую систему в качестве совокупности взаимосвязанных объектов. Однако, только построение модели, отражающей объекты и их взаимосвязи, не позволяет упростить разработку системы, а также обеспечить ее дальнейшую эволюцию. Поэтому необходимо предложить такой способ проектирования, который учитывал бы указанные недостатки объектного подхода. В работах Г. Буча и др. для крупных программных систем предлагается вначале построить структурную. модель, отражающую блоки преобразования информации и информационные потоки, а затем проектировать каждый ее блок, используя объектно-ориентированный подход. Однако, в этом случае возникают проблемы, связанные со стыковкой функциональных блоков, а также отсутствует целостность представления об объектах программной системы и ее внутренних взаимосвязях:
В диссертационной работе предлагается иной подход к решению поставленной задачи, связанный с введением нового уровня абстракции. — контейнера, в качестве которого рассматривается группа объектов. При этом выделение контейнеров производится после создания объектной модели путем ее сопоставления со структурной моделью программной системы, построение которой ранее выполнялось параллельно объектной модели. Результатом контейнерной модели является множество групп объектов — контейнеров, каждый из которых решает свою определенную подзадачу.
Для того, чтобы множество контейнеров решало задачи, определяемые целевой ' моделью приложения, потребуется алгоритм, организующий
взаимодействие, между контейнерами проектируемой программной системы. В работе такой алгоритм называется управляющим.
Рис. 2. Структура объектно-контейнерного подхода
Результатом последнего этапа является системная модель всей проектируемой АОС, которая представляет собой проект программной системы, готовый к разработке с использованием известных инструментальных средств.
Этапы ОКП условно разбиваются на несколько уровней, каждый из которых отражает определенную особенность проектирования.
Целевая модель и определяемая ею предметная область относятся к уровню постановки задач. Здесь согласовываются различные параметры и функциональные возможности проектируемой программной системы.
Проектирование структурной модели производится с использованием известных методов, в частности ОРО.ИШ^ПЗ. Методика разработки объектной модели рассматривается в главе Щ.
Контейнерная модель складывается из сопоставления структурной и объектной моделей и требует установления определенных отношений между исходными объектами и, следовательно, классами программы. В настоящее время представляется достаточно сложным формализация процесса создатгя контейнерной модели. Поэтому такое сопоставление выполняется эмпирически путем сравнения задач, решаемых тем или иным объектом в объектной модели и « функциональным блоком в структурной модели. Таким образом, этот уровень относится к уровню концептуального проектирования, на котором решается постановочная задача проектирования АОС.
Проектирование системной модели поддается формализации, так как из предлагаемого набора контейнеров разработчик выбирает необходимые составляющие программной системы. Затем на основе задач, определяемых
целевой моделью, производится описание управляющего алгоритма. Поэтому данный этап относится к уровню автоматизации процесса проектирования.
Объектная модель
Определение 1 (Исходный объект)
Будем называть исходным объектом <?етс кортеж о5ГС = {аы,А*гс ¡М5™^,
где: ам - начальное состояние исходного объекта; Азгс = {^,а2,...,а„} — множество его возможных состояний, т.е. значения данных, которые данный объект инкапсулирует, причем аш е А*гс и А5ГС й 0; Мзп = \т^тг,...,тк} - множество операций, реализующих поведение объекта.
гтО!ГС
Обозначим как и множество всех исходных объектов предметной области.
Определение 2 (Класс).
Будем называть классом € кортеж £ — {а,/л), здесь N К
щ е П А3* Уозгс 6 и£ , А е П^Г УоГ 6 и° ' где АТ * 0 ~
множество состояний исходного объекта ОуГС; множество операций
объекта о"с, а Vе — | — множество объектов, из которых образован класс.
Графически понятие класса представлено на рис. 3.
Понятие объекта практически аналогично понятию исходного объекта, за исключением того, что последний порождается из класса, а первый служит основой для его образования. Любая программа не может оперировать классами, которые являются лишь. формальным описанием объектов, с которыми она работает. Таким образом, объект определяется аналогично исходному объекту:
Обозначим и° множество всех объектов программной системы... Лемма 1 (О существовании объекта, являющегося экземпляром класса).
Для любого класса е вОе существует, по крайней мере, один объект о е 11°, такой,чгоо = (аш,А,М)\А'=а,М =/л,, еА. Определение 3 (Дочерний класс).
. Дочерним называется класс ЕсШ = (асШ, у такой, что
асШ =
У^гЬ// \мГт У"
Теорема ¡(Принцип полиморфизма).
Если существует объект och'ld, являющийся экземпляром дочернего класса
„child „ parent parent
о , то множество операции /г класса является подмножеством
операций М° объекта ocnild и множество состояний арагет класса £Рт'еп:
осШ
является подмножеством состояний А
Объектная модель системы описывает структуру объектов, составляющих систему, их атрибуты, операции, взаимосвязи с другими объектами. В объектной модели должны быть отражены те понятия и объекты предметной области, которые существенны для разрабатываемой системы.
Рис. 3. Понятие класса
На этапе построения объектной модели необходимо правильно выделить основные объекты задачи, причем в дальнейшем правильность выбора объектов будет оказывать существенное влияние на процесс проектирования и разработки программной системы.
Для получения объектной модели, во-первых, следует выделить некоторое множество объектов и объединить их в классы и, во-вторых, установить между объектами этих классов определенные отношения (рис. 4)
Отношение наследования является фундаментальным отношением в технологии ООП. Оно позволяет, используя элементарные классы, создавать на их базе более крупные, обеспечивая тем самым развитие программной системы. Отношение наследования является постоянным, т.е. оно закладывается на этапе проектирования и не может изменяться в зависимости от поведения программной системы и ее элементов. Отношение наследования устанавливается на основе понятия дочернего класса. Согласно лемме 1, получаем, что отношения наследования могут устанавливаться и между объектами.
Агрегативное отношение определяет класс Ст как кортеж:
ет = ((ааиат1Мт\
Данное отношение является вторым из основных, так как в большинстве случаев объекты могут включать в себя сложные данные, например, ведомость
успеваемости учащегося. Лемма 1 позволяет устанавливать отношения агрегативности между объектами.
Рис. 4. Система отношений в объектной модели
Вторая группа отношений описывает взаимодействие объектов программной системы в ходе ее непосредственного выполнения. Здесь определяющим является процесс изменения состояния объекта во время работы АОС.
Поведение любой программной системы, построенной в соответствии с принципами ООП, определяется схемой воздействия одних объектов на другие. Такое воздействие выполняется путем инициирования той или иной операции, доступ к которой предоставляет объект воздействия.
Каждая операция в классе описывает правила перехода объектов этого класса из одного состояния в другое. В то же самое время, на переход в новое состояние оказывают влияние результаты операций, вызванных для других объектов в ходе выполнения этой операции. Таким образом, операцию т, можно записать
) = mi iai> iek Г ) -
где üj — текущее состояние объекта; аи1— новое состояние объекта; Arg—
кортеж состояний объектов, определяющим начальные условия операции; \ек / — множество откликов на синхронное воздействие, элемента которого могут быть описаны предикатом
ек = (т°/ о}, e U°,mn> е М°\к = (1,^)).
Отношение синхронного воздействия.
Под отношением синхронного воздействия понимается такое отношение между объектами, когда причиной воздействия на объект оусо стороны ох является вычислительный процесс, в рамках которого они существуют.
Под отношением асинхронного воздействия понимается такое отношение между объектами, когда причиной воздействия на объект оусо стороны ах
является внешний объект, существующий независимо от системы, или операции которого реализуются в рамках параллельного вычислительного процесса.
Для предлагаемого подхода важным является отношение транзитивного воздействия. При посредничестве объекта Оу объект ох воздействует на объект
о..
Данное отношение может быть выражено, согласно определению операции, как вызов операции объекта о, при выполнении операции объекта оу.
Рассмотренные отношения связаны между собой следующими свойствами:
Свойство 1 (Взаимосвязь отношения наследования и отношения агрегативности). Если базовый класс связан отношением агрегативности с другим классом, то и дочерний класс также может быть, как и базовый, связан отношением агрегативности с этим классом.
Свойство 2 (Взаимосвязь отношений агрегативности и отношения транзитивного воздействия). Если объект Ох связан отношением агрегативности с объектом оу, то объект О, может воздействовать на объект Оу, только если между ним и объектом Оу установлены отношения транзитивного воздействия через объект Ох.
Контейнерная модель
Будем называть интерфейсом класс, объекта которого имеют одно состояние и множество методов: I = {а,/л).
Контейнер представляет специализированный класс, который может быть описан кортежем вида
""(¡И
Здесь ак — множество состояний к класса, входящего в контейнер из п классов, а I = {/}— множество интерфейсов контейнера, элементы которого составляют классы, через операции которых осуществляется доступ к контейнеру фис. 5).
При построении контейнерной модели необходимо соблюдать ряд правил, позволяющих эффективно использовать предлагаемый подход:
Первое правило контейнера. Для доступа к операциям классов, составляющих контейнер, необходимо установить отношение транзитивного воздействия хотя бы через один из интерфейсов контейнера.
Второе правило (Правило независимости от пе.ягтичатгии ^ Контейнер не должен зависеть от реализации классов, с ним взаимодействующих, и, наоборот, классы, не входящие в состав .контейнера, не должны зависеть от его реализации, даже если они взаимодействуют с ним.
Рис. 5. Понятие контейнера
Выполнение этого правила достигается за счет1 особых требований, предъявляемых к интерфейсу. Эти требования можно изложить следующим образом:
• любые изменения в классах контейнера не должны отражаться на интерфейсе;
• если в контейнер вводятся новые классы, решающие новые задачи, то необходимо создать новый интерфейс для доступа к операциям этих классов;
• интерфейс должен скрывать реализацию контейнера.
Разбиение объектной модели на контейнерную осуществляется путем сопоставления ее со структурной моделью проектируемой системы, которая может быть получена,. в том числе, при помощи средств построения таких моделей.
Критерии эффективности декомпозиции объектной модели в контейнерную.-
Критерий достаточного числа интерфейсов контейнера: число смежных вершин интерфейса должно быть меньше числа смежных вершин объектов контейнера каэюдой из смежных с интерфейсам вершин.
Обозначим степень вершин интерфейса I как d(l) и степень вершины объекта о, е U° как d(o,), а множество объектов, выделенных в контейнер; как Uc. Тогда критерий достаточного числа интерфейсов может быть записан: d{I)<d(0i)¡Vo, еU%d{I)*0,d{0¡)*0.
Критерий минимального числа интерфейсов: минимальное число интерфейсов должно соответствовать числу блоков структурной модели, взаимодействующих с данным блоком, рассматриваемым в качестве контейнера.
Рассмотрим два случая, позволяющие доказать, что определяющим критерием является критерий достаточного числа интерфейсов.
В первом случае предполагаем, что каждый объект находится в собственном контейнере, и этот объект не взаимодействует с другими объектами и интерфейсами других контейнеров, т.е. в структурной модели - это обособленный блок. Такое разбиение на контейнеры не эффективно, так как не выполняется указанный критерий, и, кроме того, ровно в 2 раза возрастает количество частей АОС, подлежащих реализации: интерфейсы и классы объектов в контейнере.
Второй случай заключается в том, что контейнер содержит большое число объектов, доступ к которым обеспечивает один интерфейс. Здесь также нарушаются ограничения по достаточному числу интерфейсов.
Показанные критерии позволяют сформулировать • теорему о дополнительном условии включения объекта в контейнер: Объект может быть включен в контейнер, если установлено хотя бы одно отношение синхронного или асинхронного воздействия между этим объектом и объектами контейнера, либо интерфейсом этого контейнера
Системная, модель
Результатом получения контейнерной модели являются составляющие части АОС, представленные как независимые объекты. Получаем некоторое множество контейнеров:
£рго]еа _ ^ >кг,...,кп ] .
Эти контейнеры позволяют создать множество объектов, взаимодействие между которыми можно описать в виде некоторого управляющего алгоритма КЛ. Последний должен оперировать объектами путем воздействия на них, реализуя тем самым решение поставленной задачи.
Так как системная модель описывает отношения между объектами-контейнерами и управляющую программу, то данная модель представляется в виде следующей функции:
5 = /(кА,Крг°'ес').
Управляющий алгоритм реализует ядро программной системы, в функции которого входит начало выполнения программы, а также организация взаимодействия между входящими в ее состав контейнерами. При построении системной модели необходимо установить отношения синхронного и асинхронного воздействий между контейнерами и ядром АОС, что составляет суть управляющего алгоритма. Само ядро также представляет собой набор объектов, классы которых описывают взаимодействие между ними, т.е. оно является как бы еше одним контейнером программной системы, на который
воздействует пользователь. Для этого достаточно предположить, что множество
ка СОП г-
состоянии управляющего алгоритма а и контейнеров а образует множество состояний программной системы, а введение интерфейсов для взаимодействия с объектами, не входящими в состав программной системы, согласно первому-правилу контейнера, позволяет образовать множество внешних операций программной системы, т.е.
PS = (aps,Ika).
Í „ Л
Здесь а
ps
■J U=i
(Jа"" U = {*} — множество интерфейсов ядра
программной системы.
Суть третьего этапа заключается в разработке алгоритма ядра АОС. Создание алгоритма ядра начинается с проведения анализа наличия или отсутствия следующих факторов:
• необходимость расширения возможностей АОС пользователем, непосредственно эксплуатирующим систему;
• необходимость адаптивного поведения АОС;
• наличие типовых задач предметной области АОС.
Проведенный анализ позволяет найти определенный подход к архитектуре создаваемой программной системы.
Типовая обучающая система
Для проведения исследований в области автоматизации проектирования АОС была разработана модель — типовая обучающая система (ТОС), включающая следующие основные блоки:
• обучающий блок — реализует средства обучения учащегося и ориентирован на определенную предметную область.
• контролирующий блок — реализует средства оценки эффективности обучения в виде тестов или иного способа контроля усвоения материала.
' • блок - базы данных — реализует средства хранения информации по предметной области и процесса обучения.
• блок средств интерфейса с пользователем —' реализует средства аудиовизуального взаимодействия с пользователем.
На основе анализа и поиска объектов предметной области и установления взаимоотношений между ними была получена объектная модель, показанная на рис.6.
Чтобы получить контейнерную модель, необходимо сопоставить полученную модель со структурной, представленной на рис. 7.
Для построения системной модели выделено три возможных варианта управляющих алгоритмов:
• управляющий алгоритм с жесткой логикой — реализует определенный алгоритм, который не может быть изменен без редакции исходного кода
j
программной системы. Его ■ суть сводится к реализации линейной зависимости = /{У^Х где У ¡и совокупность управляющих и осведомительных сигналов в ¿-момент времени. Такой управляющий алгоритм может быть реализован стандартными средствами любого языка программирования.
Рис. 7..Процесс синтеза контейнерной модели TOC
• открытый управляющий алгоритм — представляет собой программ). которую разрабатывает конечный пользователь системы, настраивая ее на свои задачи. Разработчик не закладывает управляющий алгоритм системы в явном виде или закладывает частично;
• адаптивный управляющий алгоритм — представляет собой программу, изменяющую свое поведение на основе факторов анализа хода учебного процесса, к которым можно отнести общее время, затрачиваемое
учащимся на восприятие той или иной информации, сумму весовых коэффициентов, начисленных в процессе ответа на вопросы и т.д.
На базе рассмотренных управляющих алгоритмов достаточно легко разработать варианты архитектур ядра программной системы.
Программная реализация управляющего алгоритма с жесткой логикой выполнена на базе стандартного управляющего автомата, тогда как для открытого управляющего алгоритма потребуется предоставит, встроенные средства программирования, чтобы с их помощью пользователь сам описывал желаемое поведение программы.
Методика автоматизации проектирования АОС
На основании сделанной ранее классификации АОС и разработанной методики ОКП, а также предложенных в третьей главе вариантов архитектур ядра АОС, были сформулированы основные принципы методики автоматизации проектирования.
1. Базовой методикой проектирования АОС является объектно-контейнерный подход, отражающий все ' этапы объектного проектирования.
2. Исходной моделью АОС является TOC, как наиболее стандартная для данной области проектирования.
3. Разработчик сосредотачивается на наполнении проектируемой АОС учебным материалом, а не на деталях реализации самой АОС. При этом разработчик должен построить модель урока, которая задается в виде двудольного графа, где кадр представляется вершиной с одним входом и выходом, а переход — в виде вершин, имеющих множество входов, и выходов, где также указываются условия перехода к связанной вершине.
4. Каждая вершина графа представляет собой объект, имеющий собственные атрибуты. Такой объект способен устанавливать отношения воздействия и отклика.
5. В зависимости от предметной области и круга решаемых задач проектируемой АОС, разработчик выбирает определенный вид управляющего алгоритма.
6. За счет использования объектно-контейнерного подхода разработчик может создавать библиотеки конструкций АОС путем объединения нескольких объектов в отдельный контейнер.
7. Результатом проектирования является программная система, состоящая го набора контейнеров, выбранных на основе желаемого типа управляющего алгоритма и базы данных, сгенерированной на основе заданной модели урока.
Каждая из вершин графа модели урока представляет собой объект с определенными атрибутами и набором операций. В частности, атрибутами кадра являются порция информации, предъявляемая пользователю, а также средства анализа истории обучения, которые в общем случае представляют собой коэффициент, используемый для организации перехода по графу урока.
Для проектирования инструментальной среды разработчика АОС был использован ОКП. В результате проведенного объектного анализа разработана объектная модель, представленная на рис. 8.
Контейнерная модель была получена после построения функциональной модели и сопоставления с ней объектной модели. Процесс синтеза контейнерной модели представлен на рис. 9.
Рис. 9. Процесс синтеза хонтейнерной модели инструментальной среды разработчика АОС
Наибольший интерес в полученной модели представляет генератор АОС. Он является средством получения набора контейнеров и управляющего алгоритма
согласно разработанной модели урока. К основным функциям генератора АОС относятся:
• генерация базы данных АОС на основе модели урока;
• генерация карты состояний АОС в виде таблицы переходов или базы данных;
• формирование набора контейнеров, составляющих АОС.
Генератор АОС представляет собой отдельный программный модуль, ориентированный на тот или иной тип архитектуры АОС. Такая специфика позволяет расширять множество вариантов архитектур АОС за счет разработки соответствующего генератора, ориентированного на новый тип архитектуры АОС. Для взаимодействия контейнеров была выбрана архитектура программной системы Component Object Model, которая поддерживается в современных операционных системах фирмы Microsoft.
ОСНОВНЫЕ ВЫВОДЫ И РЕЗУЛЬТАТЫ
Проведенные в диссертационной работе исследования образуют теоретическую и практическую основу решения задачи автоматизированного проектирования обучающих систем и позволяют сформулировать основные выводы и получить конкретные результаты:
1. Показано, что потребности рынка автоматизированных обучающих систем не удовлетворяются существующими методами автоматизации проектирования на основе структурного и объектно-ориентированных подходов, так как . структурное проектирование не оперирует терминами предметной области и затрудняет эволюцию программной системы, а объектно-ориентированный подход имеет слишком низкий уровень абстракции, требующий от проектировщика разработки практически всех аспектов функционирования АОС.
2. Для разработки методик автоматизации проектирования' математически формализованы основные принципы объектно-ориентированного подхода к проектированию АОС. В частности, определены типы отношений между объектами, • которые являются основой • для комплексного подхода к проектированию АОС.
3. Сформулированы основные положения, определяющие объектно-контейнерный подход как последовательность модельных преобразований, при которых целевая модель АОС- преобразуется в контейнерную и системную модели, определяющие функции АОС и ее управляющий алгоритм. Доказано, что эффективность контейнерной модели определяется минимальным и достаточным числом интерфейсов контейнера, а также показаны дополнительные условия включения объекта в контейнер.
4. Впервые разработана методика автоматизации проектирования обучающих систем, заключающаяся в следующем:
• обучающая система представляется в виде набора стандартных контейнеров;
• урок представляется двудольным графом, где каждая вершина есть объект со своим набором атрибутов и операций;
• проектирование обучающей системы ведется путем построения двудольного графа модели урока и выбора вида управляющего алгоритма.
5. На основе компонентной архитектуры «Component Object Model» операционных систем фирмы Microsoft предложен и практически реализован метод взаимодействия контейнеров и объектов автоматизированной обучающей системы.
6. На основе предложенного объектно-контейнерного подхода впервые разработаны и внедрены в практику учебного процесса следующие программные системы:
• Программный комплекс управления учебным процессом «Teach Wizard '98»;
• Имитационная обучающая система «Эмулятор Internet»;
• Обучающий курс «Деньги» для студентов экономических специальностей.
1. Цьгтович П.Л.. Основные принципы построения адаптивных систем дистанционного обучения//Новые информационные технологам и учебная техника. Тезисы докладов Всероссийской научно-методической конференции. — Челябинск: ЧГТУ, 1995. — С. 124—126.
2. Надточий И.Л., Цытович П.Л.. Технология дистанционного обучения с применением 1шеше1-техио.лот*ий//Сборник тезисов докладов всероссийской научно-методической конференции «ТЕЛЕМАТИКА '97». — С-Пб: Республиканский научный центр компьютерных телекоммуникационных сетей высшей школы, 1997. — С. 140—141.
3. Надточий И.Л., Цытович П.Л., Полякова Л.А. Вопросы внедрения инструментального комплекса дтя генерации интеллектуальных обучающих систем//Система обработки информации и управления: архитектура и программное обеспечение -— сборник научных трудов. — Челябинск: ЮУрГУ, 1998. — С.21—22.
4. Цытович П.Л. Основные подходы к задаче объектного анализа при построении трансляторов языков высокого уровня/УСистема обработки информации и управления: apxHTeinypa и программное обеспечение — сборник- научных трудов. — Челябинск: ЮУрГУ, 1998,— С. 18—21.
5. Цытович П.Л. Использование имитационной автоматизированной обучающей системы для освоения работы в сети lntemet//C6opHHK докладов межрегионального научно-практического семинара «Информатизация органов управления регионального и муниципального уровней». — Челяоинск: Администрация Челябинской области, 1999"—С.40—42.
6. Цытович П.Л. Свидетельство № 960491 об официальной регистрации программы для ЭВМ «Экзаменационная тестовая система Версия 1.00 «Exam Wizard ™».
7. Мельников A.B.. Цытович П.Л. Основные принципы автоматизации проектировашо! обучающей системы на базе объектно-контейнерного подхода//Новые педагогические и информационные технологии - Вып. 4—
http://scholar. urc. ас. ru/ped_joumal/numero4/pedag/tsit l.html
8. Мельников A.B., Цытович П.Л. Модель взаимодействия виртуальных объектов для имитации работы в сети intemet/ZHoBbie педагогические и информационные технологии- Вып. 4.— http://schoiar.urc.ac.ru/ped joumal/numero4/pedag/tsit2.html
9. Мельников A.B., Цытович П.Л. Принципы построения обучающих систем и их классификация// Новые педагогические и информационные технологии- Вып. 4.— http ://scholar.^c.ac.nvpedJomriaVnumero4/peaag/tsit3. html
Публикации по теме диссертации
Издательства Южно-Уральского государственного университета
ИД № 00200 от 29.09.99. Подписано в печать 03.05.2000. Формат 60x84 Шб.Печать офсетная. Усл. печ.л. 1,25. Уч.-издл. 1.
_Тираж 80 экз. Заказ 213/188._
УОП Издательства. 454080, г. Челябинск, пр. им. В.И. Ленина 76.
Оглавление автор диссертации — кандидата технических наук Цытович, Павел Леонидович
ВВЕДЕНИЕ.
ГЛАВА 1. ЗАДАЧИ АВТОМАТИЗАЦИИ ПРОЕКТИРОВАНИЯ АВТОМАТИЗИРОВАННЫХ ОБУЧАЮЩИХ СИСТЕМ
1.1. Анализ существующих способов обучения и их влияние на структуру АОС.
1.2. Этапы проектирования автоматизированных обучающих систем.
1.3. Проблемы автоматизации проектирования АОС.
1.4. Основные задачи диссертационной работы.
Выводы по главе.
ГЛАВА 2. МЕТОДИКА ОБЪЕКТНО-КОНТЕЙНЕРНОГО ПРОЕКТИРОВАНИЯ АВТОМАТИЗИРОВАННЫХ ОБУЧАЮЩИХ СИСТЕМ
2.1. Объект как единица объектного проектирования.
2.1.1. Сложность программной системы и структурное проектирование.
2.1.2. Объектная декомпозиция программной системы.
2.2. Объектная и контейнерная модели как составляющие процесса проектирования.
2.2.1. Объектная модель.
2.2.2. Контейнерная модель.
2.2.3. Критерии эффективности декомпозиции объектной модели в контейнерную.
2.3. Системная модель, как завершающая стадия процесса проектирования.
Выводы по главе.
ГЛАВА 3. ПРИМЕНЕНИЕ ОБЪЕКТНО-КОНТЕЙНЕРНОГО ПОДХОДА В ПРОЕКТИРОВАНИИ АВТОМАТИЗИРОВАННЫХ ОБУЧАЮЩИХ СИСТЕМ
3.1. Проектирование типовой обучающей системы с использованием моделей объектно-ориентированного проектирования.
3.1.1. Проведение объектного анализа и построение объектной модели TOC.
3.1.2. Декомпозиция объектной модели и получения контейнерной модели TOC.
3.1.3. Построение системной модели TOC и проекта всей АОС в целом.
3.2. Виды управляющих алгоритмов и их влияние на архитектуру ядра АОС.
3.2.1. Управляющий алгоритм с жесткой логикой.
3.2.2. Открытый управляющий алгоритм.
3.2.3. Адаптивный управляющий алгоритм.
3.3. Виды архитектур ядра АОС.
3.3.1. Ядро АОС с управляющим алгоритмом с жесткой логикой.
3.3.2. Ядро АОС с открытым управляющим алгоритмом (открытое ядро).
3.3.3. Ядро АОС с адаптивным управляющим алгоритмом.
Выводы по главе.
ГЛАВА 4. МЕТОДИКА АВТОМАТИЗАЦИИ ПРОЕКТИРОВАНИЯ АВТОМАТИЗИРОВАННЫХ ОБУЧАЮЩИХ СИСТЕМ НА БАЗЕ ИНСТРУМЕНТАЛЬНОЙ СРЕДЫ РАЗРАБОТЧИКА АОС
4.1. Основные положения методики автоматизации проектирования.
4.2. Архитектура инструментальной среды разработчика АОС. .114 4.2.1. Проектирование инструментальной среды разработчика.
4.2.2. Организация базы данных инструментальной среды разработчика.
4.2.3. Структура внутреннего языка для записи формул анализа истории обучения.
4.2.4. Принципы построения генератора АОС.
4.2.5. Особенности архитектуры контейнеров - составных элементов АОС.
4.3. Особенности программной реализации САПР АОС.
4.3.1. Выбор средства программной реализации инструментальной среды и элементов АОС.Í
4.3.2. Технология СОМ как основное средство обеспечения взаимодействия между контейнерами.
4.4. Методика проектирования АОС с использованием инструментальной среды разработчика.
Выводы по главе.
ГЛАВА 5. ПРИМЕРЫ ПРИМЕНЕНИЯ ОБЪЕКТНО-КОНТЕЙНЕРНОГО ПОДХОДА В РАЗРАБОТКЕ ПРОГРАММНЫХ СИСТЕМ
5.1. Программный комплекс управления учебным процессом Teach Wizard '98.
5.2. Имитационная обучающая система «Эмулятор Internet».
5.3. Обучающий курс «Деньги» на базе использования Web технологий.
Выводы по главе.
Введение 2000 год, диссертация по информатике, вычислительной технике и управлению, Цытович, Павел Леонидович
Современные образовательные технологии требуют значительной интенсификации процесса обучения, заключающейся в увеличении доли самостоятельной работы учащихся. Использование учебно-методической литературы не позволяет в полном объеме решать указанные задачи, поэтому в учебном процессе все шире начинают применяться средства автоматизированного обучения. Эти системы обеспечивают подачу учащемуся изучаемого материала на качественно новом уровне и способствуют оперативному его закреплению или проверке полученных знаний путем проведения опросов, например, в форме тестов. Анализ истории развития средств автоматизированного обучения показывает, что их возможности расширялись по мере эволюции ЭВМ. Так, в настоящее время широкое распространение получили наиболее перспективные, с позиций достижения максимальной эффективности результатов учебного процесса, автоматизированные обучающие системы (АОС) [1,2,5,29,37,51,87,99,100], представляющие собой интегрированные программные системы для обучения и контроля знаний учащихся.
Однако, несмотря на огромный спрос на АОС, наблюдается устойчивая тенденция, когда большинство из них не удовлетворяют запросам пользователей по своим функциональным возможностям и качественным характеристикам. Можно выделить следующие причины такого положения (рис 1):
• преподаватель, использующий АОС, и ее разработчик воспринимают проблему разработки АОС в рамках своих индивидуальных профессиональных знаний, что не позволяет четко сформулировать задачу в целом, наметить и реализовать на практике наиболее рациональные пути ее решения, в результате чего требования заказчика к АОС реализуются не в полном объеме;
Причины неудовлетворительного состояния рынка автоматированных обучающих систем
Разное понимание проблемы пользователем и разработчиком АОС
Увеличение сроков разработки АОС из-за отсутствия стандартных методов проектирования
Остсутствие методики автоматизации проектирования АОС
Рис 1 Причины неудовлетворительного состояния рынка АОС
• отсутствие стандартных приемов проектирования АОС, влекущее за собой неоправданное увеличение сроков их разработки;
• отсутствие методики автоматизации проектирования АОС, снижающее производительность разработчиков и требующее сосредоточения их внимания на программной стороне задачи вместо ее информационного наполнения.
Анализ этапов развития АОС показывает, что решение отмеченной проблемы их совершенствования целесообразно осуществлять в следующих направлениях.
Проектирование большинства программных систем производится на основе общеизвестных методов структурного подхода к проектированию, которые рассматривают АОС как сложную многосвязную систему с большим числом разнородных объектов [25, 28, 106], основанную на принципах иерархичности и произвольности уровня абстракции, рассмотренных Куртуа Р.[118].
Основные положения этого подхода рассмотрены в работах Лингера Р [52], Фокса Дж [97], Брукса Ф.П [13,115]., Горбатова В.А [22,23,24]., Логиновского О.В [50], Чапцова Р.П.[50,59,62]. и других авторов.
Структурный подход позволяет достаточно эффективно проектировать сложные программные системы, однако, он имеет существенные недостатки, которые ограничивают сферу его применения в современной индустрии программного обеспечения. К их числу относятся:
• достаточно низкий уровень абстракции, который не позволяет оперировать терминами предметной области для более эффективного проектирования АОС;
• метод структурного подхода в проектировании АОС осложняет ее дальнейшую эволюцию, что в конечном итоге выливается в усложнение и удорожание программной системы в целом.
Для преодоления указанных недостатков структурного проектирования широкое распространение получили методы объектно-ориентированного подхода (ООП), основы которого рассмотрены в работах Г. Буча [15], М. Джексона, [121,122], К. Орра, [125], Б. Страуструпа [90,111], П. Ирэ [32], С.С. Гайсаряна [18] и др. Здесь показано, что объектно-ориентированный подход является методологией проектирования, соединяющей процесс объектной декомпозиции и приемы представления логической, физической, статической и динамической моделей проектируемой системы [15]. Этот подход опирается на понятие объекта, которое впервые было использовано при создании архитектур, основанных на описаниях и реализациях. В данных работах делались попытки отойти от традиционной архитектуры и преодолеть барьер между высоким уровнем программных абстракций и низким уровнем абстрагирования в области ЭВМ. На этой базе был создан ряд компьютеров, таких как СашЬп§е САР,
SWARD, Intel 432 и др., которые имеют объектно-ориентированную архитектуру [15].
Наиболее распространенные из методов ООП, такие как ОМТ, UML, Буча, «Коуда-Йордана» [15,38,128] рассматривают программную систему в терминах той предметной области, на которую она ориентированна, а возможность создания на базе существующей АОС более совершенной, является одним из принципов указанного подхода.
Развитие ООП обусловлено прогрессом в области архитектуры ЭВМ, языков и методологии программирования, включая принципы модульности и защиты информации.
В настоящее время современные средства разработки программного обеспечения [26,56,72] значительно расширили возможности использования объектно-ориентированного подхода. В частности, стало реальным фактом разрабатывать событийно-ориентированные программы, работа которых представляет собой цепочку реакций на те или иные действия пользователя или другого объекта задачи.
Использование ООП в проектировании сложных программных систем также имеет ряд недостатков, среди которых следует выделить:
• сложность в определении объектов предметной области из-за практического отсутствия формальных методов их поиска. Наиболее известные методы 3-View Modeling или методы лингвистического анализа, например, Phrase Frequency Analysis и Matrix Analysis [118], не всегда адекватны предметной области или неоправданно усложнены;
• низкий уровень абстракции ООП, который требует от разработчика решения задач проектирования и реализации практически всех аспектов функционирования программной системы, начиная от интерфейса пользователя, и заканчивая доступом к базам данных, а также другими системными задачами.
Очевидно, что АОС представляет собой сложную программную систему, на создание которой требуются значительные трудозатраты. Поэтому для интенсификации процесса проектирования и реализации указанных программных систем необходимо наличие иного подхода в проектировании, который, с одной стороны, рассматривал бы АОС на более высоком уровне абстракции, чем предлагает ООП, а, с другой стороны, позволял бы разработчику путем комбинации различных ее составляющих получать программные системы с заранее заданными функциональными возможностями.
Эффективным средством решения поставленной задачи является применение систем автоматизированного проектирования (САПР), которые не требуют от разработчика глубоких знаний основ программирования и позволяют создавать на основе описания модели требуемого объекта проектирования достаточно эффективные программные системы. Основная функция САПР - выполнение автоматизированного проектирования на всех или отдельных стадиях проектирования объектов и их составных частей. Проблема создания и использования САПР являлась предметом исследований Братищева Д.И.[113], Буркова В.Н. [12], Вермишева Ю.Х [17] Глушкова В.М[20]., Казеннова Г.Г. [39], Норенкова И.П.[64,69], Петренко А.Щ71], Прохорова А.Ф. [74], Самойлова Д.С. [87], ЧапцоваР.П [59, 106] и ДР
Существующие системы разработки АОС не являются средствами автоматизации проектирования, так как они ориентированы на разработку обучающих курсов с фиксированными способами обучения и не позволяют проектировать АОС как программную систему.
С учетом вышеизложенного, целью работы является разработка методологии автоматизации проектирования обучающих систем с использованием принципов объектно-ориентированного проектирования. (рис. 2.).
Схема исследования
Цель: Разработка методики автоматизации проектирования автоматизированных обучающих систем
Анализ АОС как прикладной системы
Анализ АОС как сложной системы в виде объектов и отношений между ними
Получение множества моделей АОС на основе объектно-ориентированного подхода
Разработка типовых моделей АОС
Разработка методологии автоматизации проектирования АОС
Рис 2 Схема исследования
Основная идея работы заключается в объединение преимуществ структурного и объектно-ориентированного подходов к проектированию, получение на их базе принципиально новой методики, позволяющей создавать взаимозаменяемые части программной системы.
Указанная цель работы определила следующие задачи исследований:
• анализ АОС как прикладной системы;
• анализ АОС как сложной системы в виде объектов и отношений между ними;
• получение множества моделей АОС на основе объектно-ориентированного подхода;
• разработка типовых моделей АОС;
• разработка методологии автоматизации проектирования АОС;
• реализация предложенной методики автоматизации проектирования АОС.
В диссертационной работе решение задачи автоматизированного проектирования АОС основано на следующих принципах, выносимых автором в качестве защищаемых положений:
• неадекватность объектно-структурных методов необходимому уровню абстракции при проектировании АОС;
• новый уровень абстракции - контейнер, позволяющий формально определять правила построения контейнерной модели автоматизированной обучающей системы;
• использование контейнеров как объединения преимуществ объектного и структурного подходов позволяет построить эффективные методы автоматизированного проектирования АОС.
При решении поставленных в диссертационной работе задач использованы математические модели объектов, составляющих предметную область АОС, базирующиеся на теории множеств [44,46,109].
Основные положения диссертации отражены в 8 публикациях [60,61,62,63,64,101,102,204] и подтверждены свидетельством об официальной регистрации программы для ЭВМ [103].
Диссертационная работа обобщает результаты исследований, проводившихся при непосредственном участии автора, по следующим целевых программам Министерства Образования России:
• «Информационные технологии в образовании и науке» (Приказ № 1273 от 30.12.94);
• «Учебная техника» (Указание от 16.01.98 № 33-18. Приказ № 580 от 5.03.99).
Основные положения и результаты, полученные в диссертационной работе, доложены и обсуждены на Всероссийском методическом семинаре «Компьютерные технологии в образовании» (г. Челябинск, 1995 г.), на
12
Всероссийской научно-методической конференции «Новые информационные технологии и учебная техника» (Челябинск, 1995 г.), на Всероссийской научно-методической конференции «ТЕЛЕМАТИКА '97" (Санкт-Петербург, 1997 г.), на межрегиональном научно-практическом семинаре «Информатизация органов управления регионального и муниципального уровней» (г. Челябинск, 1998 г.), на межрегиональной научно-методической конференции «Проблемы и перспективы высшего профессионального образования в Уральском регионе» (Челябинск 1999 г.). Практические результаты экспонировались на всероссийской выставке «ЛЕНЭСКПО» (Санкт-Петербург, 1997 г.).
Результаты диссертационной работы нашли практическое применение при разработке и реализации следующих программных систем:
• контрольно-тестирующего комплекса «Teach Wizard" 98™";
• имитационной обучающей программы «Эмулятор Internet»;
• обучающего курса «Деньги» для студентов экономического профиля.
Кроме того, разработанная методика проектирования АОС используется в учебном процессе по специальности 22100 «Электронные вычислительные машины, системы и сети», а также послужила основой формирования общеуниверситетской программы внедрения АОС в учебный процесс Южно-Уральского государственного университета.
Заключение диссертация на тему "Автоматизация проектирования обучающих систем на основе объектно-контейнерного подхода"
Выводы
1. Показано, что объектно-контейнерный подход является самостоятельным подходом в проектировании автоматизированных обучающих систем, что доказано на основе впервые созданного программного комплекса управления учебным процессом «Teach Wizard "98™», внедренного в учебном процессе кафедры ЭВМ ЮУрГУ и на Челябинской междугородной телефонной станции.
2. Объектно-контейнерный подход целесообразно также использовать в качестве средства для разработки технологий автоматизированного проектирования обучающих систем, что было доказано созданием на кафедре ЭВМ ЮУрГУ обучающего курса «Деньги» на базе Web-технологий для студентов экономических специальностей.
3. Показано, что методы автоматизации проектирования АОС можно применять для обучающих систем любого класса, что доказывается созданной автором имитационной обучающей системой «Эмулятор Internet».
ЗАКЛЮЧЕНИЕ
Проведенные в диссертационной работе исследования образуют теоретическую и практическую основу решения задачи автоматизированного проектирования обучающих систем и позволяют сформулировать основные выводы и получить конкретные результаты:
1. Показано, что потребности рынка автоматизированных обучающих систем не удовлетворяются существующими методами автоматизации проектирования на основе структурного и объектно-ориентированных подходов, так как структурное проектирование не оперирует терминами предметной области и затрудняет эволюцию программной системы, а объектно-ориентированный подход имеет слишком низкий уровень абстракции, требующий от проектировщика разработки практически всех аспектов функционирования АОС.
2. Для разработки методики автоматизации проектирования математически формализованы основные принципы объектно-ориентированного подхода к проектированию АОС. В частности, определены типы отношений между объектами, которые являются основой для комплексного подхода к проектированию АОС.
3. Сформулированы основные положения, определяющие объектно-контейнерный подход как последовательность модельных преобразований, при которых целевая модель АОС преобразуется в контейнерную и системную модели, определяющие функции АОС и ее управляющий алгоритм. Доказано, что эффективность контейнерной модели определяется минимальным и достаточным числом интерфейсов контейнера, а также показаны дополнительные условия включения объекта в контейнер.
4. Впервые разработана методика автоматизации проектирования обучающих систем, заключающаяся в следующем:
180
• обучающая система представляется в виде набора стандартных контейнеров;
• урок представляется двудольным графом, где каждая вершина есть объект со своим набором атрибутов и операций;
• проектирование обучающей системы ведется путем построения двудольного графа модели урока и выбора вида управляющего алгоритма.
5. На основе компонентной архитектуры «Component Object Model» операционных систем фирмы Microsoft предложен и практически реализован метод взаимодействия контейнеров и объектов автоматизированной обучающей системы.
6. На основе предложенного объектно-контейнерного подхода впервые разработаны и внедрены в практику учебного процесса следующие программные системы:
• Программный комплекс управления учебным процессом «Teach Wizard '98»;
• Имитационная обучающая система «Эмулятор Internet»;
• Обучающий курс «Деньги» для студентов экономических
Библиография Цытович, Павел Леонидович, диссертация по теме Системы автоматизации проектирования (по отраслям)
1. Автоматизированная обучающая система НИИЖТа / Под. Ред. Б.В. Пыринова. — Новосибирск, 1977. - 76 с. (Труды / Новосиб. Ин-т. йнж. Ж.-д. Транспорта. Вып. 182)
2. Адаптация обучающей программы к потребностям обучаемых в контроле. М.: ОНИ НИИВШ, 1976.—35с.,табл.(Экспресс-информ/НИИ пробл. высш. школы, отд. научн. информ. сер. «обучение и ком. воспитание в выс. и сред. спец. учеб. заведениях»),
3. Аджиев В. Объектная ориентация: Философия и футурология. / / Открытые системы.— 1996. — N 6.— С.40—45
4. Алексеева Е.Ф., Стефанюк B.JL, Экспертные системы — состояние и перспективы. / / Изв. АН СССР. Техническая кибернетика. — 1984. — № 5, С.153—167.
5. Архангельская JI.C. и др. Разработка и применение обучающих программ в учебном процессе на базе автоматизированных обучающих систем:Учеб.пособие. — М.: Изд-во МАИ, 1990.—57 с. :ил.
6. Бабэ Бруно. Просто и ясно о Borland С++. / Пер. с англ. — М.: Бином, 1995.—400с.
7. Бауэр Ф. Л., Гооз Г. Информатика. Вводный курс: В 3-х ч.41. / Пер с нем. — М.: Мир, 1990,—336 с.
8. Бауэр Ф. J1., Гооз Г. Информатика. Вводный курс: В 3-х ч.42. / Пер с нем. — М.: Мир, 1990,—423 с.
9. Биркгоф Г., Барти Т. Современная прикладная алгебра. —-М.: Мир, 1976. —220 с.
10. Ю.Боуман Дж., Эмерсон С., Дарновски М. Практическое руководство по SQL. 3-е издание / Пер с англ. — К.: Диалектика, 1997—320с.
11. П.Братищев Д.И. Методы оптимального проектирования. — М: Энергоатомиздат, 1984. — 142 с.
12. Брукс Ф. П. Как проектируются программные комплексы. М.: Мир, 1979, —300 с.
13. Будя А.П. Справочник по САПР/ под ред. В.И. Скурихина.—Киев: Техника,1988 .— 375 с.
14. Буч Г. Объектно-ориентированное проектирование с примерами применения. / Пер с англ. — М.: Конкорд, 1992. — 519 с.
15. Вейнеров О.М., Самохвалов Э.Н. Проектирование баз данных САПР. — М.: Высшая школа, 1990. — 232 с.
16. Вермишев Ю.Х. Основы автоматизации проектирования.— М.:Радио и связь, 1988. 280 с.
17. Гайсарян С.С. Объектно-ориентированные технологии проектирования прикладных программных систем / / http://www.citforum.ru/ooprsis
18. Гилл А. Введение в теорию конечных автоматов. — М.: Наука, — 1966. — 434 с.
19. Глушков В.М. Капитонова Ю.В., Летичевский A.A. Автоматизация проектирования вычислительных машин. — Киев: Наук, думка, 1975 — 288с.21 .Глушков В.М. Синтез Цифровых автоматов. — М.: Физматгиз., —1962, — 220 с.
20. Горбатов В.А.Введение в общую теорию алгебраических моделей:Учеб.пособие / Моск. инж.-физ.ин-т.— М.:МИФИ,1974—.4.2,—1978,—92с. .
21. Горбатов В.А.Теория частично упорядоченных систем.— М.:Сов. радио, 1976,—336с.
22. Горбатов и др. Логическое управление информационными процессами / В.А. Горбатов, П.Г. Павлов, В.Н. Четвериков; под ред. В.А.Горбатова — М.: Энергоатомиздат, 1984. — 304с.
23. Губанов В.А., Захаров В.В. и др. Введение в системный анализ: учеб. пособие / Под ред. Л.А.Петросяна.—Л.: Издательство Ленинградского университета, 1988.—232с.
24. Джамса К. Изучи сам Java сегодня — Минск.: ООО «Попурри», 1996. — 132 с.
25. Дьюхарст С. Старк К. Программирование на Си++. / Пер. с англ. —Киев: ДиаСофт, 1993.—272с.
26. Дэвид А. Марка, Клемент МакГоуэн. Методология структурного анализа и проектирования SADT -http ://lib.perm.ru/base/case.zip
27. Зайцева Л.В. и др. Разработка и применение автоматизированных обучающих систем на базе ЭВМ / Риж. политехн.ин-т;Л.В. Зайцева,Л.П.Новицкий,В.А.Грибкова!— Рига:Зинатне, 1989.—174 с.
28. ЗО.Зелковиц М. Шоу А, Гэнон Дж. Принципы разработки программного обеспечения. М, 1982. —400 с.31.3иглер К. Методы проектирования программных систем. / Пер. с англ. — М.: Мир, 1985. —328с.
29. Ирэ. П. Объектно-ориентированное программирование с использованием С++: Пер. с англ. — Киев: НИПФ ДиаСофт Лтд, 1995,—480 с.
30. Искусственный интеллект. В 3-х кн. Кн. 2. Модели и методы: Справочник / Под ред. Д.А.Поспелова — М.: Радио и связь, 1990.—304 с.
31. Искусственный интеллект: В 3-х кн. Кн. 1. Системы общения и экспертные системы: Справочник / Под ред. Э.В. Попова. — М.: Радио и связь, 1990.— 464 с.
32. Искусственный интеллект: В 3-х кн. Кн. 3. Программные и аппаратные средства: Справочник / Под ред. В.Н. Захарова, В.Ф. Хорошевского. —М.: Радио и связь, 1990.—386с.
33. Искусственный интеллект: Справочник / Под ред. В.Н. Захарова, В.Ф. Хорошевского. — М.: Радио и связь, 1990. — 125 с.
34. Исследования по техническим обучающим системам: Межвуз.сб. / Казан, авиац.ин-т им.А.Н.Туполева; Редкол.: Л.И.Ожиганов(отв.ред.)и др.—Казань: КАИ,1978.—147с.
35. Йордон Э., Аргила К. Структурные модели в объектно-ориентированном анализе и проектировании — М: изд-во «ЛОРИ», 1999,—264 с.
36. Казеннов Г.Г. Структура, основные требования и принципы построения САПР микроэлементных приборов. — М: Радио и связь, 1978. — 226 с.
37. Киндлер Е. Языки моделирования. / Пер. с чеш. — М.: Энергоатомиздат, 1985.—288с.
38. Красилов А. За горизонтом экспертных систем / / Открытые системы.— 1996. — N 6.— С.65—69
39. Крисевич B.C., Кузьмич JI.A., Шиф. A.M. и др. Экспертные системы для персональных компьютеров: методы, средства, реализации. Справочное пособие.—Минск: ВышэЙшая школа., 1990. — 120 с.
40. Кудрявцев В.Б. Алешин C.B., Подколзин A.C. Введение в теорию автоматов. —М.: Наука, 1986. — 205 с.
41. Кузнецов О. П., Адельсон-Вельский Г.М. Дискретная математика для инженера. — М.: Энергоатомиздат, 1988.— 480 с.
42. Кузнецов О.П. О программной реализации логических функций и автоматов // Автоматика и телемеханика. 1977.№ 7 С.163—174.
43. Кук Д., Бейз Г. Компьютерная математика. / Пер. с англ. — М.: Наука, Гл. ред. Физ.-мат. лит., 1990.—384 с.
44. Левин Р и др. Практическое введение в технологию искусственного интеллекта и экспертных систем с иллюстрациями на Бейсике / Пер. с англ.—М.:Финансы и статистика, 1990. — 239 с.
45. Лингер Р, Миллс X, Уитт Б. Теория и практика структурного программирования. М., 1982. — 210 с.
46. Логиновский О.В., Горбунов Б.М. Комплексная автоматизация градостроительства проектирования. // «Строительство и архитектура». — 1986. — № 6, С. 19 — 21
47. Логиновский О.В., Тарасов В.М., Чапцов Р.П. Интеллектуальные информационные технологии и системы: Учебное пособие. — Челябинск: ЧГТУ, 1996. — 53 с.
48. Логиновский О.В., Тарасов В.М., Чапцов Р.П. Разработка концептуально-программных документов по информатизации системы образования города на базе ЧГТУ: Учебное пособие / Под ред. О.В. ЛогиновскогЪ. — Челябинск: ЧГТУ, 1996 — 53 с.
49. Лоуренс Харрис. Программирование OLE. Освой самостоятельно за 21 день / Пер. с англ. — М.: БИНОМ, 1995, —464 с.
50. Лукас П. С++ под рукой / Пер с англ. — Киев: ДиаСофт, 1993,—176 с.
51. Майоров С.А., Новиков Г.И. Принципы организации цифровых машин. —Л.: «Машиностроение» (Ленингр. отд-ние), 1974.— 432 с.
52. Маклаков C.B. BPWin и ERWin.CASE-средства разработки информационных систем. — М.: Диалог-МИФИ, 1999— 256с.
53. Мак-Манус, Джеффри П. Обработка баз данных на Visual Basic 6. / Пер. с англ.—Киев.;М.;Спб.;. Издательский дом «Вильяме», 1999.—672 с.
54. МакФедрис П. Язык HTML / Пер. с англ. В.Л. Григорьева. — М.: Компьютер, ЮНИТИ, 1996 — 311с.
55. Машбиц Е.И. Психологические основы управления учебной деятельностью:Метод.пособие. — Киев:Вища шк.,1987,—223с.
56. Мейер Д. Теория реляционных баз данных. — М.: Мир, 1987.—445 с.
57. Мельников A.B., Цытович П.Л. Модель взаимодействия виртуальных объектов для имитации работы в сети Internet / / Новые педагогические и информационные технологии-Вып. 4 —http://scholar.urc.ac.ru/pedjournal/numero4/pedag/tsit2.html
58. Мельников A.B., Цытович П.Л. Принципы построения обучающих систем и их классификация / / Новые педагогические и информационные технологии- Вып. 4.— http://scholar.urc.ac.ru/pedJournal/numero4/pedag/tsit3.html
59. Нейлор К. Как построить свою экспертную систему / Пер. с англ.—М.: Энергоатомиздат, 1991.— 286 с.
60. Нейронные сети на персональном компьютере / А.Н. Горбань, Д.А. Россиев — Новосибирск: Наука. Сибирская издательская фирма РАН, 1996. — 276с.
61. Никлаус Вирт. Долой «Жирные» программы // Открытые системы,— 1996. — N 6. — С.27—31
62. Нильсон Н. Принципы искусственного интеллекта: ГГер. с англ.—М.: Радио и связь, 1985. — 376 с.
63. Норенков И.П. Введение в автоматизированное проектирование технических устройств и систем. — М.: Высшая школа, 1986. — 344 с.
64. Пакеты прикладных программ. Технология разработки. Новосибирск, 1984. — 110 с.
65. Петренко А.И., Основы автоматизации проектирования. — Киев: Вища шк., 1986. — 230 с.
66. Подбельский В.В. Язык С++: Учеб. Пособие. — М.: Финансы и статистика, 1995. — 560 с.
67. Подласый И.П. Педагогика: Учеб. для студентов высших пед. Учеб. заведений. — М.: Просвещение: Гуманит. изд. центр ВЛАДОС, 1996. — 432 с.
68. Прохоров А.Ф. Основные этапы разработки автоматизированного проектирования. — М: Высшая школа, 1986. — 112 с.
69. Пьюполо. Дж. OLE: Создание элементов управления. / Пер. с англ.— Киев: Издательская группа BHV, 1997— 432с.
70. Рабин М, Скотт Д. Конечные автоматы и задачи их разрешения // Кибернетический сборник. М.: Изд-во иностр. лит., 1962. Вып.4. С.58—91
71. Разработка САПР. В 10 кн. Кн. 1. Проблемы и принципы создания САПР: Практ. пособие / A.B. Петров, В.М. Черненький; под ред. A.B. Петрова.—М.: Высш.шк.,1990. —143 с.
72. Разработка САПР. В 10 кн. Кн. 9. Имитационное моделирование: Практ. пособие / В.М. Черненький; Под ред. A.B. Петрова. — М.: Высш. шк., 1990. — 112 с
73. Разработка САПР: В 10 кн. Кн. 8. Математические методы анализа производительности и надежности САПР: Практ. пособие/В.И. Кузовлев, П.Н. Шкатов;Под ред. A.B. Петрова.—М.:Высш. шк., 1990. — 144 с.
74. Рихтер. Д. Windows для профессионаловпрограммирование в Win32 API для Windows NT 3.5 и Windows 95) / Пер. с англ. — М.: Издательский отдел «Русская Редакция» ТОО «Channel Trading Ltd.», 1995. — 720с.
75. Роджерсон Д. Основы СОМ / Пер. с англ. — М.: Издательский отдел «Русская Редакция» ТОО «Channel Trading Ltd.», 1999 — 376с.
76. Романов В.Ю. Программирование на языке С++. Практический подход.—М.: Компьютер, 1993. — 160с.
77. С. Спейнаур, В Куэрсиа. Справочник Web-мастера —Киев.: Издательская группа BHV, 1997. — 300 с.
78. Савельев А.Я. и др. Подготовка информации для автоматизированных обучающих систем: Метод.пособие для преподавателей и студентов вузов / Под ред.А.Я.Савел ьева.—М.:Высш.шк.,1986. — 176 с.
79. Симкин С. Бартлетт Н. Лесли А. Программирование на JAVA. Путиводитель — К. : НИПФ «ДиаСофт Лтд», 1996
80. Системы управления базами данных и знаний: Справочное пособие / Под. ред. А.Н. Наумова.—М.: Финансы и статистика, 1991. — 320 с.
81. Страуструп Б. Язык программирования Си++ / Пер. с англ. — М.: Радио и связь, 1991. — 532с91 .США 01 в 1/06, 35.22А, патент № 4176470, Emmerson О. Gosner ИЗР № 7,1998 с 25
82. США 609 В 23/18, 35-19А, патент № 4006538, Xerox Corp, ИЗР №2, 1978 с.7
83. Ткачев A.M., Чапцов Р.П. прикладные вопросы дискретной математики в автоматизации проектирования: Учебное пособие. — Челябинск: ЧПИ, 1987.— 84 с.
84. Ульман Дж. Основы систем баз данных.—М.: Финансы и статистика, 1983. 560 с.
85. Уотермен Д. Руководство по экспертным системам.—М.: Мир, 1989 —230 с.
86. Ф. Льюис, Д. Розенкранц, Р. Стирнз. Теоретические основы проектирования компиляторов / Пер с англ. — М.: Мир, 1979,— 654 с.
87. Фокс Дж. Программное обеспечение и его разработка. М., 1985. —300 с.
88. Хантер Р. Проектирование и конструирование компиляторов/ Пер. с англ. — М.: Финансы и статистика, 1984, —232 с.
89. Харьковский З.С. Вопросы теории и практики разработки обучающих программ. Вып. I М. Знание 1974—34с.
90. Хуторской А. В.Эвристическое обучение: теория, методология, практика. — М.: Международная педагогическая академия, 1998. — 266 с.
91. Шалыто А.А. SWITCH-технологии. Алгоритмизация и программирование задач логического управления. — СПб.: Наука, 1998. —628 с.
92. Яблонский С.В. Введение в дискретную математику: Учеб. Пособие для вузов.—2-е изд., перераб и доп. — М.:Наука. Гл. ред. Физ.-мат. Лит. — 384 с.
93. Barbier Г/ Object-oriented analysis of systems through their dynamical aspects // Journal of Object-Oriented Programming, May 1992, v.5,N2,p.45.
94. Bird C. Modeling gaining ground. // Software Magazine, Jan. 1992, v. 12, N l,p.67.
95. Brooks, F. Aprill 1987. No Silver Buller: Essence and Accidents of software Engineering. IEEE Computer, vol 20(4) p.12.
96. Coad P, Yourdon E. Object-Oriented Analysis, 2nd edition. — Englewood Cliffs, NJ: Prentice Hall, 1990
97. Coad P, Yourdon E. Object-Oriented Design. — Englewood Cliffs, NJ: Prentice Hall, 1991
98. Courtois P. June 1985. On Time and Space Decomposition of complex Structures. Communications of the ACM, vol. 28 (6), p 596
99. Cox B.J.: «Message/Object Programming: An evolution Change in Programming Technology». IEEE SOFTWARE, vol.1 , no 1, January 1984, pp.51—61.194
100. DeMarco T. Structured Analysis and System Specification — Englewood Cliffs, NJ: Prentice Hall, 1979
101. Jackson M. 1975/ Principle of Program Design/ Orlando, FL: Academical Press.
102. Jackson, M. 1983. System Development. Englewood Cliffs. NJ: Prentice-Hall.
103. Lippman S. 1989. C++ Primer. Reading, MA: Addison-Wesley
104. Nijssen, Halpin. Conceptual Schema and Relational Database Design — Prentice Hall, 1989125.0rr K, 1971. Structured Systems Development. New York. NY: Yourodon Press.
105. Polh I, 1989. C++ for programmers. Redwood City, CA: Benj amin/Cummings
106. Wiener, R. June 1987. Object-Oriented Programminig in C++ — A Case Study. SIGPLAN Notices vol 22(6)
107. Yourdon E. Object-Oriented Systems Development: An Integrated Approach — Prentice Hall, 1994
108. Zilles, S. 1984. Types, Algebras, and Modelling, in On Conceptual Modeling: Perspectives from Artificial Intelligence, Databases, and Programming Language
-
Похожие работы
- Математическое и информационное обеспечение процесса автоматизированного управления перегрузочным процессом порта
- Оптимизация параметров и размещения контейнерных пунктов в железнодорожных узлах
- Оптимизация технико-технологических параметров системы контейнерных перевозок на железной дороге
- Совершенствование технологических решений в организации работы контейнерных терминалов
- Методика технологического проектирования морских контейнерных терминалов в условиях эксплуатационных и коммерческих требований
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность