А. Желтов, программист сектора "Корвет" научно-технического предприятия "Альтернатива"

Семейство "Автор" — гипермедиа для терминальных классов

Прошло достаточно много времени с тех пор, как первые КУВТ-86 и "Ямахи" пришли в школы; с тех пор многое изменилось. Изменился и подход к информатизации образования. Первоначальную установку на обучение программированию в школе постепенно вытеснил акцент на подготовку грамотного пользователя. Впрочем, действия руководства народного образования во многом непредсказуемы, и, как нам стало известно, есть планы введения (по крайней мере в московских школах) предмета "Программирование".

В любом случае широкой областью применения компьютеров в школе является информатизация общеобразовательных предметов. В последнее время за рубежом широко стали применять для этой цели т. н. системы гипермедиа (hypepmedia). Познакомились с ними и наши преподаватели и ученики — в рамках "пилотного" (система LinkWay) и "московского" (система TeachCAD) проектов. Однако упомянутые системы реализованы только на IBM РС-совместимых компьютерах. В этом плане между пользователями такой техники и пользователями отечественных КУВТов наметился серьезный разрыв — ведь гипермедиа действительно позволяет создавать учебные программы на качественно новом уровне.

Сократить этот разрыв, а быть может, где-то и свести к нулю поможет проект "Автор", реализуемый нашим предприятием. Проект предусматривает создание систем гипермедиа для всех основных типов отечественных терминальных классов — КУВТ-86, УКНЦ и "Корвет", КУВТ на основе БК-0011 и БК-0011М. Значительная часть проекта уже выполнена, и системы семейства "Автор" (оригинальное название AUTOR3) уже поставляются пользователям КУВТ-86, КУВТ-86М и КУВТ УКНЦ. 01. Система "Автор-Корвет" подготавливается к поставке, в ближайшее время будут завершены работы по созданию аналогичной системы для УКНЦ.

Первоначально система "Автор" создавалась для разрешения довольно специфичной проблемы, возникающей при разработке учебных программ: Учебная программа, обучающая или контролирующая, должна быть не только красиво и качественно на писана, но еще и методически правильно построена. Программисты обычно не владеют методикой преподавания, а методисты не обладают достаточно высокой программистской квалификацией, необходимой для использования в программе графики, музыки, мультипликации. Собрать вместе двух таких специалистов — уже само по себе достаточно трудное дело; а ведь им еще надо найти общий язык...

Мы разрешили эту проблему так: программисты создают систему, позволяющую пользователю-непрограммисту создавать высокоэффективные педагогические программные средства, максимально использующие возможности компьютера, и таким образом делают свою часть работы; а методисты работают с этой системой и создают готовый программный продукт. Но, как часто бывает, после создания системы выяснилось, что область ее применения значительно шире, чем представлялось вначале.

Помимо тех возможностей, которые система предоставляет для комплексной информатизации практически любых учебных курсов, ее можно использовать, скажем, для реализации педагогического принципа "Learning through teaching" (обучая других, обучаюсь сам) — подробнее см., например, статью "TeachCAD — союз ученика и учителя" в "ИНФО" №5 за 1991 г. Кроме того, с помощью системы можно создавать базы графических и музыкальных фрагментов ("электронные галереи" и "музыкальные шкатулки"), игры, основанные на принципе гипертекста (например, аналогичные "Larry" на IBM PC) и многие другие программы и программные системы.

Разработка "Автора" была начата в 1989 г., практически одновременно (и совершенно независимо) с разработкой системы "LinkWay" Лэрри Керайети для фирмы IBM. Коллектив разработчиков "Автора" (О. О. Войцехович, К. И. Воропаев и Д. А. Котов) ознакомился с LinkWay только в 1991 г.

