Как стать автором
Обновить
26
Карма
0
Рейтинг
Валерий Выхованец @VVale

Разработчик, аналитик

Content Services Platform — новая реинкарнация систем электронного документооборота

Не получится ли так, что сложность монолитной информационной системы перенесена на сложность оркестровки микросервисных приложений? Мне кажется, что при любой борьбе со сложностью она просто перетекает из одной формы в другую: ведь предметная область все также сложна, как и раньше. Возможно, оптимальное решение состоит в комбинации микро и макро подхода при унификации множественного доступа к облачным базам данных и базам знаний. Может надо просто развивать последние? И все срастется…

Информационные системы с понятийными моделями. Часть вторая

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

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

Далее никаноровцы построенную исходную концептуальную модель рассматривают как объект и пытаются выполнить его «проектирование» — разработать множество производных понятий, которые могут быть использованы для описания его жизненного цикла, т.е. пытаются автоматически расширить предметную область. Подспорьем в этом служат операции декартового произведения и булеана над исходным множеством понятий, описывающих объект.

Не спорю, такой подход имеет право на существование, но реальной отдачи пока он него никакой: «Подход Никанорова развивается уже в течении трех десятилетий, около полутора десятилетий насчитывает применение аппарата графовых представлений родов структур. Вместе с тем, несмотря на многочисленные попытки экспликации и формализации политэкономических, конфликтологических, исторических, психологических, этических и других теорий, еще не произошел серьезный содержательный прорыв в этих областях знания».

Информационные системы с понятийными моделями. Часть вторая

Если быть точным, то у никаноровцев действительно есть что-то общее с нашим подходом. Как говорилось выше, последние строят традиционные концептуальные схемы, но потом выделяют на них три вида понятий: понятия-объекты, понятия-свойства и понятия-отношения (признаю, ассоциативную связь они рассматривают как понятие).

Далее, полученное множество понятий подвергается многоступенчатому синтезу родов структур по Бурбаки: находят булеан — это порождение схем всевозможных понятий-обобщений, а также декартово произведение — это порождение схем всевозможных понятий-ассоциаций.

Далее, как нам кажется, можно наполнить эти схемы еще и сущностями путем комбинаторной генерации строк для таблиц синтезированных понятий. Но все это выглядит мало разумным и вот почему.

На практике невозможно что-либо сделать с этим более чем экспоненциальным ростом числа понятий и еще большим ростом числа их сущностей.

А если выбирать для следующей ступени синтеза не все новые схемы, а только «разумные», то это эквивалентно использованию экспертов в описываемой предметной области: сами «концептуализаторы», как правило, таковыми не являются. Опять возвращаемся к «пролетариям понятийного труда», к пользователям информационных систем.

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

Информационные системы с понятийными моделями. Часть вторая

Точно подмечено. Понятийному анализу научились сразу и делаем его быстро.
Но с иконками беда… Часами ищем или рисуем то, что хотелось бы видеть в том или ином месте.

Информационные системы с понятийными моделями. Часть вторая

Очень понимаю… С этой проблемы мы и начинали. Плавно, от проекта к проекту создавали понятийные структуры, вводили данные и реализовывали недостающие функции у всех этих CRM/ERP.

В итоге получили очередную надстройку, но такую, которая удобна нам и которую постоянно дорабатываем, развиваем, расширяем, модернизируем.

Вот и получается, что пока есть смысл продавать услугу по такой надстройке и настройке. Что будет в итоге — можно показать на нашем примере.

А в другом месте обязательно будет все по другому. У нас есть опыт установки LANCAD в другой строительной компании. Развилка наступила через месяц. Теперь команда работает на два фронта.

Почему нужна команда? К первой части статьи есть обсуждение этого вопроса.

Информационные системы с понятийными моделями. Часть вторая

В сметном деле иногда встречаются «странные» единицы измерения. Например, для этого случая все меряется в 1000 шт. Тогда 0,02 по количеству — это 20 стоек.

Информационные системы с понятийными моделями. Часть вторая

Пока непонятно, что продавать. Основная ценность не в программном коде: он мизерный. Основная ценность — это результаты понятийного анализа конкретной предметной области и знания, вводимые пользователями. Есть, правда, немного программного кода для решения прикладных задач.

Пока нам кажется, что надо продавать сервис методологического и методического сопровождения. Без него в наше изменчивое время все может остановится в развитии, стать быстро неадекватным.

Информационные системы с понятийными моделями. Часть вторая

