sotrud.ru 1

Г Л А В А 1

НА ПОДСТУПАХ К НОВОМУ ЯЗЫКУ

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

Джордж Паджет Томсон

ЗАЧЕМ НУЖЕН ЯЗЫК ДРАКОН?

ДРАКОН — это алгоритмический язык, обладающий необычным свойством: одновременно он является языком для описания структуры деятельности, языком понимания и взаимопонимания, языком развития интеллекта. Как язык программирования, он удовлетворяет требова­ниям математической строгости, позволяющим из исходного текста
однозначно получать объектный код (машинный код для компьютера). Но главное не в этом. При создании ДРАКОНА основное внимание
уделялось человеческому фактору, улучшению наглядности и доход­чивости технических и социальных проектов и технологий, повышению эргономических характеристик алгоритмов, чтобы не на словах, а на деле превратить ДРАКОН в язык для улучшения работы ума, язык понимания и взаимопонимания.

Хотя ДРАКОН внешне очень напоминает обычные блок-схемы алгоритмов и программ, фактически он является оригинальной разработкой. Наиболее близким функциональным аналогом ДРАКОНА следует считать схемы действий (action diagrams) [1–4] и схемы деятельности (activity diagrams) [5].

Для дотошных читателей, которые любят подробности, аналогами ДРАКОНА — в той или иной степени — можно назвать и более дальних “родственников”. К их числу относятся: диаграммы Несси—Шней­дермана [6], HOS-схемы [1], схемы “гринпринт” [7], SPD-диаграммы фирмы NEC [8], PAD-схемы фирмы Хитачи [8], деревья и таблицы ре­шений, схемы декомпозиции [4], схемы зависимости [1], язык SDL и

его производные, систему BLS, созданную А. Смоляниновым из Санкт-Петербургского электротехнического университета, R-схемы И. Вельбицкого, -схемы В. Прохорова и т. д.

В ЧЕМ СЕКРЕТ ДРАКОНА? — В КОГНИТИВНОМ ПОДХОДЕ

Впрочем, сравнение с аналогами в данном случае малопродуктивно, так как оно не позволяет раскрыть наиболее существенную особенность ДРАКОНА, которая называется “когнитивный подход” [9]. Термин “когнитивный” (познавательный) пока еще не получил широкого распространения среди проектировщиков, разработчиков, инженеров и программистов, однако он является тайным паролем нового могущественного научного ордена, вернее сказать, знаменем двух новых, бурно развивающихся направлений в психологии и науке об интеллекте, известных как когнитивная психология и когнитивная наука1.

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

Суть вопроса состоит в следующем. Разработчики технических и социальных проектов, интеллектуальные работники — это живые люди, обладающие мозгом, возможности которого, хотя и велики, но тем не менее далеко не безграничны. Таким образом, проблема проектирования — это не только техническая, но и человеческая, познавательная, т. е. когнитивная проблема.

Под когнитивным фактором в данной книге понимаются познавательные, интеллектуальные, мыслительные, творческие аспекты деятельности ученых, специалистов и учащихся. Чем сложнее объект технического и социального проектирования, тем важнее делать акцент на необходимости тщательного учета когнитивных характеристик деятельности людей. Академик П. Симонов подчеркивает: для разработчиков систем “чрезвычайно важно знание правил, следуя которым живой мозг воспринимает, обрабатывает, фиксирует и использует вновь полученную информацию. Сведения о таких правилах, выявленных в эксперименте, поставляет когнитивная психология” [11].


Использование названных правил позволяет получить практический результат — повысить производительность умственного труда.

ПОЧЕМУ ЛЮДИ НЕ ИНТЕРЕСУЮТСЯ
СОБСТВЕННЫМ МОЗГОМ?


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

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

Д


Отличный мозг! Но в чем дело? Почему он так медленно работает?
умается, этот вывод справедлив и в других случаях. Игнори­рование закономерностей работы мозга, недостаточное внимание к когнитивным вопросам приводит

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


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

