Визуальный язык ДРАКОН

Дружелюбный Русский Алгоритмический язык, Который Обеспечивает Наглядность/Надёжность

Инструменты пользователя

Инструменты сайта


ocenka_texnojazyka_i_shampur-metoda

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
ocenka_texnojazyka_i_shampur-metoda [2012/04/10 08:55]
Владислав Жаринов
ocenka_texnojazyka_i_shampur-metoda [2012/05/21 19:43] (текущий)
Владислав Жаринов
Строка 1: Строка 1:
-====== ​Техноязык и шампур-метод ​- сущность,​ преемственность,​ развитие ​======+====== ​Перспективы техноязыка и шампур-метода ======
  
-Безусловно, ​ДРАКОН-визуализация отличается от традиционной визуализации ​потоков управления блок-схемами. Сам Паронджанов указал на это следующим ​образом:+ДРАКОН-визуализация ​- дело новое. И важно понимать, что техноязык и лежащий в его основе шампур-метод — это: а) не сухая книжная ​догма, а живые сущности, имеющие потенциал для плодотворного развития и б) не трактуемы узко как средство и метод формализации только импер-знаний, но приложимы и для знаний других ​родов и служат источниками ​общих идей ​визуализации. Что и будет по возможности показано далее - на опыте как исследовательском и учебном, так и практическом.
  
 +Предложения создателя техноязыка сохраняют общность с БСАП-языком в отношениях:​
 +  * структуры схем — объектом вывода также является т. н. сводимый (аранжируемый,​ устремлённый;​ на эквивалентность этих определений указано в п. 6 [[biblioteka:​start|доклада Ермакова и Жигуненко]]) граф — ориентированный циклический,​ с выделенной начальной вершиной;​
 +  * отношения к разметке — как и в БСАП, рассматривается неразмеченный граф, который Паронджанов называет «слепышом»;​
 +  * интерпретации — как и БСАП, примитивы и силуэты понимаются как графы потока управления,​ а их цепи — как маршруты алгоритмических процессов.
  
-//"Задача формализации и унификации множества ​профессиональных языков с целью обеспечить эффективное взаимопонимание между специалистами любых профессий, включая программистов, является, хоть и важной, но, увы, неразрешимой. Положение ​в корне меняется, если ограничиться императивными профессиональными ​знаниями. Именно эту задачу ​решает язык ДРАКОН. Он построен путём формализации,​ неклассической структуризации и эргономизации блок-схем алгоритмов и программ, описанных ​в стандартах ГОСТ 19.701-90 ​и ISO5807-85."//​ (Паронджанов В.Д. Как улучшить работу ума, с. 36)+Как правилопредставленные здесь предложения следуют этомуно в ряде случаев рассматривается размеченный граф (прежде всего с текстовкой вершин).
  
-Как же решалась эта задача? Ключевой была следующая идея. Дракон-схему (граф маршрутов алгоритма) можно вывести путём исчисления ​над алфавитом подграфов-атомов из аксиомы-заготовки. Атомы образуются из алфавита вершин-[псевдо]операторов и словаря подграфов-макро[псевдо]операторов,​ представляющих понятия предметной области языка.+====== Предложения и решения ​======
  
-Исчисление, ​разработанное для ДРАКОНа,​ называется //шампур-методом//. Оно основано на следующих принципах:+===== Дракон-лексикаполнота состава и смысла ​=====
  
-  * формальной эргономизации ​лексики — определения состава вершин и их графики с учётом реальных операторов и директив языков программирования;​ при этом среди вершин выделяются ​нелинейные,​ с участием которых образуются подграфы,​ построенные из знаков алфавита и словаря,​ даваемые как единицы ​лексики языка схем. Такой подграф называется //​атомом//​ и всегда имеет один вход и один выход; также даются исходные конфигурации схем - //​заготовки// ​ (см. ​ [[jazyk:​vizualnyj_sintaksis|Тезисы 1..8, 11..14 шампур-метода]]);+[[Дракон-лексикаполнота состава и смысла|]]
  
-  * вложения ​- схема наращивается вводом атомов;​ среди рёбер атомов и заготовок выделены такие, что допускают замену на тот или иной атом — т.н. //​рёбра ввода//;​ рёбра указываются вершинами - //​точками ввода//​ (см. [[jazyk:​vizualnyj_sintaksis|Тезисы 9..10, 15..25, 36, 37 шампур-метода]]); ​+===== Цикл-силуэт и метод ​Дейкстры ​=====
  
