SysMoLan Studio

Sep 24, 2018 19:19

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

Текущие языки системного моделирования (SysML, AADL, Capella для моделирования целевых систем, UML для моделирования программных систем, ArchiMate для моделирования предприятий, SyM для связи системного и мультифизического моделирования в Modelica) не дают этих возможностей. Проект SysArchi, предпринятый Русским отделением INCOSE в 2018 году показал, что системное моделирование целевых и обеспечивающих систем в рамках ArchiMate 3.0 крайне неудобно, а традиционных языках системного моделирования по факту невозможно моделировать предприятие.

Исследовательский проект .15926 TechInvestLab по созданию моделера и платформы инженерного моделирования на базе инженерной онтологии и форматов языка ISO 15926 показал неудобство работы с низкоуровневыми представлениями для концептуального моделирования и подчеркнул необходимость использования языка программирования как для описания моделей, так и для манипуляций с моделями (создание моделей, запросы к модели). Сам проект .15926 имел акцент на создание системы мэппинга (интеграции данных) инженерных моделей, полученных в составе различных систем и меньше уделял внимание на аспектах создания системных моделей инженерами. В то же время проект .15926 показал, что программное создание объектов моделирования и представление моделей систем в текстовом и псевдографическом виде очень и очень перспективно, графические же представления "визуального моделирования" ограничены в их использовании. Это положение примата текстового представления для манипулирования большими и подробными моделями было подробно обосновано в книге А.Левенчука "Визуальное мышление. Доклад о том, почему им нельзя обольщаться". Проект по моделеориентированному концептуальному проектированию с использованием визуальных представлений на ArchiMate и манипулированием этими представлениями из языка R показал перспективность подхода использования языка программирования для работы с архитектурными системными моделями так же, как .15926 показал это для моделей интеграции инженерных данных (проект описан в книге В.Мизгулина "Системный инженер. Как начать карьеру в новом технологическом укладе").

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

В 2018 году эта инициатива получила развитие: было предложено реализовать SysMoLan как встроенный предметно-ориентированный язык (DSL) в рамках языка технических вычислений Julia. Этот же выбор сделали авторы языка инженерного моделирования Modelica, создавшие DSL Modia в Julia. Выбор Julia как хост-языка для языка системного моделирования помогает решить множество задач, плохо решаемых при других архитектурных решениях: проблемы расширения системного языка, взаимодействие различных видов инженерных моделей и моделей предприятия, наличие языка запросов к создаваемой модели, возможность оптимизации моделей (дифференцируемое программирование).

Ещё одно направление предварительное направление исследовательских работ касалось сред моделирования, которые развивались в некоторое подобие PLM-системы, в которых использовался датацентрический "прожекторный" подход с хранением всех данных (программ, моделей, параметров моделей, "скриптов" отдельных расчётов) с учётом управления конфигурацией и изменениями. Появилось множество примеров подобных систем управления конфигурацией и изменениями, интегрированных с различными вариантами моделеров (прежде всего речь идёт о связке CAD+разнообразные инженерные моделиры+PLM), аналогичные системы появлялись и в области моделирования архитектуры предприятия. В программировании за подобными системами закрепилось наименование "студии".

Предлагается создать SysMoLan Studio, представлящую из себя моделер и платформу системного моделирования для целевых и обеспечивающих систем. Моделер этой системы "из коробки" должен поддерживать ведение системных холархий (breakdown structures: system, product, work, etc. -- в соответствии со стандартом IEC81346) и описания входящих в них систем, в то же время предоставляя возможность для верхнеуровневого (архитектурного) описания систем и подсистем, входящих в эти холархии в соответствии со стандартом ISO42010. Первоначальный акцент в моделировании будет на создание структурных моделей целевых и обеспечивающих систем, а не на задачи мэппинга. Проще всего думать о SysMoLan Studio как об "Archi для системного языка", но в отличие от Archi там будет:
-- высокоуровневый язык системного моделирования SysMoLan, в котором удобно моделировать архитектуры и потребности/требования как целевых систем, так и обеспечивающих систем
-- параллельное представление на текстовом DSL-в-Julia и псевдографических отображениях (двустороннее "связывание данных", как в модели MVVC).
-- консоль работы с моделью с полноценным языком Julia для аналитических приложений, интеграции данных инженерных моделей, расширений SysMoLan, подключения альтернативных представлений и т.д.

Первоначальное использование SysMoLan Studio предполагается в следующих проектах:
-- курсы Школы системного менеджмента ("Системная инженерия. Менеджмент продукта", "Системный менеджмент и стратегирование" прежде всего). Учебные программы по системной инженерии и инженерии предприятия других учебных заведений.
-- небольшие (более близкие к индивидуальной работе с моделями, нежели командным разработкам в больших коллективах) бизнес-проекты создания концепций продукта, корпоративного развития на стадии концептуального моделирования.
-- исследования по системному подходу и системному моделированию в инженерии, менеджменте и предпринимательстве (дифференцируемые архитектуры и т.п.).

Подробности:
-- цепочка текстов "SysMoLan" -- https://ailev.livejournal.com/1443879.html
-- проект "студии" -- https://ailev.livejournal.com/1280626.html (и там trainer studio, systems engineering studio, conceptual studio)
-- .15926 Editor and Platform -- https://github.com/TechInvestLab/dot15926
-- SysArchi -- системное моделирование в ArchiMate 3.0 -- https://ailev.livejournal.com/1444887.html
-- В.Мизгулин, "Системный инженер. Как начать карьеру в новом технологическом укладе" -- https://www.litres.ru/vyacheslav-mizgulin/sistemnyy-inzhener-kak-nachat-kareru-v-novom-tehnologicheskom-uklade/
-- А.Левенчук, "Визуальное мышление. Доклад о том, почему им нельзя обольщаться" -- https://ailev.livejournal.com/1437344.html
-- поиск-ориентированая инженерия -- https://ailev.livejournal.com/1122876.html
Previous post Next post
Up