СТАНЕТ ЛИ ДРАКОН ЧЕМПИОНОМ МИРА
ПО КРИТЕРИЮ “ПОНИМАЕМОСТЬ АЛГОРИТМОВ”?


Данная книга имеет сугубо практический характер. Ниже будет показано, что когнитивный подход — это рабочий метод, дающий полезные плоды: улучшение понимаемости алгоритмов и программ, проектов и технологий, повышение производительности сложного интеллектуального труда. Мы постараемся обосновать этот тезис, постепенно раскрывая особенности языка ДРАКОН.

Как и все прочие языки, ДРАКОН опирается на математику и логику. Однако сверх того, он самым тщательным образом учитывает когнитивные вопросы. Благодаря систематическому использованию когнитивно-эргономических методов ДРАКОН приобрел уникальные эргономические характеристики. Можно предположить, что в будущем ДРАКОН сможет претендовать на звание чемпиона по критерию “понимаемость алгоритмов и программ” (в классе императивных языков)1.

ДРАКОН можно определить как общедоступный визуальный язык, предназначенный для описания структуры деятельности, для систематизации, структуризации, наглядного представления и формализации императивных знаний, а также для проектирования, программирования, моделирования и обучения. Это универсальный межотраслевой язык делового мира, служащий для описания научно-технических, медицинских, биологических, экономических, социальных, учебных и иных задач. ДРАКОН позволяет упорядочить и представить решение любой, сколь угодно сложной императивной (процедурной, деятель­ностной, технологической, рецептурной, алгоритмической) проблемы
в виде наглядных чертежей, выполненных по принципу “взглянул —
и сразу понял!”

Ч


Кто сказал, что мозг нельзя улучшить?

А зачем его улучшать?

Чтоб быстрее работал!
еловечность языка ДРАКОН, стремление создать максимальный комфорт для работы человеческого мозга, всемерная забота о повышении творческой продуктивности персонала позволяет надеяться, что ДРАКОН получит самое широкое применение в народном хозяйстве, бизнесе, обороне, науке и системе образования. Используя не просто наглядные, а предельно наглядные формы представления знаний, облегчая работу мозга, ДРАКОН обеспечивает заметный рост производительности интеллектуального труда.

В основе языка ДРАКОН лежит идея когнитивной формализации знаний, позволяющая сочетать строгость логико-математической формализации с точным учетом когнитивных (познавательных) характеристик человека [9]. В результате удалось кардинальным образом упростить и облегчить процедуру описания структуры деятельности, формализацию профессиональных знаний специалистов, стандартизовать ее и сделать пригодной для массового практического использования. Это в равной степени касается как компьютерной, так и “бескомпьютерной” интеллектуальной деятельности людей.

Таким образом, основная цель создания языка ДРАКОН — обеспе­чить качественный скачок в повышении продуктивности сложного интеллектуального труда за счет увеличения интеллектуальной производительности человеческого мозга, выявления и более полного использования резервов человеческого интеллекта, создания когнитивных предпосылок для существенного повышения эффективности информационных технологий.

НА КОГО РАССЧИТАН ЯЗЫК ДРАКОН?

Язык в равной степени рассчитан на четыре категории лиц:

  • на людей, совершенно не знакомых (или слабо знакомых) с программированием и вычислительной техникой: механиков, электриков, комплексников, прибористов, испытателей, физиков, химиков, геологов, биологов, медиков, агрономов, экономистов, юристов, психологов и т. д.;


  • на профессиональных программистов, математиков и разработчиков вычислительной техники, в том числе на специалистов по операционным системам, системному и прикладному программированию, а также микропрограммированию (для персональных, универсальных, управляющих и бортовых компьютеров);

  • на школьников и студентов;

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

ПЕРЕЧЕНЬ ЗАДАЧ, РЕШАЕМЫХ С ПОМОЩЬЮ
ЯЗЫКА ДРАКОН