Нет, с товарищами не общались. Но знаем. Что можно сказать про их концептуальное моделирование. Оно основано на трех отношениях между понятиями: отношении «род-вид», отношении «часть-целое» и ассоциативной связи, «которая помогает определить природу взаимоотношений между двумя понятиями».

У нас иначе, без ассоциации как связи между понятиями, а с ассоциацией как понятием.

Если я что-то путаю, дайте ссылку на их результаты, которые «перешагнули за рамки концептуального моделирования». Пока мне кажется, что они в этих рамках.

Информационные системы с понятийными моделями. Часть вторая

Да, разработка экспериментальная. Клиентское приложение выполняет только функцию браузера, писалось на VB6, VB.NET, теперь на C#. Обмен данными осуществляется по двум интерфейсам: ITree и IList. Интерфейс INode используется для отображения дерева, а интерфейс IList — для отображения списка.

Информационные системы с понятийными моделями. Часть вторая

Да, наших строителей это тоже зацепило. Но это следствие понятийного подхода, при других методологиях все не так просто и быстро.

Информационные системы с понятийными моделями. Часть первая

Да, редкие алгоритмы работают более чем в одном аспекте. Как правило, в каждом аспекте свои и алгоритмы. То есть имеем n слабосвязанных информационных систем. Так и поддерживаем все n проявлений объективной реальности в сознании пользователей информационной системы.

Информационные системы с понятийными моделями. Часть вторая

В настоящее время мы не рекламируем свой продукт, а делимся опытом построения информационной системы с понятийным моделированием. Скорее, это попытка понять, насколько интересна будет такая система другим. Ваш голос учтен.

Информационные системы с понятийными моделями. Часть первая

Согласен с imbasoft, что подача материала далека от совершенства, примеры приведены не во всех местах, где это можно было сделать. При написании статьи, как всегда, пришлось сокращать объем. Но имеем то, что имеем.

Согласен также со скептицизмом imbasoft: кто и как формирует «понятийный слой» — вопрос из ряда «зри в корень».

Почему понятийные модели не захватили мир (вместо «понятийные» подставляй «концептуальные», «семантический», «логические», «нейронные» и т.д.)? Потому что методологию понятийного (концептуального, семантического, логического, нейронного и т.д.) анализа надо изучать, осмысливать, осваивать, практиковать, улучшать и т.д.

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

Про все это мы знаем, так как проверено на практике. Но надо как-то жить дальше.

Пожалуй, первое, что нам удалось сделать — это ввести аспекты для «решения конфликтов восприятия» и «вопросов квалификации». Если кто-то отлично справляется со своим делом и при этом ему надо обязательно считать, что земля плоская, пусть будет так, но не для всех, а только в его аспекте. Тут, правда, возникает закономерный вопрос, который оправдывает предлагаемый подход: как узнать, что у других или у нас самих нет такой «плоской» земли?

Второе, чтобы уберечь излишне впечатлительных пользователей от сложности и многообразия окружающего их мира, в том числе и от «плоской земли» других пользователей, в информационной системе действует развитая система прав и запретов, позволяющая ограничить обозреваемые пользователями понятия и их атрибуты.

Да, конечно, без серьезного методологического и методического ресурса не обойтись. Официально считается, что замеченные Вами недостатки являются недостатками информационных систем с понятийным моделированием.

Информационные системы с понятийными моделями. Часть первая

Аксиоматику сделать секретом фирмы… Это круто! Куда мы идем? То ли еще будет!

Нет, отображения и аксиоматика пока не секрет.

К слову, под отображением понимается правило, по которому элементу одного множества ставится в соответствие элемент (или элементы) другого (или того же) множества.
В то время как отношение – это подмножество декартова произведения множеств.

Отображений два: обобщение и ассоциация. Аксиоматику исчисления понятий опишу словами, без формул.

Понятие N задается именем и набором атрибутов (других понятий), на которых оно определено. Записывается так N(N1, N2, ..., Nn), где N — имя понятия, Ni — атрибуты понятия, i=1, 2,… n, набор которых называется схемой. Набор — это множество с повторением элементов.

Аксиома 1. Существует пустое понятие E(), не имеющее атрибутов.
Аксиома 2. Существует конечное число простых понятия-признаков P1(P1), P2(P2), ..., Pn(Pn), атрибуты которых — сами эти понятия.

Правило вывода 1. Для любых понятий N1, N2, ..., Nm может быть получено новое понятие-обобщение Ng, определенное на размеченном пересечении схем понятий N1, N2, ..., Nm.
Правило вывода 2. Для любых понятий N1, N2, ..., Nm может быть получено новое понятие-ассоциация Na, определенная на размеченном объединения схем понятий N1, N2, ..., Nm.