Системы во многом похожи но есть между ними и существенные различия. Прежде всего, Автор" не содержит внутреннего языка, аналогичного языку Script. Большинство задач, для решения которых в LinkWay приходится писать программу на Script, в "Авторе" решаются с помощью стандартных средств. Наша система не содержит средств для редактирования текстовых полей в подготовленных с ее помощью программах; впрочем, необходимость в таких средствах вызывает сомнение. Кроме того, "Автор" построен по принципу "открытой архитектуры", и, если его стандартных возможностей для решения каких-либо задач окажется недостаточно, пользователь имеет возможность подключить свой собственный модуль, написанный на ассемблере либо на языке высокого уровня (в терминологии "Автора" такие программы именуются "кодовыми кадрами").

Чтобы читатель получил более ясное представление о системе "Автор", рассмотрим сначала принципы, на которых основана система,— принцип гипертекстового построения программ и принцип WYSIWYG, тем более что их используют и LinkWay, и TeachCAD, и другие.

Гипертекстовое построение программ получило в последнее время довольно широкое распространение однако общепринятого определения гипертекста пока не существует. Приведем одно из многих:

"Гипертекст представляет собой комбинацию текстов, созданную применительно к возможностям ЭВМ обрабатывать и отображать информацию. Гипертекст может отличаться от обычного текста порядком следования материала, элементы гипертекста могут размещаться в виде иерархического дерева или сети организации (он может иметь несколько уровней краткости изложения и детализации материала), способом представления материала (его использование может обеспечить воспроизведение движущихся и преобразующихся иллюстраций) и т. д." [2].

Работу программы, организованной в гипертекстовой форме, можно сравнить с чтением энциклопедии. Если роман или статью обычно читают последовательно, с граница за страницей от начала и до конца, то с энциклопедией работают, как правило, по-другому: открывают оглавление, находят нужную статью и изучают ее. Встретив ссылку на другую статью, изучают ее и т. д. В энциклопедии имеется множество перекрестных ссылок, и читатель (в зависимости от того, что и насколько подробно он желает изучить) выбирает из множества возможных путей получения информации один-единственный (аналогия заимствована из [4]).

Так же построена и гипертекстовая программа. Она состоит из множества отдельных модулей, причем порядок, в котором расположены эти модули, как правило, не имеет значение. При запуске программы исполняется первый модуль; в нем содержатся ссылки на один или несколько других. Если ссылка одна, то после его иcполнения происходит переход да модуль, указанный в ссылке; если ссылок неекилько, то переход осуществляется по какому-либо признаку, например по правильному либо неправильному ответу ученика на заданный вопрос: если ответ верен, то осуществляется переход, например, на модуль с именем "А", если неверен — то на модуль с именем "Б". Взаимодействие программы с по пользователем (в приведенном случае — получение и анализ ответа ученика) в разных системах организовано по-разному; о механизмах взаимодействия с пользователем, заложенных в "Автор", будет сказано позднее.

Программные модули постоянно сменяют друг друга, как кадры на экране при просмотре кинофильма. Мы воспользовались этой аналогией и назвали модули системы "Автор" кадрами.

В настоящее время принцип гипертекста получил дальнейшее развитие. Теперь под гипертекстом понимают не только комбинацию текстов; современные гипертекстовые системы, называемые еще системами гипермедиа, кроме собственно текста поддерживают вывод графики (LinkWay, TeachCAD), а некоторые — еще и исполнение музыкальных фрагментов (AUTOR3 и "Автор-Корвет"). В системе "Автор-Корвет", кроме того, предусмотрены специальные средства для использования мультипликации.

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

Другой основной принцип, заложенный в систему "Автор",— WYSIWYG (what you see is what you get — чго вы видите, то и получаете: применительно к данному случаю — интерактивное программирование в образах конечной программы).

Как вы помните, "Автор" создавался для пользователей-непрограммистов, значит, использование в системе какого-либо внутреннего языка программирования сразу исключалось. Необходимо было найти такой механизм создания конечных программ, ко торый был бы прост, удобен и эффективен. После многочисленных экспериментов он был найден — теперь процесс работы с "Автором" больше напоминает не программирование, а конструирование программы, сборку ее из составных частей.

