Онтограмм — среда описания предметной области. Ваш специалист задаёт в браузере, какие в его мире бывают объекты, свойства и правила, — и из этого описания сразу получается работающий интерфейс: карточки, реестры, формы с проверками. Без единой строчки кода.
Не философия и не формат файла, а способ отделить знание о вашем производстве от программного кода.
Онтология — формализованное описание предметной области: какие бывают виды оборудования, заказов и бригад, какие у них свойства, как они связаны и какие значения допустимы. Онтограмма — не картинка и не документ, а машиночитаемая запись смысла: по ней работает система.
Про вашу отрасль продукт заранее не знает ничего — и в этом его сила. Специалист описывает свой мир, Онтограмм хранит описание как граф смыслов и отдаёт его движку интерфейсов и рою агентов: они торгуются в терминах именно вашей онтологии.
Следствие для бизнеса: настройка под изменившийся процесс — правка знания, а не проект по доработке. Критерии, веса, маршруты и профили лежат в описании как данные. Появился новый вид оснастки или изменилось правило — правится описание, и система следует за ним.
Описание при этом не запирается внутри платформы: оно ведётся в промышленном стандарте RDF/OWL, выгружается целиком и открывается сторонними инструментами.
Как описывается предметная область: от словаря — к данным — к состоянию в моменте.
Словарь и правила области: какие виды сущностей бывают, как они могут быть связаны, какие значения допустимы. Классы с наследованием, атрибуты с границами, связи с кратностями.
«Бывает Оборудование, бывает Участок; участок состоит из оборудования; мощность — положительное число»
Наполнение словаря конкретикой: экземпляры, их значения и связи. Заводятся вручную через карточки или массово из книги Excel: лист — класс, строка — сущность, колонка — свойство.
«Участок №3 состоит из Насос-1 и Насос-2; мощность Насос-1 — 15 кВт»
Та же модель как объект во времени — состояние на конкретный момент. Именно сцену читают вычислительные сервисы и рой агентов, когда решают, что делать дальше.
«На 14:20 Насос-1 в ремонте, участок работает на одном насосе»
Платформ для редактирования OWL/RDF много, и они зрелы. Но у них описание остаётся документом: исполнять его нечем.
В Онтограмме описание исполняется: из него получается работающий интерфейс, и это доказано на живой системе. Экран не пишется под каждую задачу — меняется описание, меняется интерфейс. В одном из живых замеров смена доменного слова оказалась правкой одной строки у владельца описания — без единого изменения в движке интерфейсов.
Доменных слов в движках нет вообще: изменение словаря области перестаёт быть задачей разработчика. Знание переиспользуется между проектами — общий справочник подключается ссылкой и остаётся один.
Описание — не просто словарь. Для роя агентов оно ещё и карта подключения: какой планировщик работает, на какой части сцены, с каким критерием и на каком горизонте. Настроить рой под новую отрасль — значит описать её объекты и правила, а не написать новый код.
Проверенный сегодня стык — между Онтограммом и движком интерфейсов. Отдача сцены в вычислительное ядро по контракту — проектная роль: она спроектирована, но ещё не реализована.
Границы значений — не подсказка оператору, а правило: значение вне них система не примет. Причина отказа приходит к тому полю, где вводили, а не общим сообщением в углу экрана. Проверки работают в самом хранилище.
У каждого класса и свойства — постоянный адрес, не зависящий от названия. Переименование не ломает ни одну ссылку.
История правок неизменяема: журнал только пополняется. Данные каждого клиента физически изолированы — отдельное хранилище на пространство клиента.
Следующий уровень исполняемости описан в спецификации и ещё не реализован. Подаём как план, а не как готовое.
Сегодня описание задаёт структуру: объекты, свойства, связи. Следующий шаг — чтобы оно задавало и поведение: какие операции с сущностью допустимы, при каких условиях и с какими последствиями.
У действия есть участники, предусловия и эффекты. Принцип: кнопка доступна, когда условия выполнены; нажатие транзакционно меняет граф — целиком либо никак. Каждое применение фиксируется в журнале: кто, с кем, когда.
Тогда описание становится исполняемым в полном смысле: не документом о предметной области, а тем, по чему предметная область работает. Типизированный рабочий процесс порождается из описания — без кода.
Половина ценности — статические проверки ещё до запуска: машина состояний без выходов, конфликтующие эффекты, ссылки в никуда. Граница честности: проверки находят классы тупиков, но не доказывают их отсутствие.
Что делает методолог заказчика — не программист, — чтобы система заговорила на языке его отрасли.
Классы с иерархией, атрибуты с типами и границами, связи с кратностями — от простой ассоциации до композиции. Онтология собирается в браузере — без файлов и без кода.
Вручную через карточки или массово из книги Excel. Книга принимается целиком либо не принимается вовсе — с точным отчётом об ошибках по координатам ячеек.
Карточки, реестры, деревья, матрицы связей, формы с проверками порождаются из описания. Конечный пользователь открывает готовый экран — с Онтограммом он не работает.