Здесь операции над схемами (наборами атрибутов) выполняются с повторением элементов. Поэтому они названы размеченными.

Теорема 1. Любая понятийная структура содержит не более чем одно обобщение для каждого включенного в нее понятия.
Теорема 2. В любой понятийной структуре у каждого понятия-ассоциации пересечение схем различно и не пусто.
Теорема 3. Любая понятийная структура, выведенная в исчислении понятий, не имеет логических циклов.

Тезис, связывающий исчисление понятий с предметными областями, для описания которых оно предназначено, таков: для любой предметной области существует понятийная структура.

Самое важное в тезисе то, что для описания любой предметной области достаточно конечного числа понятий-признаков. А тезис потому, что не доказуемо и не опровергаемо.

Информационные системы с понятийными моделями. Часть первая

Неожиданно… Автоматического вывода нет.

Попробую развить заданный вопрос. Автоматический вывод я бы разделил на вывод новых понятий и вывод новых сущностей.

Вывод новых сущностей возможен путем добавления строк в физические таблицы с заполненными как-то полями. Осталось решить вопрос: как заполнять поля, что бы это было разумно?

Вывод новых понятий возможен тремя способами:
— путем создания новых сущностей понятия Понятие и создания сущностей у созданного понятия (см. выше вывод новых сущностей);
— автоматическая генерация обобщений путем поиска общих атрибутов у существующих понятий;
— с помощью теории формального анализа понятий через ограничение числа атрибутов у существующих понятий с выделением уникальных строк в получающихся при этом таблицах (запрос SELECT DISTINCT с усеченным набором полей).

При выводе новых понятий вопрос остался тот-же: как понять, имеет ли смысл созданное понятие, или нет? Наверное, как в первом, так и во втором случае лучше всего спросить у пользователя.

Информационные системы с понятийными моделями. Часть первая

Хороший вопрос. Для концептуального моделирования используются такие языки как OWL, CL, CycL и др., различающиеся формальным аппаратом описания сущностей, концептов, связей и правил. Все перечисленные языки обладают одним существенным недостатком – высокой вычислительной сложностью вывода на знаниях, которые они описывают.

Высокая вычислительная сложность языка дискрипционной логики (RDF/OWL) связана с большим числом связей между концептами, вводимыми с помощью множества ролей (одноместных предикатов) для ограничения объемов концептов, а также с аксиомами вложенности и эквивалентности концептов и ролей.

В понятийной структуре, в отличие от других известных формальных теорий, таких как семантическая и ассоциативная сеть, исчисление предикатов, модальная и дискрипционная логика, концептуальный анализ, теория концептуальной зависимости, формальный анализ понятий, концептуальные графы, ER-модель и др., ассоциация является обычным понятием, а не именованным видом связи, задающим в модели некоторую роль или отношение.

Язык понятийной модели, как и язык дескрипционной логики (RDF/OWL), является разрешимым, так как эквивалентен одноместному исчислению предикатов. Однако, в отличие от дискрипционной логики, язык понятийной модели не содержит средств описания отношений и ролей, так как все необходимые для вывода правила непосредственно содержатся в понятийной структуре.

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

Информационные системы с понятийными моделями. Часть первая

Работа пользователя осуществляется через оконный интерфейс приложения. Копии экрана для операций добавления, изменения и удаления сущностей понятий показаны в конце первой части статьи. Имеется также возможность задавать поисковые запросы, но об этом говорится во второй части. Конечно, есть и программный интерфейс.

Информационные системы с понятийными моделями. Часть первая

Последнее связано с тем, что понятия определяются не бесконтекстно, а в некотором контексте, который может изменяться, дополняться, расширяться. Трудно объяснить конкретному пользователю, что описываемое им понятие может быть разным в разных ситуациях. Поэтому контекст изначально не определен, так как описание не завершено и завершено быть не может. В этом случае удобно использовать слово «аспект» для обозначения точки зрения пользователя.

Информационные системы с понятийными моделями. Часть первая

Нам показалось удобным интерперпретировать контекст как некоторое «окружение», которое позволяет перейти от общего смысла понятия к частному. Для именования такого окружения было выбрано слово «аспект».
Иными словами, «контекст» – это содержание «окружения», а аспект — его имя: используются в контексте, а рассматриваются в аспекте.

Информация

В рейтинге
5,815-й
Откуда
Москва, Москва и Московская обл., Россия
Работает в
Дата рождения
Зарегистрирован
Активность