«ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ И СИТУАЦИОННЫЕ ЦЕНТРЫ Омск 2010 УДК 681.3.004.8 ББК 32.81 И 972 Научный редактор – д-р. техн. наук профессор В. А. Филимонов Омский филиал Института математики СО РАН Рецензент: д-р. физ.-мат. ...»
Федеральное агентство по образованию
Омский государственный институт сервиса
Кафедра прикладной математики и информатики
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ
И СИТУАЦИОННЫЕ ЦЕНТРЫ
Омск 2010
УДК 681.3.004.8
ББК 32.81
И 972
Научный редактор – д-р. техн. наук профессор В. А. Филимонов
Омский филиал Института математики СО РАН
Рецензент: д-р. физ.-мат. наук профессор А. К. Гуц Омский государственный университет
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ И СИТУАЦИОННЫЕ
ЦЕНТРЫ: / Анисимов О. С., Берс А. А., Дубенский Ю. П. и др./Под науч. ред. В. А. Филимонова / Омск: Омский государственный институт сервиса, 2010.- 214 с.: ил.
ISBN 978-5-93252-149- В монографии рассматриваются потенциальные возможности современных информационных технологий. Ситуационные центры понимаются как места максимальной концентрации информационных потоков, связанных с постановкой и решением многодисциплинарных задач. Даются рекомендации по постановке и решению актуальных задач, возникающих при организации процессов исследования, проектирования и обучения.
В монографии не рассматриваются технические вопросы, связанные с особенностями устройства и эксплуатации оборудования и программного обеспечения ситуационных центров.
Монография предназначена в первую очередь для специалистов, аспирантов и студентов, которые хотят получить общее представление о современных возможностях организации коллективных процессов исследования и обучения.
© Анисимов О. С., Берс А. А., Дубенский Ю. П., Жирков О. А., Сердюков Г. Ф., Углев В. А., Филимонов В. А., Чернявская В. С.
© Омский государственный институт сервиса (оформление) Содержание Предисловие научного редактора……………… Введение ………………………………………… Часть 1. Основы информационных технологий.. Информационные технологии 1.
и ситуационные центры………………………… Информационно-деятельностная структура 2.
ситуационного центра ………………………….. Электронный стратегический театр …………… 3. Организация ситуационного центра 4.
по экспертизе состояния Саяно-Шушенской гидроэлектростанции …………………………… Часть 2. Трансляция технологий ………………. Стратегический спецназ: эскиз проекта ……….
1. Информатика образования ……………………...
2. Рефлексия подходов к дизайн-образованию 3.
и технологии ситуационного центра …………... Подготовка сервисных команд 4.
ситуационного центра ………………………….. Биографичность смысла учебного текста……… 5. Заключение ………………………………………. Предисловие научного редактора Технологии ситуационного центра в первом приближении – это вариант прикладного системного анализа, реализованный в месте максимальной концентрации информационных потоков, сопровождающих коллективную работу по постановке и решению многодисциплинарного комплекса задач.
Настоящая монография написана как прототип фундаментального руководства по формированию и использованию информационных технологий ситуационного центра. Ситуационные центры – лучшее, но не единственное место для применения этих технологий.
Знание предельных возможностей каждого компонента позволяет грамотно строить прототипы и промежуточные технологии.
В монографии описаны информационные инструменты: подходы, методы и другие компоненты технологии. Описана также актуальная многодисциплинарная прикладная задача, позволяющая обозначить проблемы и наметить пути их решения.
В монографии представлены, в основном, авторские подходы и методы. Материалом послужили доклады и сообщения авторов, представленные на ежегодных конференциях «Ситуационные центры» в 2006–2010 гг. в Москве, в Российской академии государственной службы при Президенте РФ, и «Рефлексивный театр ситуационного центра» в 2007– 2009 гг. в Омске, в Омском государственном институте сервиса и Омском филиале Института математики СО РАН.
В монографии не рассматриваются технические вопросы, связанные с особенностями устройства и эксплуатации оборудования и программного обеспечения ситуационных центров.
Монография предназначена, в первую очередь, для специалистов, аспирантов и студентов, которые хотят получить общее представление о современных возможностях организации коллективных процессов исследования и обучения.
Монография состоит из двух частей. В первой части рассматриваются компоненты информационных технологий и возможности их применения для постановки и решения различных прикладных задач. Во второй части рассматриваются вопросы, связанные с образованием. Эта часть ориентирована на формирование учебноисследовательских ситуационных центров.
Первую часть открывает раздел «Информационные технологии и ситуационные центры: точки роста» (В. А. Филимонов), содержащий краткое введение в технологии ситуационного центра и указание на некоторые перспективные компоненты информационных технологий.
В разделе «Информационно-деятельностная структура Ситуационного центра» (А. А. Берс.) фундаментальные принципы информатики использованы для рассмотрения деятельности в приложении к людям и компьютерам.
В разделе «Электронный стратегический театр» (О. С. Анисимов, О. А. Жирков) представлено описание авторской системы реализации методологии коллективной деятельности средствами ситуационного центра.
Общность изложения подходов определяется наличием общих «слов» рассмотрения заявленного предмета. Во всех случаях обсуждаются предельные основания подходов, их логика и онтология в применении к естественным и искусственным системам, а также рассматривается построение соответствующих технологий в «жстком» и «мягком» вариантах.
Различие в подходах заключается в следующем. В тексте А. А.
Берса указаны условия, при соблюдении которых возможно построение «правильных» информационных систем, в которых минимизировано количество ошибочных интерпретаций команд (программ), смыслов, результатов и эффектов. Основное внимание уделяется построению искусственно-естественных систем.
В разделе О. С. Анисимова и О. А. Жиркова предложена методология «правильного» процесса познания. Одна из реализаций методологии выполнена в форме электронного делового театра на ситуационном центре. Здесь основное внимание уделяется естественно-искусственным системам.
В разделе В. А. Филимонова рассматривается задача формирования «мягких» промежуточных технологий сборки и эксплуатации виртуальных комплексов – учебно-исследовательских ситуационных центров. Процессы постановки и решения задач рассматриваются как параллельные. Основное внимание уделяется построению прототипов искусственно-естественных систем разной степени «правильности» на основе доступных ресурсов, которые, как правило, не вполне соответствуют жстким критериям.
В разделе «Организация ситуационного центра по экспертизе состояния Саяно-Шушенской ГЭС» Г. Ф. Сердюкова и В. А. Углева предложен комплексный проект создания сетевого варианта ситуационного центра для анализа последствий чрезвычайной ситуации, разработки сценариев е развития и вариантов действий вовлечнных в ситуацию действующих лиц. Потенциал этого раздела обусловлен сложностью, актуальностью и конкретностью рассматриваемой ситуации. Задачи, возникающие при анализе такого рода ситуаций, являются хорошим полигоном для проверки работоспособности различных методов и обоснованности претензий их авторов.
Во второй части приведены авторские методики подготовки специалистов в области технических и гуманитарных наук, иллюстрирующие особенности рассмотренных подходов.
В тексте О. С. Анисимова «Стратегический спецназ: эскиз проекта» представлены фрагменты описания многолетнего опыта профессионального коллектива по выращиванию методологической культуры стратегического мышления. Основное внимание уделено вопросам формирования стратегий.
В разделе А. А. Берса «Информатика образования» сконцентрирован опыт обучения информационным технологиям старшеклассников, студентов и аспирантов. Информационные технологии здесь являются и предметом изучения и инструментом формирования образовательного процесса.
В тексте В. С. Чернявской «Рефлексия подходов к дизайнобразованию: технологии ситуационного центра» сделан анализ дизайн-образования и эксперимента по использованию для этого процесса технологий ситуационного центра в режиме телемоста «Омск-Владивосток».
В материалах В. А. Филимонова «Подготовка сервисных команд ситуационного центра» приведены описания учебных курсов, ориентированных на подготовку сервисных команд для ситуационных центров.
Завершает монографию текст Ю. П. Дубенского «Биографичность смысла учебного текста», который является примером личностной рефлексии гуманитарного исследования.
Предисловие, введение и заключение написаны В. А. Филимоновым.
Процесс, который назван «мировым финансовым кризисом», и порожднные им процессы местного уровня демонстрируют, что возможности средств управления запаздывают относительно процесса усложнения объектов управления. В этих условиях повышается актуальность задачи совершенствования методов управления различными системами. Одним из направлений является использование информационных технологий, которые основаны на концепции ситуационного центра. Важность этого направления подтверждается, в частности, ежегодным проведением конференций, посвящнным ситуационным центрам, в Российской академии государственной службы (РАГС) при Президенте РФ.
Словосочетание «ситуационный центр» (далее СЦ) стало весьма распространнным. На соответствующий запрос в Яндексе выдатся более полумиллиона ссылок. Сам термин понимается достаточно широко. Так может быть назван и соответствующим образом оснащнный ноутбук, который позиционируется как персональный СЦ, и СЦ руководителя государства. С другой стороны, для аналогичных объектов могут использоваться термины «ситуационная комната», «интеллектуальный кабинет», «визионариум» и т. п. Одни ситуационные центры, например для использования в метрополитенах, специализированы достаточно узко, другие являются системами широкого назначения.
Имеются впечатляющие примеры использования ситуационных центров. Так, во время боевых действий в Югославии переговоры враждующих сторон проводились с использованием ситуационных центров. Одним из ключевых факторов являлась «очная ставка с действительностью» в реальном времени. В случае противоречивых утверждений участников переговоров о местонахождении подразделений враждующих вооружнных формирований из ситуационного центра давалась команда ближайшим к конкретному месту вертолтам произвести прямую видеотрансляцию ситуации.
Качество изображения позволяло увидеть детали вплоть до знаков различия на обмундировании. Далее была обеспечена возможность соответствующему руководителю отдать команду на отвод войск на согласованные рубежи.
Другим примером является проект «Киберсин» Стаффорда Бира – создание системы управления экономикой Чили в 1973 г. В настоящее время правительство Чили финансирует историческую реконструкцию этого проекта. Конференция Metaphorum-2007 прошла под лозунгом «Новые горизонты Организационной Кибернетики после Стаффорда Бира».
Предметом нашего рассмотрения являются ситуационные центры, которые могут быть использованы для исследования и конструирования различных, в первую очередь социальных, систем. Материалом послужил опыт участия авторов в разработке технических и программных средств в области приборостроения в 1970–1988 гг., создания многодисциплинарных технологий коллективного проектирования, экспертизы и обучения в 1988 – 2010 гг., а также опыт преподавания и применения различных компонентов технологии.
Подчеркнм, что при рассмотрении технологий ситуационного центра имеются в виду не столько объекты, называемые ситуационными центрами, сколько те методы и подходы, которые позволяют их эффективно использовать. Термин «технология» подразумевает, помимо комплекса методов и ресурсов решения определнного класса задач, наличие системы воспроизводства этих методов и ресурсов, в частности, системы обучения персонала.
Настоящая монография, по замыслу авторов, должна обеспечить весь процесс исследования, проектирования и обучения. Это означает, что с помощью представленных в ней подходов и методов можно будет совершать итерации соответствующих этапов и, в итоге, скорректировать и постановку задачи, и результаты е решения.
Такие результаты-прототипы могут также служить для формирования системы критериев решения таких задач, которые могут быть поставлены как многокритериальные.
Часть 1. Информационные технологии 1. Информационные технологии и ситуационные центры:
Перечислим компоненты «мягкого» определения ситуационного центра, учитывающие аспекты, существенные для дальнейшего изложения.
Уникальность ситуации и решаемой задачи.
Формирование коллективного образа ситуации.
Наличие центра как точки сборки (места в пространстве), которое является определяющим для действий организации.
Разделение ресурсов на критические и прочие.
Дадим вариант определения: ситуационный центр (СЦ) – пространство, предназначенное для динамического коллективного формирования образа ситуации, объекта, процесса, обеспеченное ключевыми, т. е. критическими относительно решаемой задачи, ресурсами.
Рассмотрим компоненты детальнее.
Назначение – использование для понимания (вводится различие с объектами, предназначенными для информирования, развлечения и т. п.).
Способ (регламент) работы – коллективное обсуждение ситуации с участием лиц, отвечающих за принятые в этом центре решения, а также экспертов, отвечающих за квалификацию принятых и отвергнутых решений (различие с мероприятиями типа конференций, форумов, симпозиумов).
Средства коллективного пользования для динамического представления, ввода, вывода и хранения информации (потенциальное различение исключительно «ручных» способов, таких как использование мела, досок, фломастеров и дополнительной компьютерной поддержки).
Способ организации пространства для людей как биологических систем – локализация центра, включая системы жизнеобеспечения, в пределах помещения, транспортного средства и т. п. (различие между центром и корреспондентами, сетевой структурой).
Для детализации анализа мы используем схему «4 уровня», позволяющую структурировать различные описания объектов (процессов). Термин «форма» здесь используется в широком смысле как внешнее проявление функций, отношений, связей и законов (геометрическая форма, форма описания и т. п.). Термин «функция»
использован для обозначения всего набора функций, которые может выполнять объект в рамках интересующей нас задачи. Термином «фундамент» обозначается вс то, что делает принципиально возможным выполнение функций. В большинстве случаев это требует указания связей, отношений и законов.
Такое рассмотрение позволяет понять, какие де-формации (нарушения «формы» в использованном смысле) лишают объект возможности исполнить определнные функции. Также можно предварительно оценить, какие функции являются критическими в том смысле, что их отсутствие лишает объект возможности соответствовать своему имени. Пример для термина «ситуационный центр»
приведен в табл. 1.1.
Анализ термина «ситуационный центр»
Уровни Примеры описания объекта на заданных уровнях описания Имена Ситуационный центр (ситуационная комната, зал, интеллектуальный кабинет, визионариум и т. д.) Формы Пространство: помещения, автомобили,самолты и т. д.
Оборудование: полиэкраны, компьютеры, телекоммуникация, интеллектуальный интерфейс и т. д.
Программное обеспечение: контент-анализ, статистический Регламент работы: коллективное обсуждение, анонимный опрос и т. д.
Функции Представление большого объма существенно разнородной информации для понимания сложной ситуации в целом и принятия решений, исследование последствий для вариантов Фундамент Мобилизация сенсорных и интеллектуальных возможностей человека, наличие методов глубокой переработки информации (Data Mining), когнитивный формат представления информации, и т.д.
Процесс анализа направлен от имн к фундаменту. Появление новых возможностей (новых физических эффектов, новых функций) позволяет переходить от анализа к конструированию новых объектов (от фундамента – к новым функциям, формам и именам). Есть и более простые случаи конструирования, например, использование нового имени для существующего объекта, а также объединение нескольких объектов в один, выполняющий функции каждого из составляющих.
Схема «9 окон», известная из Теории решения изобретательских задач (ТРИЗ), позволяет комплексно представить эволюцию рассматриваемого объекта. Ниже в табл. 1.2 приведен пример для объекта «ситуационный центр».
На практике в большинстве случаев наличие дорогостоящего оборудования и квалифицированного персонала не приводит автоматически к повышению качества управления. Аналогичная ситуация имеет место и в более широком контексте компьютеризации.
Так, увеличение количества функций в офисных системах не приводит к заметному повышению качества содержания документов.
Внедрение безбумажных технологий идт параллельно с ростом потребления бумаги. Одна из причин этого заключается в сохранении в новых условиях старого регламента – способа работы. Для создания регламента, адекватного возможностям ситуационного центра, необходимо иметь представление о потенциале этих возможностей.
Ключевым фактором, определяющим эффективность использования ситуационного центра, является наличие (коллективного) субъекта, которого мы будем именовать «проектной группой». Систематическое использование ситуационного центра проектной группой в условиях постоянного частичного обновления участников и проектов приводит к образованию стабильной динамической структуры связей и отношений. Длительное время существования превращает ситуационный центр в организм, который, в частности, начинает считать главной задачей сво собственное выживание. Если использовать данную аналогию, то можно считать, что мозгом этого организма является проектная группа.
Представление объекта «ситуационный центр» в схеме «9 окон»
Система Автоматизи- Ситуационные центры Международные СЦ.
Под- Вычисли- Помещения, Объединяемые просистемы тельные цен- транспортные средства. странственные модутры. Вычислительные кла- ли.
модели- Видеостены, проекторы. когнитивные образы.
Учебные ком- Программы извлечения рования знаний В процессе эволюции у некоторых организмов произошло распределение функций мозга по вспомогательным структурам. Одним из примеров такой структуры является спинной мозг, отвечающий за интерпретацию команд головного мозга. В нашем случае это означает появление структуры, которую мы называем сервисной командой ситуационного центра [1; 2]. Задачи сервисной команды близки к задачам команд, проводящих различные тренинги и методологические игры (оргдеятельностные, системодеятельностные и т. п.) [3]. Так, планшетист отвечает за визуализацию материалов по запросам проектной группы и сервисной команды, телекоммуникацию, создание быстрых прототипов, предварительный статистический анализ данных, ведение журнала проекта. Методолог отвечает за корректность терминологии, схематизацию, проблематизацию.
Объектом для игротехника являются люди – члены проектной группы и сервисной команды, он отвечает за формирование продуктивного психологического климата (в том числе за ускорение распада неработоспособной группы), создание «зеркала» (образов, моделей) участников.
Введнные понятия позволяют осуществить постановку комплекса задач и наметить подход к их решению.
Постановка задач и технология решения Будем считать, что проектная группа решает задачу 1: создат проект, которым, в частности, может быть представление (теория, модель и т. п.) о некотором объекте исследования. Предполагая, что работу проектной группы обеспечивают технические средства и сервисная команда, приходим к задаче 2: созданию (виртуальной) технологии оптимальной поддержки всего жизненного цикла постановки и решения задачи 1. Далее возникает задача 3 – создание инфраструктуры (машины, комплекса), в которой формируются технологии, указанные в задаче 2. Создание технологии требует постановки задачи 4 – подготовки специалистов по решению перечисленных задач («как учить»), и задачи 5 – создания собственной технологии для решения задачи 4 («как учить учителей»).
Задача 1 (построение понятийного аппарата, добыча и утилизация знаний) рассматривается применительно к ситуации работы проектной группы, которой обеспечена техническая и организационная возможность полиэкранного представления требуемой информации в реальном времени исследования. Компоненты этой ситуации можно представить следующим списком:
проектная группа является многодисциплинарной;
задача проектной группы плохо формализуема;
группа должна в конце концов представить документ, отражающий ход и результат работы (при этом консенсус не обязателен);
работа проектной группы (циклы: «проектирование – экспертиза – презентация») проводится в течение продолжительного времени;
работа осуществляется в ситуационном центре - обеспечено полиэкранное представление информации, быстрое изготовление прототипов, дистанционная экспертиза;
имеется сервисная команда ситуационного центра, которая организует техническую, организационную, методологическую и психологическую поддержку работы проектной группы.
Следуя тезису Д. И. Менделеева «Технологии бывают только отечественные», мы ориентировались на подходы, которые в большей степени соответствуют социокультурному фундаменту нашей страны. Одно из направлений, связанное с ситуационными центрами как объектами архитектуры и дизайна, развито в работах Э. П. Григорьева [4]. Другое направление, ориентированное на формирование методологии и методики организации коллективной работы, возникло на базе исследований Московского методологического кружка и связано с именами А. А. Зиновьева, В. А. Лефевра и Г. П. Щедровицкого. Проекты О. С. Анисимова и О. А. Жиркова упомянуты в настоящей монографии. Другие примеры можно найти в работах В. Е. Лепского, Г. Г. Малинецкого, А. Н. Райкова и А. В.
Шевырва [5 – 8].
Ещ одним, незаслуженно забытым, направлением является создание автоматизированных систем управления (АСУ). Упомянем здесь АСУ «Кунцево», блестящий анализ создания которой спустя почти 30 лет сделал С. П. Никаноров.
В качестве общего подхода мы руководствуется т. н. «промежуточной технологией» (intermediate technology). Под этим термином, введнным Э. Ф. Шумахером, обычно понимают методы производства, которые «избегают новой технологии…, но являются усовершенствованием местных методов» [9].
Мы используем этот подход как универсальный системный принцип, в соответствии с которым могут быть сформированы прототипы моделей, проектов и т. п. структур для различных объектов и процессов. Для задач быстрого прототипирования формируется «Экран»-прототип (иначе, рабочая модель) в соответствии с принципом: «Наиболее простой вариант целого, содержащий наиболее сложный компонент» [10]. Используемое нами понятие простоты/сложности ориентировано на две характеристики формирования объекта в заданном базисе:
Количество элементов (операций и операндов);
Стоимость и дефицитность требуемых ресурсов (в частности времени, квалификации персонала, ограничений и т. п.).
Здесь следует упомянуть следствие из распределения Парето:
«20 % ключевых ресурсов обеспечивают 80 % результата».
Важным фактором понимания процессов, происходящих в ситуационном центре, является учт того, что обычно в проектной группе имеет место различие не только информационных образов («картин мира») участников процесса, но и их систем аргументации.
В качестве примеров упомянем комплексную логику А. А. Зиновьева [11], водную логику Э. де Боно [12] и Русскую логику В. И. Лобанова [13]. Подчеркнм, что под термином «логика» мы понимаем набор правил, согласно которому действует некоторый объект (реализуется процесс), и здесь этот термин близок к термину «программа». В ходе коллективного исследования и проектирования могут иметь место параллельно идущие процессы формирования и обоснования гипотез. В частности, можно указать на введение и интерпретацию различных логических операций, таких как «внутреннее отрицание», конструирование универсума, адекватного решаемой задаче, а также одновременное использование нескольких «программ логического обоснования». Вс это, не говоря уже о более простых случаях, например, повсеместном использовании термина «цифры» вместо «числа», вынуждает осуществлять методологический и, в частности, терминологический мониторинг процессов, происходящих в ситуационном центре.
Одним из критических факторов для исследования и конструирования социальных систем является рефлексия. Современные средства рефлексивного анализа используются для решения самых разнообразных задач. В частности, создатель рефлексивного анализа [14–16] В. А. Лефевр в рамках сотрудничества с Лабораторией психологии армии США участвует в разработке стратегии и тактики контртеррористической борьбы. В России исследованиями в этой области активно занимается Институт рефлексивных процессов и управления. Достаточно популярны примы рефлексивного управления, известные из трудов Н. Макиавелли, публикаций Дж. Сороса, китайские стратагемы. Эти примы активно используют бизнесконсультанты, среди которых следует отметить В. К. Тарасова, руководителя Таллинской школы «Арсенал». Однако возможности формализованного рефлексивного анализа практически не освоены.
Единственным известным автору примером фундаментального учебного курса по рефлексивному анализу был курс Ю. И. Крылова в Московском государственном университете. Представляется важной инициатива В. А. Лефевра, направленная на создание факультативного курса рефлексивного анализа для средней школы, одним из результатов которой явилось учебное пособие по математике [17].
В заключение отметим, что в условиях неуклонного уменьшения прямого влияния учных на управленцев роль рефлексивных методов для обеспечения такого влияния будет возрастать.
Учебно-исследовательские ситуационные центры Естественным образом СЦ стали использоваться не только для исследований, но и в учебных целях. В 2006 г. создан учебноисследовательский СЦ РАГС, в 2008 г. в Московском государственном Институте международных отношений введены в действие три взаимосвязанных учебно-исследовательских СЦ. Основные отличия учебного от исследовательского аспектов СЦ заключаются в следующем:
Преимущественное внимание уделяется изучению методов, а не рассмотрению информации, относящейся к определнной задаче.
Для рассматриваемых задач существуют решения, заведомо квалифицированные как «правильные».
Одной из основных задач, решаемых в учебноисследовательском центре, является анализ и оценка компетентности, а также приращения компетентности индивидуально для каждого участника учебно-проектной группы.
Качество проектов, разрабатываемых учебно-проектными группами, является вторичным показателем относительно роста индивидуального уровня квалификации.
Основное отличие учебно-исследовательского СЦ от учебной аудитории, оснащнной аналогичным оборудованием, состоит в применении компонентов технологии СЦ, в частности относящихся к компетенции сервисной команды (планшетист, методолог, игротехник) для разработки достаточно долгосрочного учебного проекта. Так, поддержка практических занятий в СЦ РАГС реализуется в виде учебно-аналитических задач по решению управленческих проблем.
Иными словами, учебная аудитория может быть превращена в СЦ за счт реализации соответствующего регламента работы. Обратно при отсутствии такого регламента СЦ фактически превращается в конференц-зал, студию для ток-шоу и т. п. объекты.
Опытные преподаватели давно используют различные примы из арсенала перечисленных функциональных мест. Так, профессор А. П. Минаков, читавший курс теоретической механики в Московском университете, сформулировал принцип «пятерицы»: истинный преподаватель должен быть учным, философом, артистом, воспитателем и человеком. Сам А. П. Минаков регулярно «забывал» записать на доске коэффициент в формулу. Добавление «забытого»
коэффициента производилось особым способом, который обеспечивал наджное запоминание студентами наличия этого коэффициента в данной формуле.
Для реализации учебного процесса в учебноисследовательском СЦ используются два подхода. Один, который можно назвать «Царский путь в науки» (имеется в виду изучение различных наук), ориентирован на использование возможностей сознания (левого полушария). Арабская система счисления после римской являлась прорывом как в реализации операций с числами, так и в обучении этой реализации. Таблица Менделеева «упаковала»
разрозненные сведения о химических элементах. Использование «упаковки» изучаемого предмета, адекватной студенту, позволяет значительно улучшить результат обучения. Термин «упаковка» относится к логической и психологической обработке изучаемого материала. Под адекватностью здесь понимается соответствие «упаковки» полисенсорным характеристикам студента (аудио, видео, кинестетика и пр.).
Другой подход, названный «Рефлексивным театром» [18], ориентирован на возможности подсознания. Тезис Я. А. Коменского «…только тогда школа была бы действительно школой или театром видимого мира, преддверием школы интеллектуальной» ориентирует на использование в образовательном процессе идеи театра и визуализации. В нашем понимании театр начинается не с вешалки, а с ассоциации (А связано с Б) и аналогии (А похоже на Б), которые является мощными интеллектуальными инструментами. Стефан Банах считал, что математик должен находить аналогии между задачами, хороший математик должен находить аналогии между методами, а очень хороший математик должен находить аналогии между аналогиями. Отличия рефлексивного театра от аналогов, использующих идею театра и мобилизацию креативности, следующие:
основной режим работы – длительное сопровождение сложного проекта, в первую очередь учебного, который реализуется достаточно стабильным коллективом, причм каждая учебная сессия – не изолированное мероприятие, а часть «проектного сериала», история которого сохраняется и анализируется;
одновременно и параллельно используются аналитические инструменты, в особенности схематизация, а также художественные средства (фрагменты художественных произведений, притчи, коаны, аудио- и видеофрагменты фильмов и т. п.);
актры (методологи и игротехники сервисной команды ситуационного центра) могут использовать театральные технологии и реквизит;
строятся «зеркала» (в частности психологические портреты и характеристики компетентности), всех участников процесса;
наконец, театр является именно рефлексивным, поскольку все действия, рефлексивные в том числе, непрерывно сопровождаются рефлексивными комментариями, логическими и/или художественными, на соответствующих полиэкранах.
Приведнный перечень является описанием идеализированного процесса, который имеет много вариантов реализации. Каждая сервисная команда ситуационного центра сама определяет пределы провокаций, возгонки рефлексии и степени «просвечивания» себя и остальных участников. Для построений «зеркала (портрета)» участников процесса используется, в частности, рефлексивный анализ в трактовке В. А. Лефевра с элементами когнитивной графики. Используются также методы соционики (TypeWatching, расширенной версии типоведения по К. Г. Юнгу) как способа адаптации метода обучения к индивидуальным особенностям каждого человека [19].
Ознакомление участников с их моделями, оценками компетентности и т. п. характеристиками является полезным, но зачастую болезненным процессом, что требует особого регламента и осторожности. Возможности театра ситуационного центра позволяют создать инструмент, адекватный задаче. Одним из таких инструментов является работа под масками, в том числе по вариантам «один человек – несколько масок» и «несколько человек – одна маска». Создание таких масок в локальной сети и/или в сети Интернет является вполне доступной операцией.
Опишем способ подготовки материала для реализации предложенным способом. Схема, которую должны усвоить студенты, представляется им в нескольких сценах (вариантах ситуации). Важно, что при сохранении схемы (т. е. структуры связей и отношений действующих лиц) может изменяться реквизит, персонажи, актры.
Комментатор находится вне пространства как актров, так и зрителей. Его комментарий может быть провокационным, противоречащим ситуации и схеме. Считается, что процесс обучения завершн успешно, если студенты в состоянии реконструировать схему, являющуюся инвариантом представленных ситуаций, и реализовать свой вариант ситуации, соответствующий данной схеме. Такая реализация процесса может быть конструктивным дополнением других способов организации коллективной работы, и сама может быть дополнена аналитикой. Одним из примеров стала «Лавина» – игровое моделирование чрезвычайной ситуации в экспериментальном учебно-исследовательском СЦ Омского филиала Института математики (ОФ ИМ) СО РАН. Мероприятие было разработано для студентов Омской государственной медицинской академии (ОмГМА) и реализовано в два этапа. На первом этапе студенты Омского государственного института сервиса (ОГИС), осваивающие технологии СЦ в рамках специальности «Прикладная информатика (в сфере сервиса)», сформировали сценарий ликвидации последствий схода лавины, сыграли роли в соответствии со сценарием (МЧС, медицинская служба и т. п.) записали на видео, а затем смонтировали материалы в виде учебно-игрового фильма. После соответствующего анализа материалы как прототип были показаны двум группам студентовмедиков, которые создали и проиграли в СЦ свои версии развития чрезвычайной ситуации.
Итоги работы с использованием этого подхода подводились на конференциях ОГИС «Рефлексивный театр ситуационного центра»
в 2007, 2008 и 2009 гг., которые проводились с использованием технологии СЦ: наличием проектной группы, сервисной команды, телекоммуникаций и т. п. Развитие технологий СЦ продолжается в рамках проекта «Ген-Гуру» [2; 20].
Полученные результаты позволяют сформировать несколько перспективных проектов. Одним из них является проект создания ситуационного центра для коллективного управления вузом. Под коллективным управлением здесь понимается систематическое взаимодействие персонала образовательного учреждения и представителей социума в процессе определения и реализации стратегии и тактики образовательного учреждения. Существующие способы использования информационных технологий при таком взаимодействии обычно ограничены применением мультимедиа-проекторов и в отдельных случаях интернет-конференций.
Концепция предлагаемого подхода заключается в организации процесса управления как коллективного взаимодействия персонала организации и среды существования этой организации – социума – по технологии ситуационного центра (СЦ).
Новизна поставленной задачи состоит в формировании нового способа взаимодействия участников управления образовательным учреждением: целенаправленного, проектно-ориентированного, поддержанного возможностями информационных технологий и сервисной командой ситуационного центра. Иначе, новизна состоит в попытке дополнить обычные способы взаимодействия – совещания, конференции, круглые столы и т. п. – проектной работой, включающей систему управления проектом, анализ истории и мониторинг участников. Это, в частности, позволяет улучшить адаптацию участников к процессу работы.
Избранные компоненты технологии Основной методологической схемой является схема рис. 1.1, согласно которой любой объект исследования представляется проекциями на трх «плоскостях»: исследователь (интерпретатор языка и логики), логика (язык, способ описания), онтология (описание объекта средствами «плоскости» логики). Значения перечисленных терминов могут формироваться самой проектной группой (сервисной командой) [20]. Наиболее совершенном в этом плане представляется подход [10]. Отметим ключевое значение «плоскости» 1: при отсутствии и/или недоопределнности исследователяинтерпретатора неизбежны коллизии. Отметим также аналогичные схемы «задача – программа – исполнитель».
Здесь возникает задача построения рефлексивных описаний (онтологий) всех «плоскостей». Отдельным вопросом является учт незнания и непонимания как, соответственно, наличия незаполненных фрагментов структуры знания и отсутствия такой структуры.
В качестве системного принципа используется понятие «Экран»-прототипа («рабочей модели»): «наиболее простой вариант системы, содержащий наиболее сложный элемент»; графическая интерпретация приведена на рис. 1.2. Сложность здесь понимается как характеристика объекта относительно заданного базиса (число операндов и операторов, необходимых для конструирования объекта), а также как степень дефицитности необходимых ресурсов [10].
На схеме рис.1.2 сложность вариантов реализации каждого компонента пропорциональна площади, занимаемой изображением компонента. Каждому классу (группе) компонентов соответствует определнная геометрическая фигура. Прототип собирается из фигуры, имеющей площадь, максимальную для данной схемы, и минимальных по площади экземпляров всех остальных фигур.
Рис. 1.2. Пример структуры «Экран»-прототипа (три вида компонентов) Научная визуализация является исключительно эффективным инструментом. Существуют подходы типа «mind map» и потоковых схем [6]. В 1973 г. В. А. Лефевром была опубликована пионерская работа по психографике [15]. Классическими образцами являются книги Эдварда Тафти [22–24].
Нами предложены принципы создания систем пиктограмм – «Экран»-пиктографика, таких как фейкодеры (лица Чернова), бодикодеры [11] и аналогичные. Эти принципы предусматривают размещение в координатах внешней системы пиктограмм объектов, отражающих их (объектов) стадию развития в течение жизненного цикла. Конкретизация правил (определение способа обозначений) позволяет конструировать алгоритмы формирования образов, адекватных задаче. Правила построения пиктограмм следующие.
Если для модели объекта в жизненном цикле потенциально предусмотрено N этапов, то максимально полное изображение объекта формируется из N элементов.
Степень выраженности заданных свойств объекта отражается способом выполнения элементов изображения (сплошная или штриховая линия, интенсивность цветовой окраски и т. п.).
Отношения между объектами изображаются отношениями между изображениями этих объектов (а не только явным указанием этих отношений, например, на связях схемы).
Изображения объектов размещаются в системе координат, адекватной решаемой задаче (вариант «логических координат»).
Конкретизация знаний об исследуемых объектах и процессах позволяет дополнять методологические схемы пиктографическими с целью детализации описания ситуации при формировании е образа.
В качестве примера рассмотрим схему рис. 1.3, позволяющую оценить влияние ресурсов научного подразделения организации на экономическую и научную продуктивность. Соответствующими характеристиками могут быть средства, заработанные подразделением в ходе выполнения договорных работ и взвешенная сумма публикаций. В качестве образа ресурсов подразделения можно использовать воздушный шар (эллипс) с корзиной (прямоугольник), прикреплнной тросом (линия). Используем следующие обозначения:
Высота шара – материальные ресурсы (площадь лабораторий, количество оборудования и т. п.).
Ширина шара – объм бюджетного финансирования.
Ширина корзины – число сотрудников без учной степени.
Высота корзины – число сотрудников с учной степенью.
Длина троса – численность управленческого персонала.
Штриховкой корзины можно обозначить средний возраст сотрудников подразделения, а штриховкой шара – уровень научного оборудования. Использование различных цветов позволяет детализировать образ ситуации в соответствии с решаемой задачей.
Подчеркнм, что когнитивный образ формируется применительно к конкретной задаче. Оси первичной системы координат могут стать внутренними параметрами анализируемых объектов, а внутренние параметры объектов в рамках одной задачи могут стать осями системы координат в другой.
Рис. 1.3. Схема сравнения экономической (Х) и научной (Y) продуктивности научных подразделений организации В качестве элементов могут быть использованы «невозможные фигуры» О. Рутерсварда, образцы которых можно встретить на гравюрах М. Эшера. Дополнительные возможности представляет анимация когнитивных образов.
Измерения существенно зависят от измерительного устройства и методики его применения. Во многих приложениях используются экспертные оценки. В связи с этим возникает задача мониторинга компетенции экспертов в процессе исследования. Для задач категоризации эффективно может быть применена «формула человека» В.
А. Лефевра [15]. Средства визуализации могут быть дополнительным ресурсом повышения адекватности экспертных оценок для конкретной ситуации измерения.
Бывают ситуации, когда эксперт существенно заинтересован в анонимности. Для исследования теневых процессов в 1965 г. был предложен метод «рандомизированных ответов» [27]. Он уникален тем, что его реализация возможна только при наличии интеллектуального объекта исследований (респондента), способного осуществлять рефлексивные умозаключения. В нм анонимность потенциально обеспечивается утверждением экспериментатора о том, что он не наблюдает за физическим экспериментом (вращением рулетки, поле которой несимметрично разделено на сектора, соответствующие классификации респондентов). Однако возможности современных технических средств позволяют фиксировать результат любого аналогичного эксперимента без непосредственного наблюдения. Тем не менее, при сохранении логической схемы метода (и расчтных формул) абсолютная конфиденциальность может быть достигнута за счт изменения организационной схемы. При этом организация эксперимента частично переносится в сознание респондента. Новая схема дат основание назвать метод «рефлексивным рандомизированным опросом». Схема метода может быть иллюстрирована следующим образом.
Пусть в группе из N человек N{A} человек относятся к подгруппе А и N{B} – к подгруппе В, причм N{A} + N{B} = N. Значение N полагается известным, значение N{A} подлежит оценке.
Испытуемым предлагается вероятностный эксперимент с двумя классами возможных исходов C и D, вероятности которых P(C) и P(D) известны, P(C) + P(D) = 1. Событие С связывается с принадлежностью испытуемого к подгруппе А. Испытуемый заранее выбирает для себя (и не сообщает об этом никому), какие именно исходы он связывает с событием С. Например, две определнные грани игральной кости могут быть связаны с событием C, а оставшиеся четыре – с событием D. Затем проводится эксперимент, по результатам которого каждый сообщает свой личный результат:
совпало ("ДА") или не совпало ("НЕТ") случайное событие в эксперименте с его принадлежностью к подгруппе. Поскольку ответ не раскрывает принадлежности, индивидуальная анонимность гарантирована. При этом знание числа ответов N (ДА) и N (НЕТ), где N (ДА) + N (НЕТ) = N, позволяет получить оценку количества членов группы с характеристикой А в виде N{A} = (NP(D)-N(ДА) ) /(1 - 2P(C)).
Графическая иллюстрация схемы приведена на рис. 1.4.
Штриховкой обозначены группы, пропорциональное соотношение которых является предметом оценки.
Платой за анонимность является некоторая потеря точности, а также сложность организации эксперимента. Рекомендуем перед основным вопросом задавать вопросы с очевидными для аудитории и проверяемыми на месте ответами. Например, перед тем, как задать вопрос: «Вы сами принимали тяжелые наркотики?», можно задать вопросы: «Вы находитесь в данной аудитории?» и «В этой аудитории у Вас есть сосед слева?». Такой способ демонстрирует как анонимность, так и относительность точности оценки (либо непонимание условий эксперимента).
Рис. 1.4. Схема рефлексивного рандомизированного опроса Весьма важным представляется перспектива использования данного метода при организации тайного голосования в компьютерных сетях. Подчеркнм, что в такой модификации метод обеспечивает абсолютную юридическую защиту респондента, чего не гарантируют никакие другие методы и технические средства. В качестве респондентов могут выступать системы распределнного искусственного интеллекта – виртуальные агенты и интеллектуальные кентавры-маски.
Данная процедура, естественно, не защищает эксперта от последующего использования «детекторов лжи».
Для отдельных задач статистической обработки могут быть построены процедуры вторичного анализа, учитывающие поведение метода анализа. В качестве примера укажем двухэтапный анализ согласия распределений [12]. В этом случае предметом анализа становятся сами значения вычисленных критериев согласия: проверяется их адекватность теоретическому распределению критерия. Пусть, например, анализируются 100 массивов данных по 200 выборочных значений в каждом. Тогда вместо принятия 100 решений типа «массив из 200 значений соответствует (или не соответствует) распределению Гаусса (Вейбулла и т. п.) с уровнем значимости 0,05»
принимается одно решение: «100 значений критерия согласия соответствуют (или не соответствуют) распределению Колмогорова (Пирсона и т. п.) с уровнем значимости 0,05».
Общая рекомендация: целесообразно моделировать поведение самого аппарата статистических исследований до начала или параллельно с осуществлением обработки данных эксперимента.
Технологии ситуационного центра достаточно эффективны и доступны для использования практически при любых ресурсах при обязательном наличии основного качества субъекта – высокой степени готовности реализовать свои намерения (иногда это качество квалифицируют как политическую волю).
Промежуточные технологии и быстрое прототипирование позволяют провести «разведку боем», достаточно уверенно спрогнозировать судьбу проекта, заявленного проектной группой, а также обеспечивают возможность квалифицированно сформировать техническое задание на полномасштабный проект.
Для систем управления социальными системами критически важным является наличие рефлексивного компонента, основой которого является формализованный рефлексивный анализ.
Критическим ресурсом ситуационных центров являются сервисные команды, способные организовать методологически корректную и методически грамотную работу проектных групп.
Учебно-исследовательские ситуационные центры являются точками роста рассматриваемых технологий, поскольку обладают эффектом самоприменимости и могут обеспечить расширенное воспроизводство технологии.
Библиографический список к разделу Компоненты информационных технологий для ситуационных центров // Анисимов О. С., Берс А. А., Жирков О. А. и др.
//под науч. ред. В. А. Филимонова.- Омск : ООО «Информационнотехнологический центр», 2010.- 152 с.
Филимонов, В. А. Спинной мозг ситуационного центра / В. А. Филимонов // «Ситуационные центры и перспективные информационно-аналитические средства поддержки принятия решений». Сб. материалов Междун. науч.-практ. конф. 7 - 9 апреля г. // М.: Российская Академия гос. службы, 2009, с. 361-366.
Филимонов, В. А. Команды для ситуационных центров:
«извозчик», «Фигаро», «наставница» / В. А. Филимонов // Труды 4ой междун. конф. «Когнитивный анализ и управление развитием ситуаций», 2004, М.: ИПУ РАН.- Т.2. с. 104-107.
Григорьев, Э. П. Концептуальные основы синтеза альтернативных решений / Э. П. Григорьев // Информатика и вычислительная техника, № 1, 1997, с. 78 - 82.
Методологические аспекты инновационного развития России// Проектно-аналитическая записка по итогам работы Клуба Малинецкий, Г. Г. Совесть, рефлексия и российские катастрофы / Г. Г. Малинецкий// Рефлексивные процессы и управление.
Сб. матер. VII Междунар. Симп. 16-17 октября 2009 г., Москва// М.
: Когито-Центр, 2009, с. 158-162.
Райков, А. Н. Лепесток опоры, или философия решений / А. Н. Райков. – М. : СИНТЕГ, 2004. – 48 с.
Шевырв, А. В. Креативный менеджмент: синергетический подход / А. В. Шевырв. – Белгород : ЛитКараВан, 2007. – Шелдрейк, Дж. Теория менеджмента: от тейлоризма до японизации / Дж. Шелдрейк. – СПб. : Питер, 2001. – 352 с.
Полляк, Ю. Г., Филимонов, В. А. Статистическое машинное моделирование средств связи / Ю. Г. Полляк, В. А. Филимонов.
– М. : Радио и связь, 1988. – 176 с.
Зиновьев, А. А. Логический интеллект / А. А. Зиновьев. – М. : Моск. гум. ун-т, 2005. –284 с.
Боно, Э. Водная логика / Э. де Боно. – Мн. : Попурри, 2006. – 240 с.
Лобанов, В. И. Русская вероятностная логика / В. И. Лобанов. – М. : Русская правда, 2009. – 317 с.
Лефевр, В. А. Алгебра совести / В. А. Лефевр. – М. : Когито-центр, 2003. – 426 с.
Лефевр, В. А. Рефлексия / В. А. Лефевр. – М. : Когитоцентр, 2003. – 496 с.
Лефевр, В. А. Лекции по теории рефлексивных игр / В. А.
Лефевр. – М. : Когито-центр, 2003. – 218 с.
Филимонов, В. А. Алгебра логики и совести / В. А. Филимонов. – Омск : Омский гос. ин-т сервиса, 2006. – 72 с.
Рефлексивный театр ситуационного центра (РТСЦ-2007) // Всеросс. конф. с междун. участием// Омск: Омский гос. ин-т сервиса, 2007.- 140 с.: ил. + 16 с. вкл. ил.
Линксман, Р. Как быстро изучить любой предмет / Р.
Линксман. – Мн. : Попурри, 2003. – 288 с.
Филимонов, В. А. Исследовательский комплекс «ГенГуру» (эскиз многодисциплинарного проекта) / В. А. Филимонов // «Знания-Онтологии-Теории» (ЗОНТ-07). Матер. Всеросс. конф. с междун. участием 14-16 сентября 2007 г., Новосибирск // Новосибирск: Ин-т математики им. С.Л.Соболева СО РАН, Т.1, с. 24-31.
Филимонов, В.А. Интеллектуальная компьютерная среда для коллектива экспертов / В. А. Филимонов // Интеллектуальные торпеды. Материалы науч. конф. памяти Г.П.Щедровицкого "Георгиевские чтения" 21-22 февраля 1995 г.- Новосибирск : СО РАН, Ин-т интелл. инноваций и проблем консультирования, 1996.- С.
148 - 152.
22. Tufte, E. Visual Explanations: Images and Quantities, Evidence and Narrative / E. Tufte. – Cheshire, CT: Graphics Press, 1997.
– 157 p.
Tufte, E. Beautiful Evidence / E. Tufte. – Cheshire, CT:
Graphics Press, 2006. – 213 p.
24. Tufte, E. Envisioning Information. The Visual Display of Quantitative Information / E. Tufte. – Cheshire, CT: Graphics Press, 2001. – 199 p.
25. Warner, S. L. Randomized response: a survey technique for eliminating evasive answer bias /S. L. Warner // J. Amer. Statist.
Assoc., 1965. – V. 60, №. 309. – P. 63 - 69.
2. Информационно-деятельностная структура понять противоположности, то есть это сначала как противоположности, а потом и как полюсы некоего единства… Что ж, ты узнаешь эти Принципы и подходы к построению ситуационного центра (СЦ) как интегративной системы, в которой аппаратно-программными средствами организованы взаимодействия субъектов нескольких типов: участников-пользователей, методологов и команды сопровождения, каждый из которых по-своему вовлечн в общую структуру, прекрасно согласуются с общим подходом теории деятельности и е конструктивного воплощения в информатике. Таким образом, можно представлять функционирование СЦ как систему обеспечения мощного потока информации, развртывающегося по спирали, осевая составляющая которой направлена к достижению поставленных целей по разрешению вновь возникающих проблем, а циркулярная – представляет взаимодействия, действующие в данное время.
Оказалось, что для проектирования и теоретического описания функций, процессов и структур СЦ можно с пользой применить объектный подход, разработанный в информатике на базе теории деятельности. При этом конструктивно и отчетливо просматриваются многие основные закономерности, и могут быть получены полезные рекомендации по эффективной процедуре образования СЦ, его организации, функционирования и его служб.
Начнм с определения информатики, выделив три аспекта.
Первое. Информатика – это мощная конструктивная деятельность, в результате которой создаются неимоверно сложные системы, но таким способом, чтобы ими можно было легче пользоваться и как можно проще с ними было общаться.
Второе. Информатика – это наука, которая изучает законы хранения, обработки и передачи информации. С помощью информатики можно объяснить сложность и таких элементарных актов, как, например, «поднять левую руку». Каждый может это сделать, а вот написать программу, которая моделирует такую вещь, – занятие сложное. И это делается обычно с помощью некоторого количества языков. Отметим, что одним из важных свойств науки является различение различного при сохранении общности целого.
И наконец, третий компонент информатики – это то, что она может и поэтому должна описывать информационно-деятельностную структуру мира нашей цивилизации и культуры и, в том числе, аккуратно описывать взаимодействия между е субъектами – людьми и между человеком и компьютером.
Третье отделяется от второго потому, что методология как мировоззрение шире, чем наука. Во-первых, методология учитывает вопросы ремесла и искусства, а во-вторых, она включает в само рассмотрение исследующего субъекта, что наука, вообще говоря, делать запрещает. В рамках методологии можно даже позволить себе двигаться в противоречиях. Дело в том, что формальные системы, в которых противоречий быть не может, либо очень мелкие как, например, теория групп, которая охватывает почти все, либо очень узкие, но обслуживающие глубокие приложения.
Согласно Георгию Петровичу Щедровицкому (Г.П.), деятельностный подход [4] сформировался (в начале второй половины прошлого века в Московском методологическом кружке – ММК) как реакция на ситуацию, которая сложилась к середине XX века. А именно потребовалась всеобщая организация в одно целое мышления и деятельности, а наука и философия того времени не были способны осуществить такую организацию. В частности, они не были способны на создание всеобщей картины мира.
Московский методологический кружок – это философскометодологическая и практическая школа интеллектуальной работы со своими оригинальными примами и стилем организации коллективного рефлектирующего творчества. ММК превратился в методологическое широкое движение, замалчиваемое тогда, к сожалению, «официальной» наукой.
Что для нас, информатиков, существенно из того, что они сумели сделать впервые в мире?
Было показано, что формой существования цивилизации является деятельность, которая связывает е в единое целое.
Что системы делятся на естественные и искусственные [3], и что они существенно при этом различаются, потому что естественные системы описываются причинно-следственными связями – и отвечают на вопрос «почему это происходит?», а искусственные системы отвечают на вопрос «кому это нужно?», поскольку следуют целям, которые надо достигнуть, и значит, – естественное и искусственное подчиняются разным законам.
Проиллюстрировать это проще всего так: следствия всегда имеют причиной то, что происходило в прошлом, а результаты деятельности всегда определяются целями, которые отнесены к будущему.
В ММК много поработали в этом направлении и показали, что деятельность как форма существования цивилизации составляет структуру из конкретных деятельностей. При этом каждая конкретная деятельность задатся целью, обязательно имеет начало и завершается. И, следовательно, конкретная деятельность – это искусственная система. В результате им удалось сформулировать и обосновать тезис, что всякая деятельность нормирована, (т. е. выполняется по программе).
Следующая проблема, которую решили в ММК, это создание содержательно-генетической логики. Ими рассматриваются знаковые системы как обозначающие нечто существующее объективно в действительности. В математике тоже так делают, но математики считают, что если они описали некоторую знаковую форму (некоторую структуру знаков), то структура обозначаемой ею действительности будет изоморфна структуре знаковой формы. Оказалось однако, что на самом деле это не так, и, поскольку они не изоморфны, нужно, чтобы не потерять сути, рассматривать оба эти плана совместно. Этот подход называется схемой двойного знания.
ММК было обосновано также понятие языкового мышления.
Было показано, что мыслительная деятельность, которой мы все занимаемся, – это деятельность со знаковыми формами. Причм можно (и нужно) отличать мыслительную деятельность от коммуникативной деятельности и от деятельности понимания, можно все их отделить от производственной деятельности и достаточно хорошо специфицировать. Все это было сведено в некоторое общее комплексное представление, которое называется «системная мыследеятельность» (СМД). Именно этот комплекс как категория и будет приниматься в качестве обоснования (онтологии) базисных свойств сущностей, составляющих основания информатики.
К 1968 г. А. А. Берсу (ВЦ СО АН СССР) удалось обосновать [1] тезис, что то, что происходит в вычислительной машине, есть не просто модель какой-то внешней деятельности, а что это – самая настоящая деятельность, которую машина осуществляет. Именно поэтому мы и можем с ней взаимодействовать, и можем поручить машине часть работы так же, как мы можем поручить е лаборанту или научному сотруднику. И мы постоянно убеждаемся в этом на практике.
По мнению Г. П., философия не могла справиться с проблемой интеграции потому, что ей недоставало научного метода.
Но и наука не была способна справиться с этой проблемой в силу своей предметной ограниченности. Снимая философию и науку, методология явилась особым типом философствования, который использует научный метод вне ограничивающих рамок научно-теоретических предметов.
Такое снятие оказывается возможным благодаря смене с познавательной на практическую общую установку. Иными словами, деятельностный подход по типу мышления является философией, а по методу – наукой и имеет практическую целенаправленность.
Практическая целенаправленность может быть сведена к трм основным принципам:
Не столько познание, сколько освоение и овладение.
Прожективность – не только получение знания и описаний, но и выработка предписаний и проектов.
Критерием истины является не только истинность как соответствие описания объекту, но и реализуемость как соответствие объекта проекту или действия предписанию. Если реализуется заданная в предписании деятельность, то, следовательно, это предписание истинно. Если удалось осуществить проект, то, следовательно, и проект был истинным.
Деятельностный подход, таким образом, направлен на решение проблемы интеграции мышления и деятельности. Итак, методология, снимая философию, остатся, по сути, философским типом мышления. Снимая же научное мышление, методология, во-первых, сохраняет двухэтапный метод конструирования объектов мышления:
(1) нисхождение от эмпирически конкретного к логически абстрактному;
(2) последующее восхождения от логически абстрактного к логически конкретному.
Во-вторых, она также сохраняет соответствующий этому методу способ представления объектов как идеальных объектов, выраженных в схематической знаковой форме, это и есть сущность научного метода, по Г. П. [4].
А как же модели? Как же научные задачи, проблемы, факты, теория и знания? Это уже специфически предметно-теоретические образования. Но сутью научного метода, употребляемого вне рамок научно-теоретических предметов, остаются процессы нисхождения и восхождения и представление идеального объекта в схематической знаковой форме.
Будем исходить из справедливости следующих двух основных тезисов, подтвержднной всем ходом развития программирования и информатики за их существование более полувека:
Прямой тезис (Г. П. Щедровицкий): Всякая деятельность нормирована, т. е. осуществляется по программе [4], более технически точно – каждая конкретная деятельность является единичным исполнением некоторого программного фрагмента, в заданной соответствующей операционной обстановке.
Обратный ему тезис (А. А. Берс): Каждое единичное исполнение программного фрагмента в заданной операционной обстановке является некоторой конкретной деятельностью [1].
Фактически информатика может рассматриваться как конструктивная теория деятельности. Конструктивность такого подхода определяется тем, что для всех основных понятий и структур предлагаются технически отчетливые ответы на два основных конструктивных вопроса:
как этим пользоваться (синонимы, – зачем, что это такое)?
как это устроено (синоним – почему это так, как это сделать)?
При этом мы будем придерживаться этой конструктивности и восходя от базовых конструкций к вс более сложным системам (т.
е. проясняя устройство), и нисходя в разбирающем анализе сложных ситуаций (т. е. изучая использование).
В дополнение следует заметить, что ничто так быстро не развивается как информационные системы. Мы перешли от тысяч операций/сек к тысячам миллиардов и от десятков тысяч элементов тоже к миллиардам и начинаем измерять производительность не в терафлопах, а в петафлопах, т. е. еще в 1000 раз больше. Все системы информатики очень быстро растут, и, кроме того, они чрезвычайно сложны. На наш взгляд, сложнее наших комплексов только биологические структуры, а вс остальное – тоже не так просто: все гораздо проще.
Приведем вначале краткую сводку основных понятий и структур, выработанных в информатике, а затем покажем, как они проецируются на задачи СЦ.
В истории информатики можно выделить три самых главных рубежа – введение языков, освоение объектов и рассмотрение взаимодействия компьютеров между собой как самостоятельных и независимых субъектов.
Теперь о языках. Мы перешли на удобные нам знаковые формы, на тексты программ. Появилась возможность записывать содержательные (т. е. отражающие смысл) обозначения, например, какую-нибудь ячейку памяти, в которой хранится последнее вычисленное значение, теперь можно обозначить идентификатором:
«здесь хранится Последнее Вычисленное Значение».
Появился, как у всяких текстов, синтаксис, причм следует обратить внимание на то, что у программных текстов изначально имеются две семантики.
Внешняя семантика самих текстов, обеспечивающая их понимание, которая позволяла использующие вхождения знаков соотносить с определяющими вхождениями, делать идентификацию, организовывать движение по тексту и позволила осуществлять свртку, задавая вызовы процедур.
Содержательная семантика того, что будет выполняться, когда программу преобразуют и приведут к форме, пригодной для исполнения на машине. Содержательных семантик тоже изначально было несколько, например, императивная или дескриптивная и пр.
Естественно, что появились все основные структуры программ, которые мы все прекрасно знаем: описания, операции, выражения, операторы, следование, переходы, ветвление, циклы, вызовы, блоки, модули, файлы и т. д. Стали учитываться национальные языковые особенности, и происходит адаптация языков программирования к региональным алфавитам.
Самый важный момент, который следует отметить: с возникновением языков появилось понятие данных. Одновременно возникли понятия: тип данных и представление данных. При этом среди типов выделились простые, составные и динамические типы.
Примеры простых типов: логические, битовые и байтовые, вещественные и целые числа, указатели. Примеры составных типов: массивы, структуры, строки; динамические типы: списки, деревья, графы и т. д.
Понятие типа эволюционировало. Изначально тип определялся как множество значений, которое данная величина может принимать. Через некоторое время перешли на алгебраический способ определения. Типом стало называться множество операций, которое можно производить с данной величиной. Так же стали описывать и типы объектов, когда ввели в употребление понятие «объекты».
В то же время появилось некоторое количество трудностей.
Например, коллизия обозначений: поскольку количество слов, которые мы используем, не так велико, то они начинают совпадать.
Тогда были придуманы такие конструкции, как блок и модуль. А если несколько человек делали части одной программы, то оказывалось что то, что надо состыковывать, называется по-разному. Там тоже возникали соответствующие проблемы.
Кроме того, происходит последовательное, постепенное, но постоянное, отчуждение исполнения программы от программиста, потому что между ними стоит транслятор, и не какой-нибудь, а оптимизирующий компилятор. В результате то, что написал программист и то, что будет исполняться, совсем друг на друга не похоже.
Вместе с процедурами появился побочный эффект, заключающийся в том, что когда выполняется некоторое действие, то потом оказывается, что в каких-то данных, которые даже и не имелись в виду, тоже что-то изменилось. Поскольку появилась вычислимая адресация данных через указатели, то возникла проблема висячих указателей, которые делают программу неработоспособной. Автоматически стали порождаться величины и для их размещения надо было выделять память. Занятую память надо было освобождать.
Появилось понятие «мусора» и многочисленные методы сборки мусора.
Примером интерференции синтаксиса и семантики исполнения может служить «подстановка именем» в Алголе. Надо строку, представляющую фактический параметр, подставить на то место текста тела процедуры, которое занимает формальный параметр, причм сделать это следует во время исполнения. Однако во время исполнения исходного текста уже не существует. Поэтому возникла некая существенная проблема, которую, конечно же, решили. Тем не менее, этот способ передачи параметров не прижился. Вместо него появилась подстановка по ссылке.
Возникли два режима работы с исходной программой: интерпретация и трансляция. Очевидно, что идеальный интерпретатор, который ничего не делает с программой на языке высокого уровня, а продвигается непосредственно по ней, исполняя е, по-видимому, никогда в реальности не строился – это было бы слишком медленно.
Поэтому сначала идт некоторое промежуточное преобразование, а потом уже начинает исполняться то, что получилось, с учтом тех значений, которые находятся в памяти. Последнее и есть характеристическое свойство интерпретации, в то время как трансляция занимается преобразованием программ тогда, когда про значения, которые будут во время выполнения, ещ ничего не известно.
Впоследствии появилась возможность переходить к смешанным исполнениям (по А. П. Ершову), когда трансляция и интерпретация могут делаться по очереди. Кроме того, всегда была некоторая рутинная работа: либо на исходном уровне надо собрать куски и согласовать между собой, либо после некоторых преобразований надо рабочие подпрограммы состыковать.
Тем не менее, языковая парадигма породила эффективные средства свртки действий в форме, процедур, модулей, появления стандартных библиотек и баз данных, в которых стандартным образом хранилась информация.
1970-е годы были посвящены в основном изменениям в архитектуре и эффективному использованию вычислительных процессоров. Значительно развилась и изменилась архитектура: появились многоуровневая память, многопроцессорные комплексы, специальные и вспомогательные процессоры, например, каналы вводавывода.
В системе IBM/360-370 появилась совместимость для целого класса технически разных машин с одной архитектурой. Были построены всевозможные операционные системы, которые занимались планированием работы и выполнением е без участия, и более того, с отторжением пользователя.
Один процессор старались загрузить до предела – это стало называться мультипрограммным режимом. Потом программы стали исполнять, выделяя им несколько процессов – мультипроцессный режим. Процессорное время стали квантовать – появились системы разделения времени. Далее организовали связь посылкой сообщения. В результате все подходы стали комбинировать и получили системы коллективного пользования, где каждый терминал выглядит для пользователя так, как если бы он сидел за самой машиной в одиночку, как это и было в самом начале. К операционным же системам традиционно относятся системы хранения данных – файловые системы.
В результате вс это выглядит, таким образом, как на схеме справа. Есть исходная программа. Она попадает в систему программирования. Здесь может быть и ряд таких преобразующих программ. Они собираются, модифицируются, и создатся некая исполнимая программа, которая и поступает на вход операционной системы.
В результате все программы разбиваются на некоторые кусочки, каждый из которых исполняется как целое, они называются программными фрагментами.
Другими словами, путь от исходного текста до компьютера оказывается слишком длинным и многоступенчатым. Поэтому, что именно делается в компьютере, когда исходная программа находится на каком-то шаге в языковом тексте, никто сказать не сможет.
Это и есть отчуждение программиста от исполнения программы.
Ошибку, которая находится в неизвестном месте на неизвестном слое, обнаружить довольно трудно. Этот самый трудомкий аспект программирования, как известно, называется отладкой. И за сложность архитектуры, и за высокий языковый Больше всего описанная картина напоминает размещнную слева иллюстрацию к известной сказке Ганса-Христиана Андерсена. К сожалению, среди наших замечательных и прекрасных программисток настоящие принцессы встречаются чрезвычайно редко, а для всех остальных отладка продолжает оставаться весьма трудным делом.
Операционные обстановки и единичные исполнения Начиная с самой первой машины, все программы исполняются более или менее одинаково. Бертся программный фрагмент, который состоит из предписаний, записанных в некотором линейном порядке.
Среди этих предписаний есть указания, когда надо нарушать этот линейный порядок внутри программного фрагмента. Про каждое предписание можно сказать, что для его реализации существует другой программный фрагмент и т.
д. Получается некоторый стек таких вызовов. Этот стек придуман в 1957 году известным учным-информатиком профессором Фридрихом Бауером; стек был даже запатентован, но срок патента уже истк.
Чтобы программный фрагмент корректно заработал, надо учесть очень много внешних факторов, которые в его тексте не отражены: систему команд, правильность расположения данных, к которым он обращается, и т. д. вплоть до того, что имел в виду программист, но в явном виде в программу не заложил. Ленинградский математик и видный программист Г. С. Цейтин называл такое явление «призраками программирования».
Оказалось, вс, что требуется, можно собрать следующим образом: есть программный фрагмент, и есть операционная обстановка, в которой он выполняется.
Составляющими операционной обстановки, необходимой для корректного исполнения программного фрагмента, являются:
2. Исполнитель, способный двигаться по структуре ПрФ, обеспечивать исполнение предписаний, обстановке) объектов.
5. Перечень используемых протоколов взаимодействия.
Свойства и особенности исполнителей, объектов и протоколов будут подробнее рассмотрены ниже.
Для каждого единичного исполнения (ЕИ) создатся своя замкнутая операционная обстановка, при этом исполнители разных обстановок могут различаться по своим возможностям, т. е. ПрФ могут быть записаны на разных языках.
Сигналы, получаемые исполнителем в ходе ЕИ, могут повлиять на ход этого исполнения. Единичное исполнение начинается с исполнения начального предписания своего ПрФ и завершается по исполнении его конечного предписания. После исполнения некоторого предписания определяется его предписание-преемник, и оно исполняется.
Все предписания в составе ПрФ могут относиться к одному из четырх родов:
структурные переходы, которые могут указать себе в качестве преемника любое предписание в пределах данного ПрФ;
непосредственные команды исполнителя, которые он может исполнить сам, и не описываемые извне;
Обычно преемником служит следующее в ПрФ предписание, но этот порядок исполнения может быть изменен за счт структурных переходов.
Всякое предписание может указывать требуемые аргументы, значения для которых берутся только в рабочей области обстановки, и может выдавать в результате исполнения некоторое результирующее значение, возвращаемое в эту же рабочую область.
Исполнение любого предписания, за исключением непосредственных команд исполнителя, заключается в единичном исполнении некоторого другого (вообще говоря, не известного в этой операционной обстановке) программного фрагмента, который и реализует требуемую этим предписанием конкретную деятельность, для чего создатся новая нужная операционная обстановка.
Другими словами, если есть предписание на выполнение некоторой деятельности и требуемая деятельность элементарна (т. е. е строение неизвестно), то она будет исполнена как команда некоторого исполнителя, а если деятельность составная, то е составляяющие части представляются предписаниями некоторого реализующего е ПрФ, и его ЕИ будет происходить в новой отдельной обстановке.
Значит, мы можем рассмотреть любую деятельность как ЕИ некоторого «корневого» ПрФ, причм при исполнении каждого его предписания происходит ЕИ его ПрФ.
Запуск новых обстановок для ЕИ обрывается, когда очередное предписание оказывается «непосредственной командой» соответствующего исполнителя. Эта совокупность исполнений разворачивается динамически, а затем к концу ЕИ исходного корневого ПрФ полностью исчезает.
Операционная обстановка существует (собирается) только на период единичного исполнения и распадается (пропадает) по его завершении. Обстановка замкнута потому, что все изменения, происходящие в ходе ЕИ, локализованы в ней, невозможны какие-либо вторжения в рабочие области других обстановок, а также переходы извне внутрь ПрФ.
Таким образом, единичные исполнения, протекающие в разных обстановках, оказываются независимыми и могут быть осуществлены параллельно, хотя исполнители при этом могут обмениваться сигналами.
Заметим, что предписание, заказывающее выполнение некоторой конкретной деятельности и е результат, само находится в другом ПрФ, принадлежащем другой, так сказать, «вышестоящей»
обстановке. Иными словами, можно сказать, что цель конкретной деятельности всегда находится вне е.
При этом движение по предписаниям порождает локальное время данного исполнения. Всякий раз, когда вызывается исполнение предписания, то оно, осуществляясь в другой операционной обстановке, порождает там сво время, разворачивающееся в ней самой, и к текущему времени не имеет никакого отношения. Поэтому все локальные имена оказываются многомерно упорядоченными, и это позволяет легко переходить к их параллельному исполнению.
Внутри каждой обстановки исполнение каждого предписания е ПрФ является элементарным и выполняется за один такт е внутреннего времени. Например, если ЕИ обстановки состоит в исполнении программного фрагмента из 9-и предписаний, то оно занимает ровно 9 тактов, но исполнение предписания, вызвавшего исполнение, самого этого ПрФ, занимает в «вышестоящей» корневой обстановке только один такт.
Теперь о понятиях целостности и замкнутости. Операционная обстановка замкнута по управлению, поскольку на программный фрагмент управление поступает в самом начале, может как угодно двигаться в его пределах и обязательно выходит через его конец.
Она также замкнута и по информации, потому что любое предписание программного фрагмента может пользоваться только данными из рабочей области или обращаться к объектам, которые для этого предусмотрены самой операционной обстановкой. А все, что происходит внутри самой рабочей области, исчезнет, как только окончится единичное исполнение.
Кроме того, имеет место замкнутость по времени, потому что в каждой обстановке порождается свое собственное локальное время.
В понятие операционной обстановки высокого уровня фактически удатся заложить всю ту информацию, которая должна окружать программный фрагмент, чтобы его можно было выполнять.
Причем это удатся сделать таким образом, что при переходе от обстановки к обстановке, не обязательно предполагать одинаковость исполнителей, а следовательно, писать программные фрагменты на одном языке, и не требуется ничего знать о структуре соответствующих объектов и форматах протоколов взаимодействия.
Утверждение, что любое единичное исполнение завершается в конечное число тактов, играет во всех вышеприведнных рассуждениях решающую роль. Без него не имеет смысла представлять ПрФ как совокупность предписаний. Другими словами, мы лишились бы возможности рассматривать некоторую конкретную деятельность как составную, т. е. лишились самого мощного средства языков – свртки.
В отличие от обстановок и их составляющих, которые суть реальные статические предметы и могут быть запасены и сохраняемы, единичное исполнение – это процесс, т. е. оно однократно и неповторимо. Конечно, по одному и тому же ПрФ может быть опять вызвано ЕИ в такой же, как и прежде обстановке, однако это будет уже другое ЕИ, т. е. такая же, но не та же самая деятельность, проведенная в другой раз. Другими словами, к деятельности (т. е.
единичному исполнению) не применимо понятие «экземплярность». Важно отметить, что два «таких же» экземпляра могут в реальности и не быть тождественно одинаковы, расходясь, например, в процессе старения, а для «одного и того же» этой проблемы не возникает.
Можно говорить, однако, что один и тот же исполнитель привлекается в разные обстановки, также можно представить, что есть два «экземпляра» одинаковых (таких же) исполнителей, или что один и тот же ПрФ, обеспечивает в разных обстановках другие ЕИ, приводя к различным результатам.
Рассмотрим этот интересный вопрос подробнее. Успешное проведение ЕИ требует, чтобы ПрФ был согласован с обстановкой, т. е., чтобы входящие в него предписания были «понятны» исполнителю, так чтобы исполнитель был в состоянии обеспечить исполнение этих предписаний. Какие реализующие ПрФ будут вызваны исполнителем, зависит от обстановки. Так, предложение отца сыну:
«Вот тебе полтинник, сходи в свой любимый магазин и купи чего хочется» может быть исполнено многими способами, например, в зависимости от возраста сына или того, что в текущей обстановке «полтинником» названы 50 коп. или 50 долларов, и т. п.
На аналогичном примере можно обсудить, как с информационно-деятельностной точки зрения вводятся понятия текста и его смысла. Имея ПрФ, будем фиксировать ход событий деятельности, т. е. запишем ту последовательность предписаний, которая возникла при его ЕИ в некоторой обстановке. Эта запись составлена из выполненных предписаний. Е вполне можно использовать как ПрФ в такой же обстановке и снова записать ход событий, возникший при ЕИ теперь. Легко видеть, что оба хода событий совпадут. Другими словами, исполнение исполнения совпадает с ним самим, заметим это на будущее.
Кроме того, мы можем теперь рассматривать текст как запись хода событий, фиксирующую порядок исполнения предписаний некоторой (мысле-) деятельности. Тогда чтение этого же текста в другой обстановке и другим исполнителем можно рассмотреть как новое ЕИ этого ПрФ в этой второй обстановке. Именно эта деятельность и может быть сопоставлена «смыслу» текста (или его другого экземпляра). Здесь уже появляется возможность исследовать разные интересные детали, например, некоторые предписания, которые могут быть при этом недоступны пониманию как незнакомые слова и т. п.
Самым важным при этом является то, что смысл текста отражает порождающую его деятельность [2] и заново возникает (если возникает) при деятельности чтения текста, которая определяется не только текстом (таким как ПрФ), но и всеми составляющими в новой обстановке и исполнителем в первую очередь. Таким образом, оказывается, что смысл текста определяется читателем.
Мир содержит множество вещей, т. е. отдельных целостных предметов, отграниченных от окружающей их среды. Вещи различаются по своим свойствам и месту, которое они занимают в пространстве. Другими словами, каждая вещь уникальна, хотя и можно говорить о различных экземплярах одинаковых или таких же вещей.
Под влиянием внешних воздействий внутреннее состояние вещи может изменяться, однако для каждого данного момента оно является вполне определнным. В ходе разных деятельностей с одной и той же вещью (экземпляром) можно обращаться по-разному. Например, микроскопом, как оптическим прибором, нельзя забивать гвозди, хотя, в частности, он и тяжлый и ручка у него удобная.
После понятия подпрограммы, которое ввел М. Уилкс, объекты явились самым важным понятием, потому что когда данные начали усложняться, то потом выяснилось, что чем сложнее структура организации данных, тем больше специальных программных фрагментов надо использовать, чтобы корректно по ней двигаться. Эти фрагменты, адаптированные, чтобы корректно двигаться по сложной структуре объекта, при разработке системы Smalltalk-80 назвали методами, и стало очевидно, что их надо объединить с той структурой данных, с которой они будут работать. И никаким другом способом не разрешать пользоваться объектом. Это и называется инкапсуляцией.
Логическую структуру объектов можно, исходя уже из сегодняшних соображений, показать следующим образом.
У каждого объекта есть свой собственный домен, где хранится его состояние и находятся его компоненты и под-объекты. Обращаться к памяти внутри домена разрешено только программным фрагментам, которые являются методами объекта, а все остальные ПрФ могут обращаться только в пространство команд к точкам входа в методы, используя формат описания для интерфейса соответствующего обращения к этому объекту.
При начальном появлении объектов было сделано некоторое количество очень неудачных, на наш взгляд, вещей. Объектная система Smalltalk-80 была сделана на качественно более мощной рабочей станции, чем обычные локальные персональные машины, которые всеми использовались, а поэтому эта система могла быть достаточно эффективно реализована как интерпретирующая, и следовательно, она работала с объектами и с взаимодействиями объектов между собой, с учетом тех конкретных состояний, в которых эти объекты находились. Поэтому в системе Smalltalk-80 была задействована такая метафора: объект – это самостоятельная сущность, попросите его – и он вс сам сделает. Это было проведено очень явно.
В результате в объектно-ориентированных языках не очень явно делается упор на то, что объекты – это знаковые пассивные конструкции, т. е. знаковые формы, которые сами ничего сделать не могут.
Это просто особая договорнность, что исполнитель будет работать только таким предписанным способом.
Далее, для облегчения описания объектов был введн замечательный принцип, который назвали наследованием между классами объектов. Стоит напомнить соотношение между классами и объектами: объект – это единичный экземпляр, порожденный классом. Но между классами и объектами не было проведено, а в языках типа «С с плюсами» и до сих пор не проводится, четкого разграничения. Не подчеркивается, что для эффективной реализации объектов вся эта «классовая» информация должна быть снята статически, т. е. использована до начала исполнения программы. А, на самом деле, класс – это только информация по созданию объектов, а именно:
информация о наследовании, и информация о том, что некоторые одинаковые обращения к объектам для разных типов объектов будут отрабатываться по-разному (полиморфизм).
Вещь, вовлечнная в конкретную деятельность так, что обращение с ней в этой деятельности регламентировано, является объектом этой деятельности. Работе с объектами посвящены многие труды по объектно-ориентированному программированию, поскольку введение понятия объекта позволило разделить рассмотрение того, как пользоваться объектом, от того, как он устроен.
К тому моменту, когда объект создатся в соответствии с системой наследования, определнной между классами, а не между объектами, надо хорошо себе представить, что ни один объект ничего другому объекту не наследует. Наследование – это связи классов, говорящие о том, что если в некотором классе создается некий объект, то он получит в качестве своего типа определенный перечень методов: во-первых, те, которые в самом классе и описаны, а вовторых, те, которые придут по наследованию из всех предусмотренных для этого классов. А в момент создания объекта этот список для него фиксируется, с предписанным посредством задания полиморфизма для выбора того, что нужно подставить в качестве каждого метода.
Есть хороший простой пример полиморфизма. Для того, чтобы поехать из Новосибирска на Алтай, надо выехать на дорогу М52 и поехать на юг. Поехать на юг прямо по карте, то есть по объекту «карта» (по компасу), – это один метод. А ехать на юг прямо по дороге (т. е. по касательной к е осевой линии) – другой. Если ехать «прямо на юг» по компасу, то процесс закончится через несколько секунд. Реализовать второе предписание: «ехать прямо по…» можно и на кривой дороге. Это и есть полиморфизм.
Еще одного понятия вообще не было. Когда описывают объект, то говорят « объект имеет некоторый тип». Тип – это набор методов, которыми можно обращаться к этому объекту. Тип приписан объекту, но обращение к объекту всегда происходит через его обозначение, то есть – через имя. Но тип вполне можно отнести и к имени. А тогда получится естественная ситуация, что если обращаться (то есть пытаться что-то сделать в его домене) к объекту через одно имя, то этот объект выглядит как объект некоторого типа, а через другое имя вы можете на этот же самый домен посмотреть как на домен объекта другого типа. Этот принцип можно назвать политипией.
Например, при работе с текстом с помощью текстового редактора, нужно учитывать внутреннюю структуру текста, но когда после этого текст нужно передать куда-то, то он бертся целиком, и для механизма передачи он уже перестает быть составным объектом, он упаковывается; эту упаковку и нужно передавать.
Хороший пример можно найти в области семейных отношений: если у Коли есть сестра Катя и шурин Вася, то Кате приписаны типы и сестра и жена и, обращения к ней по соответствующему типу отличаются методами доступа.
В результате обращения с объектом его состояние (т. е. состояние представляемой им вещи) может измениться. В этом отношении обращение к объекту (с некоторыми значениями аргументов) принципиально отлично от вычисления значения функции.
Фактически с каждым из обращений к объекту должно быть связано по две функции: функция переходов, которая задат, как изменяется состояние объекта, и функция выходов, описывающая выдаваемое значение, если оно предусмотрено.
Введм теперь некий весьма важный принцип. Он называется принципом информационной замкнутости и требует, чтобы при обращении к объекту могло измениться состояние только в домене этого объекта, и ни в каком другом объекте.
Это довольно сильное утверждение, поскольку из него вытекает много важных следствий. С другой стороны, это локализующее требование, которое обычно предъявляется в практике, и оно предполагает, что никто, кроме метода объекта не может изменять домен. Но это ещ и означает, что когда исполняется метод, а метод – это программный фрагмент, то при этом может быть вызов какогонибудь другого программного фрагмента –этот программный фрагмент должен относиться только к одному из тех методов, которые принадлежат этому объекту. Нельзя вызвать метод из другого объекта, потому что иначе тот другой объект тоже может измениться, а принцип информационной замкнутости именно это и запрещает.
Таким образом, три важнейших требования к объекту состоят в следующем:
объект пассивен;
им можно пользоваться, не зная, как он устроен (это называется инкапсуляцией);
при обращении к данному объекту изменяется только его состояние (это информационная замкнутость).
Как уже было сказано, исчерпывающий перечень возможных обращений (с необходимыми для них аргументами) называется типом объекта. Причм одной и той же вещи могут соответствовать объекты разных типов, входящих в ПрФ. Как уже отмечалось, предусматривается специальный род предписаний, для того чтобы оперировать с объектами. Чтобы предписание было законным необходимо, чтобы востребованный объект был учтн в перечне объектов данной обстановки. Предписание должно указывать объект, конкретное обращение из перечня входящих в его тип, и нужные значения аргументов. Обратите внимание, что в предписании нельзя сослаться на состояние объекта, здесь эта информация недоступна.
Кроме того, например, в отличие от стандартных объектноориентированных языков, следует считать, что оператор «new», создания объекта, принадлежит классу, а не самому этому объекту. Более того, можно даже показать, что это протокол и он связан с некоторым подпространством, к которому объект отнесен.
Обращение к объекту реализуется в отдельной замкнутой обстановке и таким образом, чтобы при этом могло измениться состояние только этого объекта и ничего кроме него. Поскольку обе функции, соотнеснные с объектом, имеют в составе своих аргументов его состояние, то «обращение с» или «обращение к» объекту может быть «наказуемо», а более точно – нет гарантии, что его состояние не изменится.
Подчеркнм, что мы рассматриваем только такие объекты, состояние которых не изменяется в отсутствие обращений к ним, т. е.
– пассивные объекты. Очевидно, что не всякая вещь может быть представлена пассивным объектом, простейшим примером может послужить суп, остывающий в тарелке, независимо от того, едят его в это время ложкой или нет. Более интересный пример – свеча, состояние которой определяется как е текущий вес и которую можно зажечь или погасить. Незажжнная свеча может быть рассмотрена как объект, в тип которого входит обращение «зажечь», а зажжнная – уже не может считаться (пассивным) объектом, так как е состояние, как вещи, меняется без обращения к ней.
Несколько позднее будет показано, как можно корректно ввести понятие активного объекта, а пока рассмотрим следствия, вытекающие из указанных ограничений на объекты.
Объект называется элементарным, если при обращении к нему не упоминается об его частях. Одна и та же вещь может рассматриваться и как элементарный объект и как составной, т. е. с указанием того, какие подобъекты есть у объекта. В частности, могут потребоваться некоторые конкретные обращения к составному объекту, которые должны работать именно с отдельными его частями.
Но если мы и захотим создать подобъекты в объекте, то принцип информационной замкнутости немедленно скажет нам, что подобъект объекта не может быть объектом и обратиться к нему как к объекту нельзя. А теперь представьте: была куча деталей, т. е.
объектов, а потом из них собрали видеокамеру. Видеокамера начинает работать, а детали как отдельные сущности перестали существовать. Они спрятались внутрь. И соответствующий подобъект в программе тоже может быть достаточно сложным, например, строка матрицы – это вектор, у которого есть свои элементы.
В силу информационной замкнутости объекты не пересекаются, что, в частности, отражает отдельность представляемых ими вещей. Отсюда напрямую следует, что подобъект объекта не может быть объектом.
Значит быть объектом – это определнный статус. Другими словами, это означает относительность понятия объекта, т. е. если, например, в данной деятельности предусматривается работа с некоторой целостной совокупностью вещей как с составным объектом, то именно эта совокупность в целом должна получить статус объекта, а составляющие е вещи – нет. Они в этой деятельности будут только подобъектами. А анализируя опыт работы с составными объектами, можно заметить, что она всегда проходит в две стадии:
сначала нужно «добраться» до требуемого подобъекта, а затем уже «обращаться с» ним.
Первая стадия формализуется в понятии навигация и является характеристической частью типа составного объекта. Навигация включает способы именования подобъектов в объекте и методы организации предоставления доступа к ним.
Проблема решается, если принять, что объект создатся и находится не неизвестно где, а в каком-то подпространстве, например, в качестве подпространства можно предъявить домен объектахозяина. Тогда если мы возьмм матрицу, то у нас есть занимаемая ею область памяти – это е домен, все строки, столбцы и элементы должны находиться внутри него, и мы будем относить их как объекты к этому подпространству домена матрицы. А сама матрица лежит в каком-то другом блоке памяти, т. е. она является объектом другого подпространства, – и коллизия исчезла. А ограничение будет уже таким: подобъект объекта не является объектом в том подпространстве, в котором объект является объектом.
Но оказывается, что мы ещ не вполне достигли цели, потому что мы не сможем одновременно объявить строки и столбцы матрицы объектами даже внутри домена матрицы, потому что они пересекаются, а это нарушает принцип информационной замкнутости.
Однако, лишив подобъекты статуса объектов, мы можем позволить себе не требовать для них информационной замкнутости, хотя вполне можем продолжать пользоваться инкапсуляцией. Оказывается, так получается просто потому, что у нас дефицит средств. И средство, которое нам нужно, – это умение группировать объекты так, чтобы они не теряли статуса своей объектности.
Конфигурации объектов. Отдельности Достаточно часто необходимо иметь возможность рассматривать некоторую совокупность объектов как целое, не теряя при этом самостоятельного статуса самих этих отдельных объектов. Мы показали, что эту совокупность нельзя объявить просто одним составным объектом, а следовательно, чтобы понимать, нам потребуется ввести новое понятие – конфигурацию.
Конфигурацией объектов будет называться совокупность объектов, для которой установлены правила навигации к любому, входящему состоит из навигации и действий включения объекта в конфигурацию или удаления объекта из не. Структура конфигурации и совокупность состояний е объектов образуют состояние конфигурации.