Язык ДРАКОН может быть использован при решении следующих задач:

  • описание структуры человеческой деятельности;

  • наглядное представление императивных знаний в любых областях народного хозяйства, науки и образования;

  • описание концептуальных решений и императивных моделей;

  • проектирование алгоритмов и программ;

  • разработка алгоритмов и программ;

  • проектирование технологических процессов;

  • описание любых технологий (промышленных, сельскохозяйственных, медицинских, педагогических, управленческих и т. д.);

  • описание процесса проектирования;

  • описание процессов функционирования дискретных систем и приборов, в том числе интеллектуальных систем;

  • описание исходных данных на разработку систем автоматизированного проектирования и систем автоматизации научных исследований;

  • описание процесса решения математических задач;

  • описание диалога и взаимодействия человека-оператора и машины (пульта управления);

  • описание процесса проверки и поиска неисправностей;

  • решение задач диагностики в любых предметных областях;

  • разработка микропрограмм;

  • описание процесса функционирования организаций и предприятий;
  • автоформализация профессиональных знаний ученых, конструкторов, математиков, врачей, юристов, агрономов, психологов, операторов и т. д.;


  • решение учебных задач: обучение навыкам алгоритмизации, про­граммирования и автоформализации знаний в предельно сжатые сроки.

Как уже говорилось, функциональным аналогом ДРАКОНА являются схемы действий и схемы деятельности. ДРАКОН способен выполнять все функции последних (обратное неверно). Поэтому перечень можно продолжить, включив в него задачи, решаемые схемами действий. Это позволит описать некоторые функции ДРАКОНА с помощью терминов, характерных для американской литературы:

  • стратегический обзор функций корпораций (strategic overview of corporate functions);

  • описание логических отношений между процессами (logical relationship among processes);

  • описание укрупненной структуры программ (overall program structure);

  • описание детальной логики программ (detailed program logic) [1];

  • полная декомпозиция программ (ultimate decomposition), начиная от укрупненной логики и кончая деталями кода, что в равной мере полезно при проектировании как сверху вниз (top-down design), так и снизу вверх (bottom-up design) [4];

  • проектирование программ до последнего момента может вестись независимо от языка и лишь на последнем этапе осуществляется переход к нужному языку [1];

  • обучение конечных пользователей, стимулирующее их анализировать и проектировать детальную логику процессов (detailed process logic) [1];

  • описание процедур организационного управления (management procedures) [4];

  • описание компьютерных методологий (computer methodologies) [4];

  • описание методологий информационной техники (methodologies of information engineering) [4].

Как видно из этого списка, ДРАКОН обладает свойством универсальности, оказываясь полезным при решении широкого круга разноплановых задач. Благодаря этому ДРАКОН выполняет функцию универсального языка делового общения и взаимопонимания для специалистов различных специальностей. Кроме того, ДРАКОН существенно облегчает процесс формализации знаний, открывая новые возможности для повышения уровня автоматизации при проектировании и эксплуатации сложных объектов.


ВЫВОДЫ

1. Традиционные цели и методы создания искусственных языков, в частности языков программирования, следует признать во многом устаревшими.

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

3. В настоящее время отсутствует продуманная стратегия, направленная на устранение междисциплинарных барьеров, преследующая цель вооружить разработчиков искусственных языков нового поколения глубокими знаниями в области наук о человеке, человеческом фак­торе и человеческом интеллекте. Этот недостаток нужно как можно скорее устранить.

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


1   Когнитивная психология (психология познавательных процессов) уподобляет мозг компьютеру, исследует переработку информации человеком и рассматривает познание как “совокупность процессов переработки информации” [10]. Когнитивная наука (наука об интеллекте) — это более широкое понятие, представляющее собой сплав когнитивной психологии, психофизики, кибернетики, нейробиологии, лингвистики, математической логики и ряда других отраслей знания.

1  Императивный язык — это язык, который описывает работы и процессы, состоящие из действий, а также условия выполнения каждого действия.