-  * «шампура» - расположения входа и выхода ​линейной вершины и атома на одной оси, направленной всегда сверху вниз и упорядочения вершин при следовании ​ по вертикали так, что они лежат на одной оси  (см. [[jazyk:​vizualnyj_sintaksisТезисы 2, 6, 8 шампур-метода]]);+[[Цикл-силуэт и метод ​Дейкстры|]]
  
-  * главной/​побочной осей — выделения в нелинейной вершине (подграфе) из ряда входов (выходов) //​главного//​ и упорядочения остальных (называемых //​побочными//​) вправо от него (см. [[jazyk:​vizualnyj_sintaksis|Тезисы 7, 8 шампур-метода]]);​ 
  
-  * силуэтной укладки - разделения схемы, называемой «силуэтом»,​ на блоки-ветки,​ в тела которых уложены цепи схемы на плоскости без пересечений;​ промежуточные выходы веток связываются со входами через особую структуру — петлю силуэта - и вершины-соединители ​ (см. [[jazyk:​vizualnyj_sintaksis|Тезис 2 шампур-метода]]);​ 
- 
-  * лианного вывода — представления неструктурных топологий схем (которые невозможно получить путём вложения) через операции переноса точек соединения без образования пересечений и/или новых входов в ветки силуэта и/или в циклы (любой формы схемы) (см. [[jazyk:​vizualnyj_sintaksis|Тезисы 26..29 шампур-метода]]). 
- 
-В нелинейном подграфе имеется две и более осей следования. 
- 
-Вход и выход атома представлены рёбрами ввода, между которыми располагается смысловая часть — так сказать,​ «ядро». Оно м.б. единственной вершиной или также подграфом (для сводимых графов - типа ветвления или цикла). Во втором случае рёбра ввода также м.б. в «ядре» атома. 
- 
-Шампур-схема,​ не использующая соединители,​ называется «примитивом» и в общем случае может содержать пересечения цепей. Силуэт и примитив служат формами организации схемы на плоскости-диосцене,​ альтернативными в шампур-методе. Силуэтная укладка также даёт возможность структуризации содержания схемы. 
- 
-При лианном выводе может получиться //​**лианный**//,​ а в силуэте - также и //​**адресный**//​ макроблок (см. [[http://​drakon.su/​biblioteka/​start#​literatura|Паронджанов В.Д. Как улучшить работу ума. Алгоритмы без программистов - это очень просто! М.: Дело, 2001. — С. 259-261.]]) Также может получиться и структура,​ выводимая вложением (Паронджанов называет этот тип макроблока //​**структурным**//;​ можно также //​атомарным//​). 
- 
-На базе этих принципов определены правила вывода схем как теорем исчисления из выбранной аксиомы-заготовки в лексике атомов. 
- 
-Как можно сказать проще? Шампур-метод даёт возможность строить "​слепыш"​ алгоритма так, как мы выводим формулы в булевой алгебре. Только вместо букв - подграфы. И сами формулы имеют вид графов (для ДРАКОНа - схем маршрутов алгоритма). В основе метода — небольшое число базовых принципов:​ 
- 
-  * вложения — схема наращивается вводом атомов,​ построенных из знаков алфавита и словаря,​ в специально указанные (точками ввода) линии заготовок и других атомов;​ 
- 
-  * шампура — вершины при следовании упорядочиваются по вертикали,​ так что вход всегда сверху,​ выход снизу и лежат на одной оси; 
- 
-  * главной/​побочных вертикалей — выходы развилок упорядочены друг относительно друга так, что не лежащий на главной вертикали выход (называемый побочным) всегда располагается правее главного;​ 
- 
-  * силуэта — укладки маршрутов на плоскости в тела веток, промежуточные выходы которых связываются со входами через особую структуру — петлю силуэта - и вершины-соединители. 
- 
-  * операций с лианой — сочинитель также может переносить (с ограничениями) концы побочных маршрутов,​ чтобы образовать конфигурацию схемы, недостижимую вводом атома, но соответствующую конструкциям управления некоторых прогязыков;​ перенос возможен и в примитиве. ​ 
- 
-Лианы можно пересадить и так, что получится то же самое, что можно получить и вводом атома; конечно,​ это не имеет особого смысла. 
- 
-Смысл сказанного можно раскрыть через «формулу новизны»,​ как это и принято для официального описания существа изобретений. Напомним,​ что она имеет вид: «<​Предлагаемый сабж>​ отличается от <​такого-то существующего сабжа>​ тем, что имеет <​такие-то новые фичи>​ и/или <​такие-то фичи>,​ имевшиеся в <​существующем сабже>,​ здесь реализованы с <​такими-то отличиями>​».;​-) 
- 
-Здесь можно сказать,​ что техноязык отличается от языка, заданного стандартами на блок-схемы (далее - БС), тем, что: 
- 
-  * устанавливает требования к графике вершин и линий схем с учётом удобства восприятия «слепыша» и компоновки содержания вершин; ​ 
-    
-  * использует понятие вложения для применения принципов исчисления к графам;​ 
-    
-  * упорядчивает схемы за счёт принципов шампура и главной/​побочной вертикалей;​ 
-    
-  * использует соединители,​ принятые для блок-схем как межстраничные,​ в новом качестве — как внутрисхемные для укладки схемы на плоскости без пересечений цепей и с возможностью структуризации содержания;​ 
-    
-  * даёт возможности выразить топологии потоков управления,​ характерные как для структурной,​ так и для неструктурной алгоритмизации (программирования),​ также через операции исчисления;​ 
-    
-  * предлагает некоторые правила разметки вершин и линий. 
- 
-Можно раскрыть эти отличия (а также сходства,​ оставшиеся с БС) и одновременно оценить шампур-метод (далее - ШМ) и язык, возможности его развития. 
- 
-Каждый пункт списка будет раскрыт в самостоятельном разделе — по сути, получится цикл статей (на общей странице сайта). 
- 
-Предварительно следует сказать кое-что и о понимании сути визуализации и вообще формализации. Удобно это сделать в связи с «исправлением имён» шампур-метода. Так, здесь мы не говорим об иконах. Тому две причины. Во-первых,​ такое название как краткий синоним для пиктограммы пришло из культуры в религиозном смысле протестантской (антикатолически-реформатской ветви западного христианства) — представленной прежде всего носителями английского и немецкого языка. Там иконы как предмет культа не приняты,​ и это слово сакрального смысла,​ в сущности,​ не имеет. Носители русского языка существенно разноконфессиональны,​ и восточное христианство (в частности,​ русское православие) вводит иконы как предмет культа и сакрализует это слово. На возможный конфликт его «мирского» употребления с чувствами соответственно верующих (которые м.б. и сочинителями,​ и читателями описаний на техноязыке) указал Д.В. Барановский — один из практиков дракон-визуализации — [[http://​forum.oberoncore.ru/​viewtopic.php?​p=51261#​p51261|см. здесь]]. ​ 
- 
-Это тем более существенно,​ что христианин в некотором смысле может рассматривать формализацию мира (и дракон-визуализацию в частности),​ особенно неограниченную и касающуюся человеческого поведения,​ как продолжение «познания добра и зла»... и тогда противоречие словоупотребления и убеждений станет серьёзным (хотя здесь оно будет касаться скорее сущностной стороны — в частности,​ возможного использования техноязыка для посягательства на свободу воли и попытки игнорировать неполноту формализуемого знания в виде неопределённости,​ присутствующей в любой модели или в контексте моделирования и сказывающейся в её реализации на практике). 
- 
-Во-вторых,​ у автора языка «икона» понимается как визуальный оператор. Но не любая конструкция визуального языка (и вообще ЯПЗ) может считаться оператором. 
- 
-В силу всего сказанного,​ мы называем вершины,​ имеющие операторный смысл, виопами (от ВИзуальный ОПератор),​ а не имеющие такого смысла (или в общем смысле) — просто вершинами. 
- 
-Далее мы будем широко пользоваться приёмами структурного анализа и синтеза. Проще говоря,​ это умение подразделять данный предмет (в частности,​ воображаемый) на относительно самостоятельные части, которые можно рассматривать независимо,​ и выделять связи частей. И определять такие части, из которых можно собрать (используя связи) заданный предмет так, что он приобретёт нужные свойства (в частности,​ за счёт интегрального эффекта связывания). 
- 
-Структурируя схемы, естественно пользоваться понятием //​**позиции**//​. Как «белого ящика»,​ содержащего часть схемы (её элемент — вершину или ребро, фрагмент,​ законченную конструкцию) и имеющего связи с остальной частью схемы. Позиций на схеме можно определить много. Но полностью схема не может состоять из них — должны оставаться по крайней мере связи. Их положение и присоединение к позициям задают «каркас» строения схемы как результат структурного анализа. А если определить некие операторы управления вхождением позиций — можно описать и структурный синтез. ​ 
- 
-Пока это лишь слова (не каждому читателю,​ возможно,​ до конца понятные) — но по ходу рассказа мы раскрем суть сказанного на примере структурирования конструкций и схем техноязыка и шампур-метода. 
- 
-Часто мы будем говорить о смысле частей схем. Под этим понимается интерпретация получателем сообщения,​ написанного на данном языке (в нашем случае — на ДРАКОНе). Принцип интерпретации можно найти у В.Ш. Кауфмана в книге [[http://​forum.oberoncore.ru/​viewtopic.php?​p=71218#​p71218|«Языки программирования. Концепции и принципы»]] (п. 1.3). Здесь под получателем будем подразумевать //​**машину для переработки данных**//​ (также называемую //​информатической//​) — по сути своей формально-языковую,​ т.е предназначенную для работы с неким математически определимым языком. Ту самую, которую обычно называют «компьютером» (но это не более чем жаргонное словцо,​ передающее лишь часть возможностей таких машин). Но не каждую информашину,​ а такую, устройство и принцип действий которой можно описать моделью,​ известной как «машина Тьюринга» (или аналогичной моделью - «машиной Поста»). В основе своей такая модель несложна для понимания — с ней можно познакомиться по книжке В.А. Успенского «Машина Поста» или в учебнике В.А. Острейковского «Информатика» ([[http://​forum.oberoncore.ru/​download/​file.php?​id=2219|п. 3.1]]). Всё распространённые информашины (включая ПК) описываются этой моделью. Главное,​ что нам надо знать — пространство для переработки данных в такой машине разбито на ячейки,​ упорядоченные в линию и снабжённые номерами-адресами. 
- 
-Вообще каждый формальный язык подразумевает какую-то модель исполнителя. Если она соответствует какому-то реальному исполняющему устройству — то говорят,​ что это язык низкого уровня. Если же модель абстрагирует (т.е. отвлекается от несущественных деталей,​ скрывает их за укрупнённым представлением) реального исполнителя — то говорят,​ что язык, соответствующий ей, высокого уровня.На рисунках далее мы будем пользоваться элементами когнитивной графики,​ как принятой у Паронджанова,​ так и новой. Словарь обозначений можно найти [[http://​grafit-basis.narod.ru/​L3/​usl_obozn.html#​Pril1-n12|здесь]]. 
- 
-==== Отступление о синтаксисе:​ эргономично — не всегда неформально ==== 
- 
- 
-Далее как в графике,​ так и в тексте мы будем пользоваться новыми для читателя обозначениями. Дадим некоторые пояснения в дополнение к упомянутым ранее определениям. 
- 
-В общем случае содержание можно описать с привлечением метаязыка РБНФ, что и сделано в этой статье. Определение принятой версии РБНФ можно найти среди условных обозначений,​ к которым Вас отсылали ранее. 
- 
-РБНФ у нас применяется не только к текстам,​ но и к графике. Принцип простой — в индексе части вводятся РБНФ-скобки,​ если часть необязательна в данном месте схемы. А если скобки задают возможность повтора,​ то очередное место указывается там же стрелочками. Если в одну сторону — то новая часть должна входить в схему всегда с этой стороны (получается,​ что после предыдущей введённой части с таким же индексом — ряд растёт по стрелке). А если в обе — то можно выбирать место в ряду — с левого края, правого или где-то посередине (если в ряду уже больше двух частей — между любыми двумя). Нельзя только выйти за место самого ряда в схеме. Сами индексы,​ если необязательно приводить их полностью,​ замещаем знаком '#'​ (кстати,​ знаки как элементы структуры текста везде берутся в апострофы). 
- 
-В графике мы тоже акцентируем возможность отсутствия фигур и/или связей — пунктиром линий. Если надо зрительно объединить разные части схемы — используем цвет линий и/или фона, толщину контуров и/или связей. Применяем и специальные операторы выбора частей. При этом на схеме выделяются позиции частей,​ к которым выбор применяется. Здесь интуитивно д.б. понятно следующее правило — когда в результате выбора данная часть отсутствует,​ отсутствуют и её внешние связи. Обычно индексы выбора мы даём для вершин — связанные с ними рёбра выбираются,​ так сказать,​ автоматически. 
- 
-Конечно,​ для чтения этих обозначений нужен некоторый навык. Поэтому мы часто кое-что поясняем по их употреблению. В дальнейшем читатель,​ думается,​ сможет и сам пользоваться ими. 
- 
-Может возникнуть вопрос — а зачем они? Одна из основных ролей — сокращать объём представления. Если рисовать/​писать всё, что может повторяться — то при большом числе повторов получится чересчур «габаритное» описание. Помимо его большой площади (и трудной обозримости),​ возникает и взаимосвязанная проблема восприятия — когда «за деревьями не видно леса». :-) Т.е. логическая структура предмета описания неясна. И вот тут выделение частей,​ которые могут повторяться или быть необязательными,​ кроме сокращения объёма,​ работает и на прояснение структуры. Как правило,​ это оказываются именно те части, на которые можно поделить предмет в результате структурного анализа его содержания. И получается,​ что физическое и логическое структурирование в значительной степени совмещаются. 
- 
-==== Отступление об исполнителях:​ «наши машины» и люди - «винтики» и «творцы» ==== 
- 
-Так называются машины для переработки данных у Б. Мейера — одного из современных специалистов по инженерии программ. Мы уже говорили,​ что исполнителя алгоритмов можно описать формальной моделью. При этом важно понимать,​ что он так или иначе связан с окружающим миром — иначе превращается в «вещь в себе», для решения задач бесполезную. Законы связи, взаимодействия и реализации задач, поставленных исполнителю (а где-то — и установления целей и постановки задач) изучает специальная наука — //​**кибернетика**//​. И исполнитель вместе с окружением образует некую кибернетическую систему как объект изучения в этой науке. 
- 
-Начнём с простой системы,​ которая показана в «детской» книжке по техноязыку - «Занимательная информатика»:​ 
- 
-{{ :​sxemavklispolnitelja_-_ill_zaniminfor_.png?​200 |}} 
- 
-Здесь показан исполнитель,​ устроенный так, что может и получать данные от окружения — по связи «информация о внешнем мире» (её ещё называют обратной),​ и выдавать воздействия во внешний мир — по связи «движения Мускула» (ещё её называют прямой). Собственно «наша машина» - устройство-исполнитель программы — это блок «Мозг». Идущие от него вопросы — это тоже команды,​ управляющие получением данных обратной связи. 
- 
-Здесь исполнитель подразумевается как техническое устройство. Но задачи он решает в интересах человека-пользователя. Человек выбирает алгоритм (а если это не предусмотрено задачей,​ для которой сделан исполнитель — то запускает его исполнение — хотя бы просто включив робота). 
- 
-Многие машины устроены по такой схеме. Это и программируемая бытовая техника,​ и станки с ЧПУ (в режиме работы по программе),​ и самонаводящиеся боеприпасы. 
- 
-Во многих задачах человек присутствует непосредственно — когда он участвует в процессе решения. Вот пример структуры исполнителя для такого случая:​ 
- 
-{{ :​page3_graph_a3ls_taskdataproc_111_drakon-schdesign_curr.png?​200 |}} 
- 
-Тут человек-оператор представлен «крупным блоком» вверху,​ а машина (КСА — от «комплекс средств автоматизации») — таким же блоком внизу. Внутри каждого блока находятся элементы — это части т.н. информационного пространства. Оно выделяется в модели исполнителя — наряду с т.н. операционным устройством. В упомянутых «машинах Тьюринга/​Поста» это «лента» и «головка». 
- 
-Эта схема относится к [[http://​grafit-basis.narod.ru/​L3/​viz_alg_TFZ.html#​Doc-n42-1B-I2|задаче оформления дракон-схем]]. Можно изучить описание задачи полностью — может пригодиться. Если, скажем,​ надо нарисовать схему — а под рукой только редактор из офисного пакета. Или есть и специализированный дракон-редактор — но он для простого рисования слишком сложен... 
- 
-Что мы здесь видим? Человек хранит не только точные описания алгоритмов,​ подобные машинным — но и знания,​ умения,​ навыки (ЗУН). А ещё — цели, представления о том, как можно ставить задачи и находить их решения. И чем нужно ограничивать себя в целеполагании и в решении задач (в самом общем смысле это нормы этики),​ а также чем должны ограничиваться люди в отношении к окружающему миру (это нормы морали). Всё это составляет интеллектуальные ресурсы. 
- 
-Если же думать,​ что поведение человека описывается только алгоритмически строго — то мы приходим к упрощённой модели человека — т.н. «винтику». В каких-то задачах,​ которые поставлены уместно с т. зр. общих норм поведения — да, можно составлять алгоритмические инструкции и следовать им. Но в целом, если не упрощать — мы не можем дать «фундаментального алгоритма поведения»... 
- 
-Вот и повод показать более общий случай структуры исполнителя. Здесь различные люди имеют отношение к одной «предметной области»,​ решая разные задачи:​ 
- 
-{{ :​graph_a3l_3211_task_senscontr-activsch_dsk.gif?​ |}} 
- 
-Оператор,​ решающий рассматриваемую задачу (её описание можно найти [[http:///​drakonografika.narod.ru/​L3/​automatization_know.html#​Pril4-n3211-2|здесь]]),​ связан с объектом. И этот же объект используется его персоналом — другими людьми. Иногда цели их м.б. нейтральны друг к другу, иногда совместны,​ иногда и противоположны. 
- 
-А что внутри у исполнителя алгоритма?​ Устройство его сложно,​ и описать можно по-разному. В большинстве случаев структура подобна показанной на следующей схеме: 
- 
-{{ :​grafit-abc_html_m5c6b9f1d.gif?​ |}} 
- 
-Схема составлена на [[http://​grafit-basis.narod.ru/​L3/​aktiv-vspom.html#​Pril2-n73|СТ-языке]]. 
- 
-Важно понимать,​ что все эти блоки тоже работают в определённом порядке. Только алгоритм здесь не программируется,​ а как говорят,​ "​зашит в железе"​ - реализован аппаратно,​ за счёт соединения деталей. Для переработки данных существуют определённые законы устройства аппаратуры,​ делающие её работу максимально правильной. Интересующиеся могут прочесть [[http://​www.mcst.ru/​e2k_arch.shtml|эту работу]]. 
- 
-Можно видеть,​ что «наша машина» (здесь это устройство — ДСК) может и не использоваться при решении — если она стала неработоспособной. Кто это определяет?​ Оператор. А бывает и так — машина в какой-то момент начинает работать неправильно. А определить это оказывается невозможно — по крайней мере, вовремя... ​ 
- 
-Чтобы свести такую возможность к минимуму,​ изделия рук человеческих д.б. гарантоспособны. По-простому это значит — их создатели должны полностью отвечать за то, что изделие работает так, как положено. Но не только — ещё нужно, чтобы ущерб от неправильной работы был в допустимых пределах или вообще была возможность его предотвратить. Если изделие программируется — то гарантоспособность исполнения программ «нашей машиной» в его составе — важная часть решения этой проблемы в целом. Если же и нет — то понимание работы изделия,​ строгое алгоритмически,​ тоже важно. Для этого в конечном счёте и нужно описывать алгоритмы точно и понятно. Для человека... 
- 
-==== Отступление:​ формализация и языки представления знаний ==== 
- 
-В отличие от исходного определения,​ здесь задаются также текстоэлементы языка. Дело в том, что смысл и лексики,​ и отдельных конструкций (типовых и уникальных подсхем) и законченных схем не сводится к тому, который представлен графикой вершин и линий. Это отражено ещё автором техноязыка в названии авторской технологии его применения — ГРАФИТ-ФЛОКС (от ГРАФика И Текст; ФЛОКС — дополнительный к ДРАКОНу табличный язык, используемый для описания величин) — и в предварительной классификации содержания программно строгих описаний деятельности. Последовательно этот принцип проведён в [[http://​grafit-basis.narod.ru/​L2/​gen_struct_dan.html|классификации формализуемых знаний]] и в графит-методе — новом виде исчисления схем, определённом [[http://​grafit-basis.narod.ru/​L3/​grafit-rules.html|здесь]]. Графит-метод использует и основные принципы,​ принятые для техноязыка,​ но также вводит новые. Учёт текста не только для частных случаев (гибридных техноязыков),​ но и в общем (и в правилах исчисления,​ когда нужно) — один из графит-принципов. Заметим,​ что правильно добавлять сюда также и таблицы — как своего рода предтечу схемы текста — и несхематические изображения (скажем,​ рисунки,​ вставленные в вершины) — и тогда говорить просто о содержании вершин. 
- 
-Уже давно специалисты по анализу и проектированию деятельности и взаимодействия человека в трудовом процессе — инженерные психологи — определяли общую структур процесса формализации знаний. Общий результат можно найти на [[http://​drakonografika.narod.ru/​L2/​formalization.html#​Doc-n1411|этой странице]]. В структуре процесса можно фактически выделить три стадии - «качественную»,​ математическую и информатическую. Каждой из них соответствует достигаемый уровень формальности языка. Познакомимся с этими уровнями вкратце. 
- 
-//​**Неформальный**//​ предполагает «почти естественную» формулировку действия — как фразы на родном языке сочинителя,​ только с заданным подразделением на имена объектов (в экономическом смысле — предметов и результатов труда) и «имя действия» - глагольные обороты,​ связующие объекты и указывающие применение к ним называемых действий (и, возможно,​ инструментов). Как действия д.б. знакомы исполнителю по названиям (входить,​ как говорят Паронджанов,​ а ранее — [[http://​forum.oberoncore.ru/​viewtopic.php?​p=71218#​p71218|В.Ш. Кауфман в книге «Языки программирования. Концепции и принципы»]],​ в его «репертуар»),​ так и объекты д.б. известны по именам,​ образуя,​ так сказать,​ «багаж» исполнителя;​ то же касается и инструментов,​ образующих,​ условно говоря,​ «реквизит» процесса. Понятно,​ что не меньшие знания обо всём этом д.б. у сочинителя. ;-) 
- 
-//​**Функциональный**//​ уровень в принципе соответствует уже математической трактовке деятельности. Как некоей структуры функций,​ применение которых к аргументам (тем же объектам-предметам труда) даёт объекты-результаты труда. Структура объединяет функции прежде всего путём композиции (в цепочку,​ где результат[ы] одной функции передаются как аргумент[ы] следующей). 
- 
-//​**Информатический**//​ уровень возникает как результат информатизации представления о деятельности. При этом выделяется императивное формализованное знание — о маршрутах процесса,​ декларативное — о типах объектов и их структурах,​ активностное — о типах операций и средствах их выполнения (как структуре механизмов «реквизита»). В пределе обязательно представление объектов как чисел (кодов) и операций — как арифметических и/или логических (в смысле булевых функций над двоичными цифрами-битами). Любым «материальным последствиям» исполнения алгоритма тогда соответствуют (в алгоритмической обстановке,​ т.е. в модели контекста процесса) значения чисел/​кодов на определённых линиях связи внутри исполнителя (между механизмами «реквизита») и в его окружении в определённые моменты времени. Так можно описать то, что Паронджанов называет «техпроцессом». Понятно,​ что сочинитель должен представлять себе схему исполнителя вместе с окружением,​ «размеченную» величинами данного процесса. 
- 
-Таков пролог нашей истории... :) 
- 
-====== Продолжение следует... ====== 
- 
-===== Вершины и линии схем: смысл — в ГРАФике И Тексте ===== 
- 
-[[Вершины и линии схем - смысл — в ГРАФике И Тексте|]] 
- 
-===== Вложение и структурные изменения на графах ===== 
- 
-[[Вложение и структурные изменения на графах|]] 
- 
-===== Упорядочение маршрутов:​ чем правее,​ тем... придумай сам ===== 
- 
-[[Упорядочение маршрутов - чем правее,​ тем... придумай сам|]] 
- 
-===== Шампур-укладка на плоскости:​ свет и тени силуэта ===== 
- 
-[[Шампур-укладка на плоскости - свет и тени силуэта|]] 
- 
-===== Атомарные и лианные структуры ===== 
- 
-[[Атомарные и лианные структуры|]] 
- 
-===== Структурная алгоритмизация и шампур-метод:​ сочинитель становится мудрецом ===== 
- 
-[[Структурная алгоритмизация и шампур-метод - сочинитель становится мудрецом|]] 
- 
-===== Разметка схем и гибридные техноязыки ===== 
- 
-[[Разметка схем и гибридные техноязыки - ДРАКОН начинает,​ ГРАФИТ выигрывает|]] 
ocenka_texnojazyka_i_shampur-metoda.txt · Последние изменения: 2012/05/21 19:43 — Владислав Жаринов