Anatoly Levenchuk (ailev) wrote,
Anatoly Levenchuk
ailev

Онтология, схема/онтология инженерного проекта и схемное/онтологичное мышление

Что такое онтология
Онтология (как и логика, как и геометрия) — это как общая наука, отвечающая на вопрос “что есть в мире” (по-русски иногда говорят “учение о бытии”, “учение о сущем”), так и частный вариант ответа на этот вопрос (как булева или темпоральная логика полагают определённые рассуждения правильными, как Евклидова или Риманова геометрия предлагают пространство устроенным на основе разного набора аксиом, так и 4D экстенсиональная онтология или онтология виртуальности С.Дацюка предполагают мир устроенный и описываемый по-разному). Сама онтология как определение того, что есть в мире, должна быть как-то записана, выражена в какой-то терминологии, в этом виде она называется “онтологическое описание”. В речи часто путают “онтологическое описание” того, что есть в мире (как именно мир нарезан на объекты, в том числе такие объекты, как отношения) и саму онтологию: про описание (схему нарезки мира на объекты) говорят как про онтологию (нарезку мира на объекты), опуская слово “описание”. Разницу обычно можно понять из контекста.

Философы много веков представляли мутные описания того, что есть в мире и делали это неформально. Уже упоминавшийся Andries van Renssen заметил, что “философы прошлого недорабатывали, и нам нужно это сделать за них”. В 20 веке к онтологии проявили интерес разработчики программ искусственного интеллекта: их интересовало, как описывать мир настолько точно и понятно, чтобы даже компьютер мог понять эти описания. И они сформулировали новое определение онтологии (вернее, онтологического описания, но мы уже договорились, что разницу между ними знаем и понимаем, что имеется ввиду под словом “онтология” из контекста): “онтология — это разделяемое многими людьми формальное описание/представление понятий, отражающих объекты и отношения мира (”An ontology is a formal specification of a shared conceptualization”, Tom Gruber -- http://tomgruber.org/writing/ontology-definition-2007.htm).

Конкретная онтология (не как дисциплина в целом) — это один вариант ответа на вопрос “что есть в мире?”. Каковы (и есть ли они вообще в мире) объекты, процессы, отношения, вещи, поля? Есть ли экскаваторы, торсионные поля, Гарри Поттер, философский камень, вещи, Сатана и боги греческого пантеона, биржевая котировка, благовоспитанность, справедливость, и даже философия и сама онтология? Есть ли X=4, E=mc2, гамильтониан и лагранжиан, метод конечных элементов, бит и байт, модуль упругости и его разные типы? Разные онтологии дают разные ответы на эти вопросы — а онтология как общая дисциплина изучает разные варианты этих ответов.

Чем отличается семантика от онтологии? Семантика — это про то, как мы связываем знаки/символы с означаемым. Символ “$” связан с денежной валютой “американский доллар”. Онтология — это ответ на вопрос, что такое (в мире) в мире американские доллары (а не что означает в тексте символ “$” — это вопрос про семантику).

Упражнение: попробуйте дать ответ на онтологический вопрос — “что такое американский доллар?”: это физический предмет, абстракция, процесс, функция товара “деньги”, валюта, фиатные деньги, единица измерения, запись на счетах? Ответьте на те же вопросы про биткойн. Чем они отличаются онтологически? [это “риторическое упражнение”: вряд ли вы дадите осмысленные ответы без знаний по теории денег и опыта онтологической работы. Но испытаваемые вами трудности ровно того же порядка и у инженеров, когда им нужно объяснить компьютеру с инженерной информационной системой “что такое номинальный диаметр трубопровода” или “что такое техническое присоединение в теплосети”. А когда они доходят до объяснения компьютеру технико-экономической модели их инженерной системы, то и вопрос про американский доллар и биткойн оказывается вполне относящимся к делу].

В жизни очень часто путают вопросы “что означает знак X” и “что такое в мире X” (”что такое насос?” — мы спрашиваем тут, что означает слово “насос” или что такое “быть насосом в реальном мире”?), но пока нам не нужно подробно с этим разбираться. Более подробно про разницу онтологии и семантики по отношению к инженерным информационным системам можно прочесть тут: http://techinvestlab.ru/ISO15926OntologAndSemantic.

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

Схема/онтология инженерного проекта
В нашей книге по системноинженерному мышлению нас будет интересовать прежде всего ответ на вопрос “что есть в инженерном проекте?” (онтология) и “как формально и компактно это записать?” (онтологическое описание). В практиках моделеориентированной системной инженерии нас будет интересовать, что мы делаем с этими объектами. Но перед ответом на вопрос, что мы с этими объектами делаем, нам вначале нужно определить — какие там объекты, научиться находить эти объекты в жизни.
Философская линия Гуссерля-Витгенштейна-Бунге гласит, что знание выражается фактами: мы ничего не можем сказать про объекты мира, обозначая/представляя их понятиями языка, но мы можем представлять отношения объектов мира, представляя их выраженными в понятиях фактами. Следуя этой линии рассуждения, мы не можем давать определения отдельным объектам сами по себе, мы можем определять их только как входящие в какую-то схему из объектов и отношений. Эта схема мышления задаёт набор фактов.

Так, для определения понятия “целевая система инженерного проекта” нужны другие понятия (”стейкхолдер”, “воплощение системы”, “работы”, “возможности” и т.д.) и ряд фактов о них в формате “объект1 в отношении X c объектом 2” (“стейкхолдеры используют воплощение системы”, стейкхолдеры используют возможности, “работы проводятся для реализации возможностей”).
Например, схема инженерного проекта предполагает набор из связанных отношениями семи понятий (concepts), каждое из которых обозначает что-то, что нас по поводу инженерного проекта интересует в реальности:

alphasengproj_rus

Эта схема предполагает, что мы ничего не можем сказать, например, о “воплощении системы” — но зато мы знаем факты “стейкхолдеры используют воплощение системы”, “команда производит воплощение системы”, “воплощение системы удовлетворяет определению системы” и т.д.

После знакомства с этой схемой затем в любом рассказе о “воплощении системы” мы, следуя этой схеме, будем искать в жизни “команду”, “стейкхолдеров”, “определение системы” и т.д. — под какими бы конкретными словами (терминами) в жизни они ни скрывались и какими бы вещами, явлениями, процессами или свойствами ни оказывались. Онтология — это то, что есть в жизни. Более того: схемы не только (и даже не столько) отражают то, что есть в жизни “на самом деле” — они предписывают то, что мы будем находить в жизни, ибо современная философия настойчиво намекает, что никакого “на самом деле” в жизни нет, а есть просто разные онтологии, описывающиеся разными онтологическими диаграммами/схемами.

Это, конечно, не значит, что на терминологию вообще не нужно обращать внимания. Так, в схеме инженерного проекта “предпринятие” — это не ошибка, и использование такого термина должно насторожить внимательного читателя. Действительно, этот термин обозначает другое, нежели традиционно понимаемое “предприятие-юрлицо, но об этом позже.

Схемное/онтологичное мышление
Конечно, всей сложности жизни одной схемой/онтологической диаграммой не отразишь, схем приходится иметь множество — и трудность мышления даже не в использовании схемы, а в том, что схем огромное количество и они тесно перевязаны друг с другом. Рельс мышления огромное количество, и между ними множество связей — и всё одно мысли передвигаться по этим рельсам быстрее, чем каждый раз изобретая устройство мира (онтологию) сообразно ситуации. Вряд ли вы по-быстрому переизобретёте системную инженерию, системноинженерное мышление, системный подход. Так что лучше их не изобретать, а приучить себя думать согласно уже хорошо зарекомендовавшим себя в деятельности коллег схемам. Так, схема инженерного проекта (она же онтология инженерной деятельности) взята из немного доработанного стандарта OMG Essence, который довольно долго обсуждался большим коллективом инженеров. Вряд ли вы придумаете такую схему быстро, легче её позаимствовать из стандарта/книги/библиотеки (такие “заимствования” разработанных в других инженерных или научных проектах знаний в инженерии называют библиотечными/library в противопоставление тем проектным знаниям, которые вырабатываются прямо по ходу инженерной работы в самом проекте, и которые потом можно будет использовать в других проектах).

Согласно схеме, в инженерном проекте есть “команда” и “возможности”, “работы” и “технология”. Поймёте ли вы, что это высказывание относится к предъявленной схеме инженерного проекта, если термины-обозначения не выделять кавычками? Сравните: “Итак, в инженерном проекте есть команда и возможности, работы и технология” — понятно ли, что фраза составлена с жёсткой опорой на схему инженерного проекта? Контрольный вопрос: что ещё есть в инженерном проекте? Если вы помните о схеме инженерного проекта, то ответы “журнал учёта посещаемости”, “испытательные стенды” и “три инновации” не пойдут в зачёт, даже если они там есть и они важны. Как на вопрос “что у нас сегодня на обед” отвечают про первое, второе и третье блюдо в целом, но не “вишня в компоте” (хотя эта вишня, безусловно, входит в обед), так и в инженерном проекте отвечают прямо по схеме инженерного проекта, прямо по диаграмме, прямо в терминах задаваемой диаграммой онтологии (того, что есть в мире — по мнению диаграммы и согласных с ней людей): ещё в инженерном проекте есть стейкхолдеры, определение системы и воплощение системы. Поменяете схему — будут другие ответы, но пока мы работаем с этой схемой — в зачёт идёт только этот ответ. Нет никакого “на самом деле”, есть только “в соответствии с выбранной нами онтологией/схемой”.

Схемное мышление и использование схемы может быть совершенно незаметно постороннему взгляду, но людям, знающим существование схемы оно хорошо заметно! И помним про терминологию: слова не так важны, важны понятия, которые обозначаются словами — и эти понятия как раз и задаются схемой, не давайте себя поймать в ловушку слов. Так, вместо “команды” может быть “рабочая группа проекта” или “интегральный коллектив разработки” — если вы мыслите по схеме то вы легко поймёте, о чём речь — и все ваши знания про “команду” будут готовы к использованию в том проекте, в который вы попали и терминологию которой вы не контролируете.

В книге мы будем использовать онтологические описания/схемы/диаграммы, отражающие основные онтологические факты об отношениях объектов в предметной области системного мышления, системной инженерии, ситуационной инженерии методов и других нужных нам дисциплин. Именно эти схемы/понятийные диаграммы/онтологические описания дают ответ на вопрос “что есть в мире, что относится к системной инженерии?”. Рассуждения в книге будут строиться на основе таких схем/понятийных диаграмм/онтологических описаний. После некоторого упражнения такие схемы формируют в мозгах “рельсы мышления”, которые позволяют думать быстро — не изобретать велосипед каждый раз, когда вам нужно о подумать, например об инженерном проекте. Если вы подумали про “воплощение системы”, то у вас немедленно в сознании должны всплыть схемы, где есть “воплощение системы” и из этих схем (например, схемы инженерного проекта) выпрыгнуть в зону повышенного внимания также и “стейкхолдеры” — ибо из схемы пришло отношение “стейкхолдеры используют воплощение системы”. Это всё должно быть натренировано буквально до бессознательного уровня, как вы когда-то в первом классе натренировали 2*2=4 и “Волга впадает в Каспийское море”.

В книге мы будем мягко относиться к формально-логической стороне дела и не будем требовать полностью формальных (понятных даже компьютерам) суждений, но следование в рассуждениях предлагаемым схемам мышления необходимо. Системноинженерное мышление и деятельность в своей основе направляются привычными заученными схемами. Схемность мышления вовсе не означает его ограниченности. Просто объекты реального мира “подводятся под понятия” никогда не по одному, а целыми группами, связанными отношениями — то есть под понятия подводятся сразу ситуации, между объектами реального мира предполагаются прописанные в схеме отношения. Если схема кажется не подходящей для ситуации, её можно как-то адаптировать — создать новый набор фактов, более адекватно описывающий мир, более адекватно отражающий устройство мира. Но перед тем как это делать, научитесь сначала пользоваться уже наработанными схемами, не изобретайте велосипедов, не будьте Кулибиным-самоучкой. Вы вряд ли гениальный онтолог, поэтому смело вставайте сначала на плечи гигантов. И когда вы научитесь мыслить и действовать в рамках уже существующих схем, вы ясней поймёте их достоинства и недостатки, сможете эти недостатки преодолеть — предложите способы системноинженерного мышления лучше, чем имеющиеся сейчас, т.е. выпустите свой международный стандарт с вашей новой схемой, новым вИдением мира, новой онтологией.

Те, кто знают схему — это и есть “семантическое сообщество”. Они знают, что “команда применяет технологии”, как бы ни называлась “команда” (бригада, компания, рабочая группа”, как бы ни произносилось “применяет” (использует, опирается на, задействует, владеет), как бы по-разному ни появлялись бы в речи “технологии” (способы работы и инструменты, методы и их поддержка, производственная среда).

Итого: системноинженерное мышление — это умение рассуждать с использованием базирующихся на системном подходе и относящихся к инженерным проектам онтологических схем. Это умение подводить объекты реального мира под понятия на схемах и вести рассуждения с использованием этих понятий независимо от используемой в том или ином речевом сообществе терминологии.
* * *
Это я продолжаю по кусочку переписывать книжку по системноинженерному мышлению, первая версия которой находится тут: http://techinvestlab.ru/files/systems_engineering_thinking/systems_engineering_thinking--TechInvestLab_2014.pdf
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 140 comments