Lll
Kim Artamonov
Feb 10, 2025
]
Нечто общее, не имеющее имени.
В информационных технологиях (IT) сформировался ряд практик, которые, на первый взгляд, выглядят очень разрозненно: разработка узкоспециализированных языков (DSL), создание модельных представлений в духе UML или SysML, построение бизнес-фреймворков, внедрение системного подхода в управлении и т. п.
Давайте начнём с наблюдения за явлениями, которые могут показаться обычным для тех, кто работает в области информационных технологий. В IT ежедневно используются термины и инструменты, которые, на первый взгляд, кажутся простыми утилитарными средствами.
Структурирование данных и проектирование баз данных. Без чёткой модели данных (с понятными сущностями, атрибутами и связями) нельзя эффективно писать программы.
Создание специализированных языков (DSL) для описания конкретных предметных областей: например, язык для финансовых расчётов или язык для моделирования бизнес-процессов. В таких языках мы должны точно согласовать смысл терминов внутри узкой области, чтобы сократить неоднозначность.
Онтологический инжиниринг и Semantic Web, где концепции, их определения и отношения между ними пытались формализовать так, чтобы разные машины (и люди) могли их одинаково интерпретировать.
В каждом из этих случаев мы видим отдельные инструменты, понятия, методы. Однако если присмотреться, то возникает ощущение, что все они так или иначе отсылают к одному и тому же «уровню абстракции» .
Все эти разрозненные практики объединяет общая идея, развиваемая с конца XX века в информационных технологиях - для успешной передачи знаний компьютеру нужно согласовывать («align») понятийные структуры людей, машин и профессиональных областей.
Их нужно формализовать, типизировать, структурировать - в общем “привести в порядок”.
В 90-е–2000-е годы в IT-сообществе бурно развивались концепции, связанные с прослеживаемостью требований , унификацией терминологии и формальным моделированием .
Во всех упомянутых случаях профессионалы IT сферы «ссылаются» к специфическому «абстрактному пространству» , на котором мы рассматриваем концепции, их связи, логику переходов и правила сопоставления с реальным миром.
Чем глубже мы погружаемся в применение данных практик, тем яснее проявляется общий знаменатель: речь о более глубоком понимании мышления и информации , которые регулируют процесс представления и согласования смыслов:
- DSL (Domain-Specific Languages) требуют вычленения ключевых объектов и их свойств в конкретной области (медицина, финансы, образование), причём само действие «выделить понятия и их взаимосвязи» оказывается не только техническим, но и концептуальным, «смысловым».
- Моделирование (UML, метамодели, диаграммы требований) предполагает, что мы переводим реальную задачу или систему в некоторую абстрактную схему. Эти схемы часто используются как «язык общения» между разработчиками, аналитиками и заказчиками. Тот уровень теоретического понимания моделей и метамоделей который мы развили, шагнул далеко за потребности описания компьютерных архитектур.
- Системное мышление (MBSE, архитектурные фреймворки) опирается на идею разделения сложных проектов на уровни абстракции и согласования (alignment) между требованиями, дизайном и реализацией.
Но где фактически «живут» эти уровни описаний?
Как назвать эту концептуальную деятельность и как эти практики удерживать в едином теоретическом поле ?
Интересно, что этот «абстрактный уровень» уже давно шагнул за границы технических наук.
- Бизнес заимствует модельные приёмы: мы видим повсеместное использование схем, канвасов, типологий и т. д.
- Педагогика перенимает идею языков описания заданий и визуальных карт знаний.
- Менеджмент использует системные методы проектирования и проработки процессов, тоже ссылаясь на «переходы между уровнями» и «выделение сущностей».
- Искусственный интеллект (особенно в части reasoning, настройки промтов, построения knowledge graphs) явно апеллирует к формальному описанию связей и понятий – всё того же «безымянного» пространства.
Если проследить развитие этого “абстрактного уровня” от простого моделирования классов до сложных ИИ-контекстов сегодняшнего дня, то становится видно - чем глубже мы уходим в попытки сделать компьютерные модели «умными», тем более мы упираемся в человеческие, гуманитарные вопросы:
– Как мы действительно понимаем смысл термина?
– Как согласуем расхождения в личном или культурном опыте разных пользователей?
– Какие внутренние цепочки рассуждений обеспечивает правильное понимание концептов?
Получается своего рода парадокс: это «что-то» явно стало незаменимой частью всех процессов работы с информацией, все ним пользуются, причём не только внутри IT.
Но его природа и статус остаются неоднозначными. Вроде бы оно «растёт» из компьютерной инженерии, однако по факту оно превращается в систему более универсальных представлений, применимых в любой области, где нужно чётко описать сущности, их связь и логику преобразований.
Потребность в абстрактности
Почему же до сих пор не сформировалась отдельная дисциплина,
чётко описывающая это «что-то»?
Можно сказать, что в IT исторически фокус был сугубо практический : нужен работающий код, нужна модель, которая удовлетворит требования проекта. Сильное стремление к быстрому результату мешало взглянуть на явление в целом. Да и в целом у Computer Science нет никаких причин или возможностей погружаться в этот вопрос с гуманитарной стороны.
Это как если бы мы также практически в своё время подходили к математике - используя её чтобы считать деньги и товары, но не выводили её в пространство отдельных абстрактных сущностей, не давая им названия и не стараясь раскрыть все последствия. В итоге с этим “абстрактным уровнем согласования смыслов в IT” сегодня мы наблюдаем примерно похожую картину.
У нас есть «геометрия без названия » – все уже понимают, что двумерное пространство и фигуры в нём (параллельные, перпендикулярные, углы…) – это единая тема, но формально никто её как отдельную науку не провозгласил.
Аналогично, мы имеем набор методик и инструментов (DSL, схемы, уровни абстракции), которые доказали эффективность, но не получили цельного теоретического обоснования.
Целостная картина за пределами IT
Но, как только сфера IT пересекается с новыми областями вроде управления, педагогики или ИИ, возникает потребность понять и описать этот абстрактный уровень куда более фундаментально, чем это делается сейчас.
- Развитие технологий ИИ : reasoning-модули, промт-инжиниринг, объяснимость алгоритмов – всё это упирается в то, как мы представляем смыслы и транслируем их в форму, понятную модели.
- Кросс-дисциплинарное взаимодействие : бизнес, госсектор, наука всё чаще требуют адаптировать IT-подходы к своей специфике. Если мы не раскроем глубинные механизмы этой «абстрактной области» - то возникнут проблемы которые мы уже видим: супер-логичность систем и полное непонимание как эту логику перенести в пользователей и социальные структуры и отношения.
- Методологические вызовы : системная инженерия уже давно страдает от отсутствия единых стандартов описания концепций, а попытки стандартизировать UML или SysML лишь частично решают проблему “технического” аспекта.
В результате становится очевидно: мы имеем дело с особой мета-областью , назовём её условно «абстрактным пространством концепций и их согласования », которая опирается на логику языка, мышления, иерархий и преобразований. И хотя родилась она внутри Computer Science, её природа и применение выходит за рамки сугубо технических нужд.