Д Р А К О Н О Г Р А Ф И К А

Маршрутами ДРАКОНа | Основы реализации | Средства общего назначения

Пока таковых насчитываются единицы. Здесь даётся предварительный обзор дракон-сред и систем.

Первой следует считать дракон-деклар-систему ГРАФИТ-ФЛОКС. Она разработана для применения техноязыка при создании законченных косавтов на базе аппаратуры БЦВМ «Бисер» по полному циклу НИОКР.

Строго говоря, в этой системе реализовано семейство языков ДРАКОН (импер-язык, граф-базированный в терминах генклассификации формализуемых знаний) и ФЛОКС (табулобазированный деклар-язык объявления величин автоматизированных объектов управления (АОУ)1 на базе «Бисера»), применяемое по технологии ГРАФИТ. Обзор содержится в в этой теме.

В начале 1990-х годов Л. Эйсымонтом был разработан автономный редактор дракон-схем (будем называть его ЛЭ-редактор)2. На сегодня он не считается удобным, но м.б. освоен для общего представления и сравнения с другими изделиями. Редактор и документация доступны здесь.

Исторически первой дракон-средой широкого применения является разработка Г. Тышова (далее - Ты-среда). Среда постоянно совершенствуется разработчиком; пока при этом также изменяется формат файлов её документов без обратной совместимости, что осложняет разработку приложений, сопрягаемых с ней по данным. Обратная связь с разработчиком доступна в этой теме. В рамках первичного освоения и оценки был составлен проект пользовательской спецификации Ты-среды, доступный здесь; дальнейшее освоение было признано нецелесообразным до повышения качества изделия (краткую его оценку можно найти далее по тексту).

Программист П. Приклонский разработал внешний конвертор из Ты-документов, содержащих ДРАКОН-Си-описания, в исхтексты на прогязыке Си.

Потребность в совершенствовании Ты-среды привела ещё одного разработчика – В.А. Тарасенко – к рефакторингу её приложения. Им также создан проект внешнего конвертора Ты-моделей на несколько прогязыков и общее определение приципов конверсии. Результаты доступны в этой теме.

Одновременно Тарасенко сформулировал требования как к среде, так и к стандарту техноязыка; обсуждение их с участием автора этих строк привело к выработке уточнённых требований. Результаты доступны в этой теме. Фактически это наиболее целостные требования к практически пригодной ИСП визуализации знаний. Поскольку необходима их отработка на конкретных ситуациях, в этой теме рассматриваются некоторые примеры.

Также Я.Романченко был создан автономный дракон-конвертор ДРОН для языка Активный Оберон (диалект языка Оберон – преемника Паскаля Н. Вирта). Дистрибутив доступен на сайте программы (см. здесь).

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

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

Разработчик систем управления реального времени Д.В. Барановский ищет возможности применить техноязык и шампур-метод для сквозной формализации задач РВ вплоть до гибридного программирования. Изначально в этой теме он провёл сравнительный анализ языка и дракон-сред с другими методологиями, указал на некоторые проблемы реализации и предложил решения по смешанной текстово-графической ИСП (будем называть её ДВБ-системой)3. Как язык реализации был предложен не ДРАКОН, а визуальный язык блок-схем (ВЯЗБС) почти в минимальном базисе вершин, что не позволяет говорить о полноценном решении. Первоначальной реализацией была программа АБ_ВЯЗ (доступна в упомянутой теме).

В дальнейшем был разработан новый вариант ДВБ-системы — редактор-транслятор ДАЛВЯЗ на массовые прогязыки. Фактически в основе лежит авторская методология формализации — совмещение в ИСП программирования и ограниченной спецификации задачи (называемое у Барановского РДП — от «Разработка и Документирование Программ»). ДАЛВЯЗ используется в разработке программ для задач основной деятельности Барановского (изначально - местное микроконтроллерное управление некоторыми видами сортировочного ж/д оборудования в реальном времени).

Определение ВЯЗБС и ДВБ-система развиваются; результаты и обратная связь с разработчиком доступны в этой теме.