Например, для того чтобы вывести какое-либо графическое изображение на экран, не требуется описывать процесс его появления с помощью операторов, как в языках программирования; достаточно сделать рисунок в графическом редакторе, затем при помощи системного редактора-компоновщика поместить его в нужное место на экране. Точно так же, в диалоге с пользователем, проходит весь процесс создания программы: формирование новых модулей-кадров, их объединение в структуры, задание условий, при выполнении которых происходит переход на другие кадры, и т. д.

Необходимо заметить, что системы, построенные по принципу WYSIWYG, отличают не только простота и удобство использования, но и то, что программа создается непосредственно в образах конечного результата. Говоря другими словами, вид экрана при проектировании программы практически не отличается от того, что мы видим во время исполнения готовой программы. Безусловно, это значительно облегчает процесс программирования.

Итак, пользователь системы "Автор" конструирует на экране дисплея свою программу, организованную по принципу гипертекста — в виде множества программных модулей-кадров, связанных друг с другом ссылками. Однако есть возможность создавать программы, порядок исполнения которых не является жестко заданным; специальные структуры управления позволяют организовывать диалог с пользователем и в зависимости от его действия изменять ход выполнения программы.

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

Каждому ответу можно присвоить две степени активации: если задана одна из них, то переход будет происходить только тогда, когда указатель находится в данной области экрана и нажата кнопка манипулятора либо клавиша ВВОД; если задана другая, то для перехода достаточно, чтобы указатель просто попал в заданную область-ответ.

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

Такой гипертекстовый компьютерный атлас достаточно просто создается средствами системы "Автор"; основная трудность заключаемая в создании изображений континентов и стран при помощи графического редактора и вводе информации о странах в программу. Впрочем, если воспользоваться принципом "Learning through teaching" и доверить часть работы ученикам, то можно и достаточно быстро создать программу, и закрепить у учеников навыки работы с графическим редактором (да и знания по географии тоже).

Второй тип стандартного интерфейса пользователя системы "Автор" — переход по введенной строке символов. Это довольно традиционный тип интерфейса, но, как показала практика, потребность в нем возникает довольно часто.

Чтобы оценивать знания ученика, накапливать статистическую информацию в процессе работы, производить несложные вычисления и т. д., в системе "Автор" имеются специализированные переменные, именуемые статистиками. Используя структуры управления (статистические кадры в AUTOR3 и структура CASE в "Автор-Корвет"), статистики можно изменять и отслеживать их значения. Если значения статистик удовлетворяют заданным при создании программы требованиям, порядок исполнения программы соответствующим образом изменяется.

В состав "Автора", кроме собственно редактора-компоновщика, при помощи которою создаются программы, входят и другие инструментальные средства, предназначенные для подготовки графических и музыкальных фрагментов, кодовых вставок и т. д. Поставочный комплект системы, как правило, состоит из:

Состав системы "Автор" для УКНЦ до конца еще не определен, но будет в целом аналогичным приведенному выше.

Надеюсь, цель, которую я ставил перед собой, достигнута и читатели получили представление о гипермедиа вообще и системах семейства "Автор" в частности. Если есть желание узнать о них больше, рекомендую ознакомиться с литературой, список которой приведен ниже.

ЛИТЕРАТУРА

  1. Воропаев К. И. Система "AUTOR3": Техническое описание и руководство пользователя. Барнаул, 1992.
  2. Нельсон Т. Информационные системы будущего // Информационный поиск: Сб. материалов. М.: Воениздат, 1970.
  3. Субботин М. М. Новая информационная технология: создание и обработка гипертекстов // НТИ. Сер. 2. 1988. № 5.
  4. Введение в систему LinkWay: (Комплект документации на ПО, поставляемое в рамках "пилотного проекта").