Метаданные языков визуализации, специфицирования, конструирования и документирования (языки ВСКД) на примере UML, SysML (Илья Захаров, OSEDUCONF-2016) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) |
StasFomin (обсуждение | вклад) |
||
== Примечания и отзывы == <!-- <blockquote>[©]</blockquote> --> <references/> [[Category:OSEDUCONF-2016]] [[Категория:Бизнес-анализ]] <!-- topub --> {{stats|disqus_comments=0|refresh_time=2018-01-10T20:48:48.9942503-01T20:14:05.525317|vimeo_comments=0|vimeo_plays=15|youtube_comments=0|youtube_plays=17}} |
Версия 17:14, 1 марта 2018
Содержание
Аннотация
- Докладчик
- Илья Захаров™
Создатели UML в первых строках Usere Guide[1] называют его языком визуализации, специфицирования, конструирования и документирования. UML — на сегодняшний день самый распространенный из таких языков, кратко — языков ВСКД. Их основная особенность — непосредственная взаимосвязь с современными естествознанием и философией.
Отсюда возникают некоторые проблемы с изучением и использованием языков ВСКД, сначала привычно трактуемых с точки зрения вопросов программирования и разработки информационных систем, при том, что вся грамматика UML-2 составляет всего лишь полсотни обозначений.
Для понимания и использования языков ВСКД необходимо назвать и рассмотреть их метаданные: прежде всего — онтологический смысл понятия «объект» в современной теории познания, а также категориальные сетки и существующие в их рамках наборы понятий, посредством которых можно «понимать» объекты, проектировать и анализировать их, описывать их характеристики. Кроме того, у любой разработки объективно существуют «предельные основания» — исходные посылки, цели, которые не могут быть рационально обоснованы, т. е. предмет веры. В качестве такой «первопричины» разработки UML сами правообладатели называют идею MDA.
Доклад посвящен, прежде всего, вербализации вышеназванных вопросов — действительно, в большинстве текстов по UML они даже не упоминаются. Сделаны попытки начать обсуждение этих важнейших вопросов.
Видео
Слайды
Тезисы
Начать изложение хотелось бы с интересного вывода из книги «Теоретическое знание»[2], который можно считать обоснованием предлагаемых в докладе сопоставлений: «… фундаментальные теории не являются продуктом индуктивного обобщения опыта, а создаются вначале за счет трансляции концептуальных средств, заимствованных из других областей теоретического знания, и только затем обосновываются опытом…».
Из истории языков ВСКД известно, следующее: «когда все согласились, что модульные компьютерные программы лучше монолитных, начался спор о том, как строить модули … [остановились на концепции «объекта»] … сделать так, чтобы каждый модуль соответствовал одной и только одной вещи в реальном мире»[3].
Понятие «объект» в онтологии научного метода познания
Для раскрытия онтологического смысла понятия «объект» обратимся к общепризнанным работам[3] по теории познания. Вот несколько тезисов в сокращенном изложении.
- «… если исчезнут инвариантные признаки науки, отличающие ее от других форм познания (искусства, обыденного познания, философии, религиозного постижения мира), то это будет означать исчезновение науки.»
- «Наука ставит своей конечной целью предвидеть процесс преобразования предметов практической деятельности (объект в исходном состоянии) в соответствующие продукты (объект в конечном состоянии). Это преобразование всегда определено сущностными связями, законами изменения и развития объектов… »
- «Поскольку в деятельности могут преобразовываться самые различные объекты — предметы природы, человек (и состояния его сознания), подсистемы общества, знаковые объекты, функционирующие в качестве феноменов культуры и т.д., — постольку все они могут стать предметами научного исследования.
Ориентация науки на изучение объектов, которые могут быть включены в деятельность (либо актуально, либо потенциально как возможные объекты ее будущего преобразования), и их исследование как подчиняющихся объективным законам функционирования и развития составляет первую главную особенность научного познания.
Эта особенность отличает его от других форм познавательной деятельности человека.»
«Наука в человеческой деятельности выделяет только ее предметную структуру и все рассматривает сквозь призму этой структуры. Как царь Мидас из известной древней легенды — к чему бы он ни прикасался, все обращалось в золото, — так и наука, к чему бы она ни прикоснулась, — все для нее предмет, который живет, функционирует и развивается по объективным законам.»
Таким образом, концептуальная ориентация на понятие «объект» в языках ВСКД жёстко и однозначно относит их к инструментам именно научной деятельности, которая в свою очередь существует в следующем пространстве форм познавательной деятельности:
- наука;
- обыденное познание;
- философия;
- религия (если говорить о методе, то лучше было бы сказать — теология, ещё точнее — апофатическая теология, так как всё остальное в основном относится к сфере религиозной философии);
- искусство.
Фундаментальным свойством научного метода является представление обо всём как об «объекте», включая «объективизацию» других форм познания, что можно интерпретировать как универсальный метод их подмены, которая в некоторых случаях равносильна их уничтожению.
Так как для науки всё есть объект, становится достаточно ясной весьма невнятно излагаемая в книгах по языку UML тема «классификаторов» и неожиданные интерпретации почти любой конструкции языка как объекта.
Категориальные сетки и пространства понятий, характеризующих объекты различной сложности
Грамматики языков ВСКД представляют собой наборы взаимосвязанных понятий, посредством которых и представляется возможность осуществлять визуализацию, специфицирование, конструирование и документирование объектов.
Для понимания этих грамматик целесообразно сравнить их с современными представлениями об объектах в естествознании.
В западной литературе, традиционно восходящей к работам Людвига фон Берталанфи и Ильи Пригожина, важнейшей категорией, характеризующей объект, является «сложность», что можно интерпретировать как одномерную категориальную сетку, в рамках которой в хронологическом порядке отражается возникновение новых понятий, раскрывающих смысл темы «сложности».
В статье Ратникова В.С. «Обновление методологической культуры в процессе освоения наукой феномена сложности», опубликованной в рамках сборника статей[4], можно проследить хронологию нарастания инструментария работы науки с категорией «сложность».
Начиная с классической науки, её можно представить в виде такой последовательности:
- I этап
- мир прост в смысле его фундаментального устройства, сложность связана с недостатком информации
- II этап
- применение средних значений характеристик состояния (Клаузиус)
- применение вероятностных значений распределения величин (Максвелл)
- статистические закономерности на фоне индивидуального движения отдельных частиц, эргодичность (Больцман)
- вероятностные характеристики единичного микрообъекта (квантовая механика)
- системно-структурный подход, т. е. рассмотрение числа элементов, их связей, в т.ч. обратных связей, степени и разнообразия взаимодействия (кибернетика)
- стохастичекие системы
- концепция информации и управления
- соотношение сложности, организованности и разнообразия, уровни организации системы
- понятие иерархической системы
- модели массовой и индивидуальной случайности, внутренней сложности (Бернштейн)
- живые системы, эволюционирующие системы
- III этап
- отказ от приоритета простоты, как методологического принципа научного познания
- простые объекты со сложным поведением, т. е. «сложность простоты»
- нелинейная динамика
- самоорганизация как свойство сложных систем
- эволюция как направление самоорганизации
- неустойчивость и неравновесность, соотношение спонтанности и детерминистичности, роль флуктуаций
- взаимодополнение жёстко-детерминистских и вероятностно-статистических моделей
- взаимопереходы порядка и хаоса, фрактальные аттракторы, модели с наложением внутренней сложности на несколько ключевых параметров
- существование пределов предсказуемости поведения динамических систем.
Категориальную сетку, предложенную В. С. Стёпиным[3], и распределение в ней понятий, характеризующих сложный объект, можно представить в форме таблицы.
Универсальные паттерны для моделирования любых объектов
Анализ категориальных сеток и систем понятий, характеризующих объекты различной сложности, указывает на существование универсальных паттернов, парадигмальных моделей.
Этот факт абсолютно подтверждается историей естествознания и является ценным прикладным результатом, так как на практике оказывается невозможным выйти за пределы существующих паттернов никому из учёных соответствующей эпохи.
Для 1-го этапа (см. Ратников) и 1-го столбца таблицы (см. Стёпин) таким «паттерном» является устройство механических часов.
Этот факт обозначен в большом количестве самых разных текстов и широко обсуждается.
Для условно 2-го этапа (см. Ратников) и 2-го столбца таблицы (см. Стёпин) «паттерном» является самоорганизующийся автомат с гомеостазом: блок управления и блок информации с системными параметрами; обратные связи, стохастические процессы в подсистемах.
Этот факт явно был назван В.С. Стёпиным, его широкое обсуждение не выглядит заметным.
Для условно 3-го этапа (см. Ратников) и 3-го столбца таблицы (см. Стёпин) «паттерном» является предложенная В.С. Стёпиным[5] схема возникновения новых уровней саморегуляции у открытых систем с саморазвитием.
- 1. Исходная саморегуляция.
- 2. Новый тип саморегуляции, основанный на трансформации предшествующих уровней иерархии системы.
- 3. Потенциально возможный уровень организации при продолжении развития системы как возможность нового типа саморегуляции.
Это перспективная парадигмальная модель, работу с которой ещё предстоит освоить.
Вместе с тем, в настоящее время в иностранных источниках, особенно метамоделях, разработанных на UNL/SysML часто встречается «паттерн» типа «ядро-оболочка».
Вот пример из документа «Common Warehouse Metamodel (CWM) Specification».
Описание ещё одной парадигмальной модели можно увидеть в вышеназванной статье Ратникова, хотя явно она не названа.
Речь идёт о модели «наложения» внутренней сложности на несколько ключевых параметров.
Такой «паттерн» можно представить диаграммой компонентов в UML, когда «сложность» подразумевается внутри небольшого количества «черных» ящиков, а сами компоненты — «чёрные ящики» вместе с их связями и портами образуют простую обозримую понятную схему.
Этот «паттерн» можно было бы назвать, например, «внутренняя сложность».
Итого в распоряжении современных ученых есть пять парадигмальных моделей.
Их наличие и содержание даёт обоснованный ответ на вопрос, часто обсуждаемый в книгах по UML: в какой последовательности надо составлять диаграммы.
Предельные основания разработки UML/SysML
Воспользуемся цитатами из книги[6] авторов, близких к первоисточникам.
- «MDA [«Архитектура, управляемая моделью»] — не процесс разработки. Это не спецификация. Это не реализация. Это не комплекс мер по согласованию. MDA не имеет эталонной реализации».
- «Инструменты MDA преобразуют «чистые» бизнес-модели в полноценные, развёртываемые, исполняемые приложениями с минимумом решений технологического плана.
- «Модификация «чистой» бизнес-модели, заложенной в основу приложения, требует только обновлений в зависимых технологических областях, поэтому приложение удаётся заново сгенерировать за несколько минут».
- «Хотя инструментарий MDA в конечном итоге надеется заместить все языки программирования, в своём текущем состоянии он не обладает достаточной изощрённостью… »
- «Цель MDA просто формулируются, но до её полноценной реализации ещё далеко».
То есть MDA направлено в идеале на создание универсальных объектов — «кнопок», нажатие на которые приводит, например, к распечатке на 3D-принтере нужной вещи или изменению порядка вещей.
Мне кажется, что предыдущие пятьсот лет эта концепция называлась…
Выводы
- Выявление и изучение метаданных языков ВСКД способствует их изучению, пониманию и использованию.
- Без них невозможно понимать перспективы и пути дальнейшего развития как самих языком ВСКД, так и методов, с ними связанных.
- Кроме того, изучение метаданных позволяет получить обоснованные ответы на «трудные» вопросы, слабо освещенные в литературе по языкам ВСКД.
Примечания и отзывы
- ↑ Grady Booch, James Rumbaugh, Ivar Jacobson, Введение в UML от созда- телей языка. — М.: ДМК Пресс, 2012. — 494с., ISBN 978-5-94074-644-7
- ↑ Степин В. С., Теоретическое знание. — М.:Прогресс-Традиция, 2000. — 744с., ISBN 5-89826-053-6
- ↑ Edward Yourdon, Carl Argila, Структурные модели в объектно ориентированном анализе и проектировании. — М.:ЛОРИ, 1999. — 268с., ISBN 5-85582-057-2
- ↑ Лисеев И. К., Садовский В. Н., коллектив авторов, Системный подход в современной науке. — М.: Прогресс-Традиция, 2004. — 563с., ISBN 5-89826-146-Х
- ↑ Киященко Л. П., Степин В. С., коллектив авторов, Постнеклассика. Философия, наука, культура. — СПб.: Мiръ, 2009. — 672с., ISBN 978-5-98846-037-4
- ↑ Dan Pilone, Neil Pitman, UML 2 для программистов. — СПб.: Питер, 2012. — 240с., ISBN 978-5-459-01684-0
Plays:32 Comments:0