Можно оценить различные ИСП-ДРАКОН по критериям, введённым здесь. Подобные оценки были даны в пользовательских спецификациях автора для ДВБ-системы и для Ты-среды. Учитывая, что там уже сформулированы назначения этих изделий, здесь можно ограничиться краткими выводами.

В отношении Ты-среды можно сказать, что она «избыточно сложна» для пользователя, прежде всего в силу следующего:

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

Общий вывод – при всех достоинствах выбранного подхода к реализации необходимо дальнейшее совершенствование Ты-среды прежде всего в когнитивно-эргономическом отношении (удобства работы и когнитивного качества создаваемых описаний).

В то же время ДВБ-система имеет достаточно низкий «порог вхождения» в пользование в силу следующего:

Однако ей присущи и некоторые ограничения:

Их можно рассматривать как рациональное ограничение назначения изделия. Что позволило Барановскому более эффективно развивать систему. Однако в дальнейшем имеет смысл расширять назначение до полноценного документирования.

В целом ДВБ-система, конечно, рассчитана на программиста. Фактически она задумана и до настоящего времени развивалась как утилитарное изделие, т.е. «для себя». В то же время найдены некоторые оригинальные решения, которые могут иметь применение не только в «узкопрограммистском» назначении. Достаточно подробное описание этих решений (как в документации на АБ_ВЯЗ и ДАЛВЯЗ, так и при обсуждении в упомянутых темах), очевидно, даёт квалифицированным читателям возможность усовершенствовать спецификации и разработки аналогичных изделий.

Каковы же общие рекомендации по выбору средств на сегодняшний момент? Очевидно, всё зависит от целей сочинителя.

Если цель – создать целостную формальную модель, пригодную для программной реализации, то нужно пользоваться ДВБ-системой.

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

Отметим также перспективные проекты и целесообразные направления развития ИСП-ДРАКОН.

Возможности представления алгоритмической части программ предполагается ввести в структурный редактор-компилятор, разрабатываемый по проекту PureBuilder В. Лаптевым с сотрудниками (далее РВ-систему); результаты доступны на этом форуме . Спецификацию РВ-системы независимо разрабатывает С. Прохоренко; результаты оформлены как этот веб-ресурс .

В г. Орле ведётся разработка дракон-редактора, воплощающего идеи И.А. Ермакова по совершенствованию шампур-метода. Некоторые сведения доступны в в этой теме.

Прототипные редакторы шампур-схем созданы Э. Ильченко (как расширение элеграф-редактора Draw из OpenOffice.org) и С. Митькиным (как автономное приложение). Редакторы были изначально предназначены для допрограммной визуализации алгоритмов деятельности (как т.н. «бизнес-процессов») и поддерживают только импер-часть описания. Митькин в настоящее время реализует гибридизацию с прогязыками (прежде всего с Си).

Возможности визуализации бизнес-процесов на драконоподобном импер-языке введены в популярную среду автоматизации 1С:, о чём подробнее в этой теме (при разработке языка использовались консультации В.Д. Паронджанова).

В целом развитие специализированных сред будет зависеть и от развития языковых средств формализации знаний. Подробнее авторский взгляд на этот вопрос раскрыт в п/р 5.3. Языки представления знаний определяются в Приложении 2 к основному тексту ресурса.

Тем самым реализация ТФЗ должна стать комплексной ИСП визуализации знаний; следуя Барановскому, удобно назвать её системой РДП – разработки и документирования процессов (и программ как предельно формализованной части этих процессов). ИСП без выхода на программирование (автоматическое) также будем называть РДП-средой.

В начало страницы | Оглавление | Версия для печати

Copyright © Жаринов В.Н.

1 Термин понимается в смысле работы: Поликарпова Н.И., Шалыто А.А. Автоматное программирование. - СПб.: Питер, 2010.

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

3 Это название относится к обоим вариантам — АБ_ВЯЗ и ДАЛВЯЗ — обсуждаемым далее.

Hosted by uCoz