Системное мышление 2019 Левенчук Анатолий
Итак, термин – это всегда только слово. То, что этим словом обозначается, мы обычно называем понятие, concept. Если люди в мире видят одинаковые понятия – они принадлежат к одному сообществу значений. А использование одинаковых терминов для определённых понятий означает принадлежность к одному речевому сообществу. Сообщество значений всегда разбито на речевые сообщества.
Никогда не видевшие автомобиль люди племени мумба-юмба вообще не входят в сообщество значений для понятия «автомобиль». Однако не знающие чужих языков люди не смогут договориться, если один будет требовать «car», а второй – переспрашивать про «автомобиль». Но даже инженер по холодильным установкам может на секунду задуматься, когда таксист спросит его «Машина нужна?» Вспомним, что во времена СССР компьютер назывался ЭВМ (электронно-вычислительная машина), а теперь уже «компьютер». Значение не поменялось, поменялась речь – то есть поменялся термин, слово-обозначение. И речь-слова меняется много быстрей, чем означаемые ими предметы-значения: слово «тачка» уже выходит из моды для значения «автомобиль» как «недостаточно сленговое» в определённых кругах и постепенно заменяется там словом «тачило».
Профессиональные сообщества часто являются и речевыми сообществами, однако терминология может существенно отличаться не только для разных профессий, но и для разных подпрофессий внутри одной профессии. То, что называется «программным средством» для системных аналитиков, работающих по ГОСТам, будет «приложением» для продавцов иностранного софта, или «софтиной» для разработчиков.
Если невозможность договориться о терминах становится реальной проблемой, мешающей реализации проекта – к её решению есть разные подходы:
• Терминологический фашизм, когда только один термин объявляется правильным, а все остальные – неправильными (сравните с «Grammar nazi»33). У этого подхода есть много вариантов – безусловно требовать единственности используемого термина (отсутствия синонимов для термина), требовать ещё и соответствия принятым стандартам (определённым ГОСТам, например, а не учебникам или другим ГОСТам), требовать использования отечественного корня в слове («мокроступы» вместо «галоши»), настаивать на соблюдении традиций («калоши», но никак не «галоши»), игнорировать современные нормы («кофе» только мужского рода, хотя уже давно даже по словарям можно и среднего).
• Терминологический пофигизм, когда на слова вообще не обращают внимания. Можно просто определять, как в математическом тексте, в начале каждого документа, «T – ниже будет означать то-то». Никаких «заведомо правильных вариантов» или ссылок на авторитетные источники. При этом, если значение слова меняется по ходу разговора, это часто вообще не отслеживается, речь оказывается «не строга».
• Строгость значений с разрешением синонимии разных терминов, обозначающих одно понятие. При таком подходе обычно очень долго договариваются, какое именно понятие имеется в виду, а затем уже используются любые слова-термины для указания на оговорённое понятие. При этом вполне допускается использование терминов, предпочитаемых разными профессиональными-речевыми сообществами. Более того, можно и не пользоваться точными терминами, если будет понятно значение. Так, при обсуждении автомобиля вполне можно обозвать его «самобеглой тележкой», и это не будет преступлением, если адресат сообщения поймёт, о чём речь.
В нашей книге будет использоваться подход, добивающийся строгости понимания значений, при возможном использовании обозначений-синонимов. Назови хоть горшком, хоть используй пять терминов из пяти разных стандартов на трёх языках – но договорись о том, какое именно понятие/concept/значение ты имеешь в виду: собеседники должны понять не термин, а что ты под этим термином подразумеваешь.
Когда будут указываться несколько терминов-синонимов, они будут писаться через слеш: программное средство/приложение/софтина. А на то, что у каждого из этих синонимов немного разные оттенки значения, мы внимание обращать не будем.
Критика такого подхода тоже не редкость: «Как вы можете учить людей, когда одно и то же обозначаете разными словами? Вы должны выбрать один термин, и затем использовать в книге для обозначения какого-то понятия только его! Так всегда делают в учебниках!». Ответ на эту критику прост: в жизни вы имеете все шансы встретить людей, которые обозначают понятия не теми терминами, которые введены в книгах. Так что наша книга будет вас тренировать на различение понятий и терминов: обращайте внимание – вас не просто учат новым словам, не просто заставляют зубрить терминологию. Вам стараются дать знания о понятиях и их связях. Под какими бы словами-терминами эти понятия ни скрывались.
Наука традиционно порождала новые термины (обозначения для появляющихся новых понятий) двумя способами:
• Бралось обычное («бытовое») слово, и нагружалось специальным («научным») значением. «Работа» в физике – отнюдь не «работа» в бытовом значении этого слова. Это самый частый способ, но он легко приводит к путанице со словами из бытовой речи.
• Чтобы сделать речь точнее, термином делалось слово, для которого в бытовой речи не было известных значений. Для этого необычное для родного уха слово бралось из иностранного языка (чаще всего – с греческим или латинским корнем) и нагружалось специальным значением. Сегодня в русском языке прихватываемым словом может быть английское слово, а не латинское или греческое – в русском-то оно бытового значения не имеет.
У нас в книге термины выбраны (в том числе при переводе иноязычных текстов – стандартов, методик, учебников) для максимизации понятности их употребления в деятельности. При выборе терминов учитывалось: кто поймёт это слово, из какого он речевого сообщества? Как пользователь создаваемой терминологии отнесётся к чуждому для него жаргону «экспертов» из другого речевого сообщества? Это другой принцип, нежели «взять термины из близкого авторам стандарта и игнорировать все другие варианты».
Вот пример из проекта «Архимейт по-русски»34, в котором переводилась на русский язык терминология стандарта OpenGroup ArchiMate 2.0. Архитектурные диаграммы для проектов информатизации бизнеса составляются айтишниками совместно с не-айтишниками (людьми из бизнеса), ибо именно не-айтишники должны решать – что в их деятельности должно быть поддержано или изменено в ходе проекта. Окончательные решения по финансированию проектов информатизации на основании архитектурных документов принимает директор-не-айтишник. Это означает, что при переводе лучше использовать слова/термины, понятные не-айтишной части сообщества значений, а айтишники, как речевое сообщество, к этому приспособятся. Поэтому software application стало «программой» (а не «приложением»), business actor – «людьми» (а не «бизнес-агентами» или «акторами», которых по незнанию можно и с программой перепутать). Профессиональные айтишники сначала возмущаются подобным «терминологическим произволом» (ибо это термины не их речевого сообщества), но после получения опыта обсуждений с менеджерами и клиентами с использованием «депрофессионализированной» терминологии говорят: «спасибо, такой перевод нам помог договориться».
Примерно так же «неайтишно» мы перевели и сам термин semantic community: для специалистов из речевого сообщества лингвистов (или даже айтишников) привычнее бы звучало «семантическое сообщество», и мы несколько страниц назад давали определение слова «семантика», но мы попытались дать шанс что-то понять и неспециалистам из других речевых сообществ.
Вы уже обратили внимание, что тут всё время используется жаргонное слово «айтишник», а не «программист» – ибо нас заботит не только красота речи и привычные термины, но и семантика, как можно более точное указание на значения терминов в реальном мире. Ведь «программист» более узкий термин, чем «айтишник». Администратор базы данных, модельер данных и инженер данных, системный администратор, IT-архитектор, электронщик – все они не программисты, но айтишники. Можно было бы слово «айтишник» заменить словом «компьютерщик» – кому-то это было бы ещё понятней. С учётом всего этого мы могли бы написать программист/айтишник/компьютерщик – чтобы никому не было обидно и было бы понятней, какое значение всех этих терминов мы имеем в виду.
Бывает и так, что определённый термин, значение которого очень легко понять неправильно, уже закрепился в языке узкой профессиональной группы. Например, таков перевод «управление» для термина governance. В таких случаях в данном курсе будет использоваться наш собственный вариант, который ведёт к меньшему числу ошибок понимания. Например, governance будет переводиться как «подконтрольность» или «поднадзорность», и никакие словари и стандарты тут не указ.
Если какой-то процессный стандарт (например, системноинженерный ISO 15288) под словом process имеет в виду «практику» (характерной для процессов развёртки во времени в этом «процессе» из ISO 15288 нет, там перечисляются именно «практики жизненного цикла»), то в нашей книге это будет «практика», а не «процесс».
Если вы попали в речевое сообщество «процессного подхода», смело используйте слово «процесс» вместо слова «практика» – но знайте, что при этом вы теряете информацию по различению процессов и практик, и речь ваша будет время от времени вызывать недоумение.
Очень часто за одним и тем же термином даже в одном речевом сообществе оказывается закреплено множество разных значений, поэтому уточнить значение даже очень распространённого термина никогда не бывает лишним.
Например, Andries van Renssen выделил35 следующие часто используемые значения для термина «функция» (function):
• подтип активности (поведения), процесса или события;
• некая сущность, находящаяся в определённой роли или сделанная для определённой роли;
• сама роль сущности (обычно это роль физической вещи), участвующей в активности (поведении) [Играемая роль и сущность, играющая роль – это разное! Роль – Гамлет, сущность – Высоцкий];
• указание на корреляцию, обычно как на физическую связь между какими-то аспектами: «если высота растёт, то давление падает»;
• математическое отношение между числовыми объектами, определяющее их отображение друг на друга/mapping.
Ещё один пример – что может подразумеваться под часто встречающимся в информационном моделировании отношением «мета»? При обсуждении одного из языков моделирования данных (MOF, meta-object facility) было обнаружено, что слово «мета» (meta) используется в шести разных значениях, выражая шесть разных типов отношений36:
• экземпляризация (отношение типа и экземпляра);
• группирование (отношение типа и подтипа), оно же категоризация (философская, а не из теории категорий, термин «категория» любим самыми разными речевыми сообществами, и обозначает в них разное!);
• описание (отношение описания и описываемого объекта);
• применение/стереотип (отношение шаблона и его воплощения);
• варьирование (отношение основной модели и кастомизированной);
• реализация (отношение абстрактного синтаксиса и соответствующего ему выражения).
Поэтому каждый раз, встречая слово «мета» нужно разбираться, что именно из этих шести значений имелось в виду. Так что никогда не зацикливайтесь на выбранных другими конкретных словах-терминах, слова как цепочки букв никогда не выражают всю истину. Каждый раз пытайтесь понять, о чем в действительности идёт речь, какое значение слова имелось в виду в каждом конкретном случае. Использование терминов из стандартов не гарантирует однозначного понимания собеседником, но и использование многозначных слов не обязательно ведёт к сложностям.
В этой книге не будет попыток дать точные определения и выбрать правильные термины. Мы постараемся передать понимание наиболее важных понятий и предложить разные слова, которыми их можно обозначать. На вопрос «сколько будет дважды два» будут приниматься ответы и IV, и 4, и «четыре», и four. Но не нужно обольщаться: ответы «горшок», 5, «per aspera ad astra» – приниматься не будут.
Формы мышления
Эпистемология37 – это наука, отвечающая на вопрос «что вы знаете» (по-русски при этом часто говорят о гносеологии, «теории познания», с упором на «как вы узнали то, что вы знаете»), в ней анализируется природа и возможности знания и познания, его границы и условия достоверности, отношение знания к реальности.
Знание в отличие от «просто фактов» – это то, что можно использовать в разных ситуациях, что можно взять с собой из проекта в проект. Факты же могут характеризовать конкретные проекты и объекты в них. Знание о метрах как единицах измерения общее для всех проектов. Длина пути в каком-то проекте 14 метров – это нельзя применить к другим проектам, так что это не «знание», это просто «факт».
Мышление о мире с необходимостью включает в себя знание об объектах мира – эпистемология обсуждает, как это знание можно получить и насколько этому знанию можно верить, а онтология что-то может сказать о том, каковы эти объекты. Логика затем помогает как-то оперировать с этим знанием – и помним, что логика науки и инженерии совсем необязательно булева, она имеет вероятностную компоненту (опираясь при этом на байесово понимание вероятности, а не частотное!), и поэтому может использовать и эвристические («неформальные формализмы», неточные правила) рассуждения38.
Тем самым мы должны ещё задать вопрос: как мы получили знание о системах, обязательно ли это знание формально (выражено в символической форме, доступной для строгого логического вывода), или оно неформально, т.е. образно и интуитивно? Получено ли это знание умозрительно, только в результате размышлений, или были проведены какие-то эксперименты и знание обобщает их результаты? Эпистемология не так популярна, как онтология, но когда речь заходит об обучении каким-то знаниям, без неё не обойтись.
Главное, что нужно тут обсудить – это наличие и важность полностью неформального, интуитивного и невыразимого словами и иными знаками знания. Тем более что сегодня такое знание могут иметь не только люди, но и компьютеры, запрограммированные для работы в рамках коннекционистской парадигмы. Современные достижения искусственного интеллекта связаны с развитием именно «компьютерной чуйки» (а не развития логических языков программирования) в рамках машинного обучения в целом и направления глубокого обучения (deep learning) в частности.
В коннекционистской (connectionism) парадигме39 знание представляется существующим не как набор связанных какими-то отношениями понятий, а как распределённое по множеству определённых простых однородных элементов (часто нейронов в нейронных сетях как искусственных, так и естественных).
Человеческий мозг для мышления использует нейронную сеть, а не логический вычислитель, действующий по законам аристотелевой логики. Современные системы машинного обучения тоже начинают использовать для своей работы похожие принципы, и к ним применяются отнюдь не традиционные наработки для знаний, понимаемых как формальные модели. Объединение методов формальной, «научной» работы со знаниями и методов «неформальной» интуитивной работы в нейронных сетях (искусственных или естественных, в мозгу человека – это тут неважно) представляет собой научный и технический фронтир, мы не будем касаться этих вопросов в нашей книге40. Но нужно понимать, что когда говорят про человеческие «интуицию» и «чуйку», то имеется в виду именно такое мышление41.
Мы в нашей книге исходим из того, что мышление «бибинарно»42 (би – это умножающая приставка от латинского bis, «дважды»), т.е. дважды двойное:
1. По шаблонам – нешаблонное
1.1. «Культурное» мышление, следующее лучшим цивилизационным образцам, шаблонам (patterns), использующее накопленное человечеством знание и одновременно
1.2. нетронутое какой-либо культурой, шаблонами «дикое» мышление, которое приходит новыми путями к выводам, потенциально каких цивилизация ещё не знала, паттерны чего ещё не различала.
В нашей книге мы делаем упор на культурную часть системного мышления, пытаемся взять в нём самое важное, отмоделировать и передать пытающимся освоить его людям. При этом мы понимаем, что в реальной жизни приходится всё время выходить за рамки имеющегося знания, давать ответы на вопросы, которые в учебниках (в том числе и нашей книге), стандартах, публичных документах и даже научных статьях ещё не рассматривались.
2. Знаковое-незнаковое (формальное-неформальное)
2.1. Формальное мышление (дискретное), опирающееся в своих приёмах на строго определённые дискретные объекты какой-то конкретной онтологии. Это мышление состоит в выражаемых знаками (symbols) классических логических рассуждениях. Но одновременно
2.2. мышление непрерывное, коннекционистское, опирающееся на объекты, определённые лишь статистически, вероятностно, без их знакового выражения и интуитивно проводимое эвристическое (т.е. необязательно формально верное, но применимое в большинстве случаев, хотя и не во всех) рассуждение. Правила такого рассуждения тоже могут быть не формализованы.
В нашей книге мы делаем упор на формальное системное мышление, дискретные знаковые представления о системах, но понимаем, что в реальной жизни приходится в существенной мере опираться на автоматизмы мышления, использующие интуитивные непрерывные представления, и это зачастую даёт огромные преимущества. Например, формальные (дискретная логика) рассуждения для разных конкретных онтологий и отдельных предметных онтик принципиально (т.е. формально-логически) несопоставимы, но их можно как-то объединять в коннекционистских (непрерывных) представлениях.
Мышление, о котором мы говорим в нашей книге, появляется там и тогда, где и когда нужно решать проблемы – что-то, что непонятно как решать. Это «медленное» рассудочное мышление. До этого момента можно не мыслить, можно заимствовать какие-то типовые решения, использовать уже имеющиеся знания, «на автомате». Даниэль Канеман утверждает43, что у человека есть два механизма мышления: быстрое малозатратное интуитивное и медленное трудоёмкое, включающееся при появлении каких-то проблем при использовании «быстрого» интуитивного мышления.
По факту речь идёт о целом спектре мышления от интуитивного неформального через вероятностное (с какими-то оценками этих байесовских вероятностей по самым разным источникам априорных свидетельств и данных эксперимента) к классическому формальному на основе математической логики. Вот схема Прапион Гайбарян, иллюстрирующая этот полный спектр:
Обычно интуитивные догадки на уровне «ощущений» вытаскиваются в качестве явно сформулированных эвристик, а эвристики проверяются статистическими методами, или в случае большой удачи формальными методами. В случае подтверждения догадок формальное медленное мышление о каком-то типе задач потом можно натренировать (в ходе решения множества задач) так, что оно становится автоматическим и «интуитивным», не требующим особых мысленных усилий, решение этого класса задач перемещается из части спектра с «обдумыванием» и «направленным вниманием» в зону быстрого интуитивного без особого задействования дорогого ресурса сосредоточенности – но при этому оно из интуитивного «дичкового» становится уже интуитивным «окультуренным», следует проверенным медленным внимательным мышлением образцам.
Но и медленное мышление при всех его достоинствах может испытывать содержательные проблемы, даже когда люди готовы тратить на него достаточно времени. Хорошо сформулированная проблема обычно содержит в себе явное формальное противоречие, которое необходимо «снять» – только в этот момент включается мышление, только в этот момент нужно «сесть и подумать» (а не «вспомнить и применить»). Иногда говорят, что мышление появляется тогда, когда нужно «перевести проблемы в задачи», т.е. создать список работ, которые понятно как выполнять, и которые вместе решают проблему, снимают противоречие, убирают коллизии.
Решение проблем путём формулирования и снятия противоречий (коллизий) присуще и теории ограничений Элияху Голдратта («грозовая туча»44), и методологии ТРИЗ Генриха Альтшуллера45, и системомыследеятельной методологии (школа Георгия Щедровицкого46). Все эти школы мысли утверждают, что они основаны на системном подходе, отсюда и общность мыслительных приёмов.
Системное мышление ничего не говорит про то, как снимать противоречия. В нашей книге нет никаких «методов творческого мышления», таблиц решений, способов проводить мозговые штурмы, приёмов развития воображения. Чудес не бывает, думать тут приходится не меньше и не больше, чем в любых других школах мысли. Системное мышление позволяет удерживать видение всей системы в целом при решении проблем, не терять за деревьями леса, не терять за листьями дерева.
Системное мышление позволяет целенаправленным образом находить противоречия, требовать их решения, документировать эти решения. При этом само системное мышление развивается по мере его употребления в разных его предметных специализациях: системной инженерии, системном менеджменте, системной химии, системной биологии и т. д.
Есть и другие, менее распространённые специализации системного мышления. Например, есть специализация системного мышления для танцевальной импровизации Viewpoints47, на системном подходе также основан текст «Танцевальное мышление и его развитие»48.
Во всех этих многочисленных специализациях системного мышления накапливаются знания по типовым инженерным, менеджерским, танцевальным и т. п. решениям, поощряется задействование опыта этих инженерных, менеджерских или танцевальных решений. Но когда вам нужно что-то делать впервые в мире (как когда-то летели на Луну, а сейчас в SpaceX делают первые возвращаемые на Землю повторно используемые ракетные системы), то есть два варианта – изобретать что-то беспорядочно, «по интуиции», или мыслить системно, чтобы как-то последовательно ставить и решать проблемы, находить и решать противоречия, снижать риск забыть что-то важное в многолетнем проекте.
Системное мышление помогает поделить решение проблемы между разными людьми в команде (более того, часто решение принципиально не может быть найдено одним гениальным человеком, требуется работа больших коллективов). Для этого системные инженеры, менеджеры, предприниматели, танцоры и другие члены команды явно обсуждают метод своей работы. При этом они не просто «генерируют основные инженерные, менеджерские, творческие решения», а «создают архитектуру системы»: основанный на системном подходе профессиональный язык системных инженеров, менеджеров и даже танцоров, позволяет быстрее, чем на бытовом языке, договариваться о том, что в каком порядке делать при постановке и решении многочисленных задач в ходе создания самых разных систем – космических кораблей, организаций, танцев, т.е. всего того, что делают люди.
Итого: системное мышление ничего не говорит про содержание мышления, только про его форму. Более того, развиваемые на его основе дисциплины (системная инженерия, менеджмент и т.д.) делают всё, чтобы и не нужно было много мыслить, а чтобы было можно просто применять в проекте уже известные технические, менеджерские, творческие решения. Мощь системного мышления будет проявляться в тот момент, когда известных типовых решений не будет и нужно будет делать первую из нового вида (first of a kind, FOAK) систему, или обходить какие-то жёсткие ограничения, которые не встречались раньше, или избегать каких-то часто встречающихся ошибок в деятельности – например, не забывать в суете выполнения какой-то работы подумать о чём-то важном, для чего нужно заранее знать – что именно является важным.
В нашей книге обсуждается только форма для мышления: взятая из стандартов и публичных документов и только слегка авторски доработанная системная онтология. Но в книге ничего не говорится про содержание мышления, оно уникально для каждого проекта. И даже если вы второй раз будете делать какой-то похожий на первый проект, то мышление ваше по содержанию уже будет другим: вы получите какой-то опыт выполнения проекта, у вас будут какие-то новые мыслительные интуиции.
Можно ли научить мышлению?
Знания системного мышления в голову укладываются ступенечками, от простого к сложному. Как выделить такие ступеньки? Что нужно тренировать, какую непривычную мозгу мыслительную работу делать привычной?
Тут мы должны ввести понятие контринтуитивности. Мы живём в интуитивно понимаемом мире. Наши мозги ездят по интуитивным, невесть откуда взявшимся мыслительным рельсам «быстрого мышления» по Канеману, как трамвай – одним и тем же маршрутом. Мы родились, постепенно откуда-то у нас эти рельсы в мозгу проложились, и мышление по ним ездит, и ездит обычно мимо известных цивилизации эффективных современных способов решения задач, делая невозможным решение задач сложных. Эпистемологическое вопрошание заставляет задуматься: а откуда у нас появляются интуиции, откуда мы знаем, что именно так нужно мыслить? Рефлексия (осознанность по отношению к прошлым ситуациям мышления) заставляет предположить, что могут быть и другие варианты, кроме интуитивных – контринтуитивные.
Вот, посмотрел в окно – а там земля плоская. Когда нам говорят, что Земля круглая, что мы отвечаем? «Это неправда, посмотрите в окно». Нам отвечают: «вы что, Земля круглая, потому что если посмотреть за горизонт…», но мы упорствуем: «Вы рассказываете много всего лишнего, что там за горизонтом, но за горизонтом всем видно, что ничего нет. Не нужно говорить про далёкий горизонт и что за ним, давайте говорить про Землю, вот же она – Земля плоская». Вся жизненная интуиция показывает, что Земля плоская, люди по ней ногами ходят, и уж ноги-то точно знают, что Земля не круглая! Но каким-то людям, которых заботят масштабы не только 10 километров, но и 1000 километров, в голову откуда-то приходит мысль про «Земля – круглая», они начинают так мыслить. Через некоторое время выясняется, что кроме Земли ещё и Космос с его вакуумом есть, космические корабли там летают «всё время падая, но никогда не падая». Вот это уже непонятно, потому что при идее плоской Земли летание космических кораблей по кругу с достаточной скоростью, чтобы не падать никогда – это понять невозможно. Мысль о круглой земле контринтуитивна, она не соответствует «народной теории» (folk theory) плоской земли.
Слово «контринтуитивность», в котором можно и нужно услышать «антинародность», важно. Каждый раз, когда появляются проблемы с пониманием того, как работают гении, обладающие каким-то искусством, которое никто не может понять и после понимания повторить и улучшить, можно ожидать найти что-то глубоко контринтуитивное. Трамвай мысли у гениев идёт по совсем другим рельсам, нежели проложены в мозгу большинства людей. Найти эти другие рельсы в чужом мозгу, проложить их в своём мозгу и пустить по ним свой мозговой трамвай обычно очень трудно.
Гений почему-то, сам часто не осознавая, сделал что-то совсем не так, как все остальные, он просто начал что-то делать в противоречии с интуицией всех остальных, и у него начало получаться. А все остальные действуют интуитивно, «по-народному», «как все», и у них не получается. И пока на уровень сознания гения, или тех людей, которые пытаются отмоделировать мышление гения, не вышло, в чём именно эта контринтуитивность, вы не можете передать это знание другим людям, не можете никого этому знанию научить.
Вы не можете научить системного инженера, системного менеджера и даже танцора, если вы не знаете на уровне сознания, что он должен делать в ходе своей деятельности, что он должен думать. Вы не можете человека научить стать просветлённым за определённое время, если вы не понимаете, в чём именно содержание просветления. Чем отличается искусство от технологии? В искусстве – один раз свезло, вдохновение было, получился шедевр. Другой раз не свезло, вдохновения нет, не будет шедевра. В инженерии («железной», программной, предприятия, и даже танцев) мы так не можем, нам нужно работать, нам нужны практики мышления, дающие неизменно превосходный результат.
Пожелания «не стеснять свободу творчества шаблонами» тут не подходят: люди, массово выдумывающие мыслительные велосипеды, с большой вероятностью получат не самое лучшее решение. Аргументы «творчества вместо шаблонов» верны только для единичных гениев, в большинстве же других случаев шаблонные мыслительные решения обеспечивают качество при минимизации умственных усилий. Опять же, гением называют не всех «творцов», а только тех, которые предъявляюткачество мышления лучше, чем по лучшим известным на текущим момент (state-of-the-art) мыслительным шаблонам – и дальше уже их решения становятся шаблонными. Эти вновь появляющиеся в цивилизации шаблоны хорошего мышления нужно сразу делать явными, документировать (желательно в форме учебных курсов как адекватной форме документирования мыслительных практик).
Как передаётся неотрефлексированное, неосознанное искусство или ремесло? Ученик смотрит на десятки, тысячи, сотни работ мастеров, научается понимать сленг профессионалов как научаются родному языку (без учебников и словарей, просто «из разговоров»), постоянно смотрит, как работают настоящие мастера и пытается это копировать – прямо по пословице «обезьянка видит, обезьянка делает» (monkey see, monkey do). Далее у трёх из десяти учеников в голове появляются какие-то правильные рельсы для трамваев их профессиональных мыслей, и они начинают мыслить быстро и делают мало ошибок. А у семи из десятка – не появляются, и они делают много ошибок. Обучение искусству или ремеслу – это не обучение в классическом смысле слова.
А нам надо, чтобы девять из десяти могли научиться (вполне можно представить, что будет один неспособный на десяток человек, но не семеро из десяти). Это означает, что мы должны взять для обучения такое контринтуитивное знание, которое само не может быстро прийти в голову ученикам, сделать его минимальное компактное и понятное описание, а затем его каким-то образом передать ученикам, чтобы оно встроилось им в голову. Вопрос: бывает ли такое в тех областях, которые традиционно считались «искусством», и которым считалось, нельзя научить рационально? Да, бывает, сплошь и рядом! Это и есть путь западной цивилизации: превращать «искусство» (в том числе искусство мышления) после его моделирования и рационализации в быстро передаваемое от человека человеку в ходе структурированного обучения мастерство.
Когда вы находите правильные объекты и правильные мыслительные операции, и правильные упражнения – то ученики после обучения даже не будут понимать, что им было трудно делать до обучения. Они будут неспособны вспомнить, по каким рельсам катилось их мышление до обучения, и поэтому они будут изумляться поведению необученных новичков, включая собственное поведение в период до освоения той или иной практики. Спросите ребёнка, почему он очень плохо умножал всего год назад – он не сможет объяснить, почему. Сейчас умножение для него вполне естественно, и не требует напряжения всех его умственных сил, как это было год назад.
Назовём это свойство прохождения какого-то порога понимания метанойей. Слово удивительное, попробуйте его написать в разных падежах, да ещё и во множественном числе, получите очень интересные эффекты. Это слово пришло из религиозных практик и означает «перемену мыслей», полный разрыв прошлого и текущего мышления. Ты занимаешься, занимаешься в какой-нибудь семинарии, и вроде как мышление у тебя не так поставлено, как это ожидают от тебя священники. Потом вдруг в какой-то момент щёлк – и ты демонстрируешь всем, что вот у тебя такое же мышление, как это принято у священнослужителя, с этого момента ты «настоящий», а не притворяешься. Вот слово это – метанойя, такой малый западный вариант просветления. Слово «метанойя» рекомендовал использовать вместо слова «обучение» гуру менеджмента Peter Senge, ибо слово «обучение» с его точки зрения уже совсем затасканное и не означает коренную смену образа мышления в результате обучения.
Когда метанойя произошла, то в новом состоянии его мышления, с «новыми рельсами в мозгу» человеку совершенно непонятно, в чём была проблема раньше, «со старыми рельсами». Представим: я знаю, что Земля плоская, я долго спорю, что Земля никак не может быть круглая, но меня в какой-то момент в этом убеждают. И я каждый раз в своих проектах сначала автоматически действую, как будто Земля плоская, потом усилием воли вспоминаю, что рационально вроде бы она должна быть круглая, потом делаю это уже на уровне рефлекса, и при этом вижу тысячу свидетельств этой круглости Земли. И вот в этот-то момент я уже не могу понять, почему я считал, что Земля плоская. Рационально вспомнить, что я когда-то считал Землю плоской, я могу. Но понять, как я перешёл из состояния знания «интуитивной теории» в состояние владения «контринтуитивной теорией» я уже не могу. И поэтому я не могу осознать те учебные действия, которые нужны для того, чтобы я добивался этой метанойи круглости Земли у своих учеников. Но сам факт обращения внимания на эту прошедшую метанойю даёт шанс разобраться. Работа по составлению правильных упражнений для получения такой метанойи у учеников – это трудная работа, но возможная. Создание адекватного учебного курса по уже имеющейся теории вполне может занять пару-тройку десятков лет, а если кроме самих упражнений нужно создать ещё и новую теорию, то и сотен лет, как это было в случае перехода от птолемеевского к коперниковскому пониманию движения планет. Все эти рассуждения про трудность создания теории и учебного курса в полной мере относятся и к системному мышлению.
Особое внимание нужно обратить на то, что речь идёт об обучении не любым практикам, но «контринтуитивным», которым мозг сопротивляется особо, он же в этом случае «интуитивно знает», как должно быть, и активно сопротивляется новому знанию! Заново чему-то обучить много легче, но если уж вы уже подхватили где-то «народную интуицию», то научить вас чему-то более эффективному новому будет весьма проблемно: вам придётся пройти метанойю, а это требует наличия как-то документированной модели целевого мышления, организованной в учебный курс последовательности упражнений, времени для прохождения этих упражнений, а также недюжинной воли – ибо вся интуиция учеников будет показывать, что учат-то какому-то безумию! Шансов пройти эту метанойю «самоучкой» практически нет, если вы не гений.
Вот, в школе учили прыгать через планку «ножницами» – подбегаешь, и прыгаешь. Но если нужно прыгнуть очень высоко, то после разбега к планочке нужно поворачиваться спиной, и прыгать назад-вверх (Fosbury Flop, изобретение 1968 года49).
Это абсолютно неинтуитивно, но даёт возможность перелетать и через двухметровую планку. Нужно огромное доверие к тренеру, чтобы вы начали тренировать такой прыжок – ибо в этот момент кажется, что много-много тренировок дадут возможность преодолевать дополнительные десятки сантиметров «ножницами» или «перекатом», что совсем не так. А потом будет метанойя: вы будете не понимать, почему вообще через планку люди ещё где-то прыгают не техникой Дика Фосбери – даже если вы уже не помните, что начало таким прыжкам положил именно Дик Фосбери, и прыгать так люди начали всего на год раньше, чем высадились на Луну в 1969 году. И речь идёт о том, что люди делали тысячелетиями: прыжках в высоту! То же самое относится к бегу: позный (основанный на принятии специфической позы бегуна, что позволяет эффективно задействовать физические свойства тела) метод бега50 появился после исследований Николая Романова, которые он начал в 1977 году. До этого позным бегом занимались люди, чисто случайно натолкнувшиеся на эту технику – и, конечно, они не в состоянии были передать свой опыт другим людям, они просто неосознанно «хорошо бегали».
Позный метод бега менее энергозатратный (до 30%), менее травмоопасный, чем многие и многие другие техники бега – опять же, несмотря на то, что люди бегают тысячи лет, метод позного бега появился только в начале восьмидесятых, и только с этого момента позному бегу стало возможно быстро учить.
В мышлении есть такие же контринтуитивные способы, которые позволяют мыслить по спортивному девизу: «быстрее, выше, сильнее». Системное мышление – это такой же набор придуманных разными людьми специфических приёмов, которые позволяют мышлению быть эффективней, чем его предыдущие, «народные» варианты.
Главная метанойя системного мышления в том, что вы начинаете думать о мире, как состоящем из вложенных друг в друга и взаимодействующих друг с другом систем. Если понимать систему не как «любой объект, который мы рассматриваем», а как «система из системного подхода», то это оказывается крайне контринтуитивным, поэтому требует специального обучения и последующей длительной тренировки такого системного мышления.
В математике термин «интуитивное» часто подменяется термином «тривиальное» – возможность повторения «любым» в данном сообществе, а нетривиальность – невозможность повторения (спасибо за обсуждение этого вопроса математику Роману Михайлову). Демонстрация интересного нетривиального делает его тривиальным через пару тактов тренировки заинтересовавшихся, ибо в определение «интуитивности/тривиальности» и «контринтуитивности/нетривиальности» неявно входит момент времени «прямо сейчас». Любое «контринтуитивное/нетривиальное» одного поколения становится «интуитивным/тривиальным» для другого поколения думателей. Эту «тривиальность» вполне можно добавить в список синонимов к «интуитивности».
Кто знает, может быть сегодняшнее системное мышление для будущих поколений людей и мыслящих машин будет «народным», «интуитивным», «тривиальным». Но пока системное мышление глубоко контринтуитивно и осваивать его трудно.
Под «интуитивностью» в быту часто имеют в виду не результат рационального логического рассуждения, а использование «чуйки» – получение результата рассуждения инсайтом, вдохновением, озарением, причём этот результат может быть весьма нетривиален. Мы о таких результатах мышления говорим, что они ровно наоборот – «контринтуитивны», то есть нетривиальны, невоспроизводимы легко разными людьми, эти результаты не относятся к «народной онтологии».
Так что в случае использования этих терминов нужно быть внимательным к контексту: когда говорится о 1. возможности легко повторить какое-то всем очевидное рассуждение (интуиция=тривиальность как лёгкость повторения другими, задействование «народной онтологии»), или когда говорится о том, что 2. рассуждения могут проходить в коннекционистской парадигме (интуиция=«чуйка», результат образного внелогического мыслительного акта с использованием нейронных сетей мозга, бессознательное рассуждение).
Стадии обучения мышлению
Обучение системному мышлению проходит через следующие стадии:
0. Заинтересованность: понимание, что системный подход вам зачем-то нужен. Это переход от неосознанной некомпетентности («я и не догадываюсь, что я не умею системно мыслить») к осознанной некомпетентности («я знаю, что я не умею системно мыслить»). Это самая трудная ступенька на пути к беглости мышления. Нет мотивации – не будет и вложений труда, не будет hard fun, никакой метанойи не случится. На коммерческие курсы люди приходят уже заинтересованные, и у них дальше всё получается. Студенты приходят обычно никак не заинтересованные – и не все из них становятся заинтересованными даже к концу курса. Но часто возвращаются поучиться второй раз (заинтересованность появляется уже после прохождения курса). Эту заинтересованность необходимо поддерживать всё время обучения (тут можно указать на то, что в педагогике ведущая дисциплина – лидерство, умение удержать человека в роли ученика51).
1. Начитанность: знакомство с каким-то фрагментом системной онтологии. Материал учебника (или даже нескольких) освоен на этой стадии в части знания значений слов, умения пересказать какой-то фрагмент учебника, воспроизвести какую-то диаграммку, поддержать разговор.
Правильно думать о стадии «начитанность» как о начитанности учебником по езде на велосипеде. Начитанный, но ни разу не ездивший человек может долго вам рассказывать о равновесии, о необходимости крутить педали. Но продемонстрировать езду он не сможет.
Начитанность для мышления нужна, но для беглости в мышлении её совершенно недостаточно. Чтобы обеспечить «правильную для последующей тренировки беглости начитанность» как раз и написана наша книга-учебник, в которой структурировано системное мышление. Однако начитанность – это даже ещё не переход к осознанной компетентности, когда можно самостоятельно и осознанно провести какое-то рассуждение в рамках предлагаемого культурой и документированного в учебнике лучшего способа это делать.
2. Понимание: понимание того, что означают термины системного подхода в их многочисленных вариантах разных школ, понимание как использовать понятия системного мышления при обсуждении ситуаций. Кроме памяти тут уже появляются некоторые мыслительные интуиции. И это делается «сержантским методом»52, то есть путём решения простых и похожих друг на друга, многочисленных тренажёрных задач, которые формулируют авторы курса для тренировки, а не для контроля знаний.
Пример такой задачи: «Пётр утверждает, что нужно уже начинать закупать компоненты системы, а Елена утверждает, что не компоненты, а модули. Кто из них прав? А) Пётр Б) Елена». Ответить на такую задачу можно, только если знать про различия модулей и компонент – для ответа недостаточно процитировать какое-то место из учебника. При решении тренажёрных задач как раз и формируются «рельсы в голове», по которым поедет мышление.
Важно, что в задачах специально тренируется контринтуитивность, отличие предлагаемого способа мышления от использования народных/бытовых интуиций/онтологий, это делается через использование практики понятийной описи53 (conceptual inventory).
3. Приложимость: умение системно мыслить по потребности in the wild, в реальных проектах. Это совсем отдельное качество: уметь решать уже поставленные задачи (даже олимпиадного уровня сложности) и уметь ставить задачи, выделять эти задачи из запутанного, шумящего, быстро меняющегося окружающего мира. Приложимость системного мышления именно в этом, не в решении уже поставленных задач из задачника, а в постановке и последующем решении задач из жизни. Реальные проекты появляются только тут, и только тут тренируется главный навык системного мышления: выделение главного и игнорирование не главного для борьбы со сложностью реального мира.
В составленных какими-то авторами тренажёрных задачах тепличные условия, в отличие от реальных проектов ничто не отвлекает от применения материала из учебника. У тренажёрных задач заведомо есть решение, а ещё в них нет отвлекающего эмоционального вовлечения в ситуацию.
В реальных проектах приложимость заключается в том, чтобы провести системное рассуждение в нетепличных условиях реальной жизни. «Проектное обучение» происходит именно тут, результат прохождения тренинга приложимости на реальных проектах и даёт искомую метанойю: нейронная сеть мозга обучающегося научается думать системно, системное мышление после этого уже не требует осознанных усилий при рассуждениях, в том числе не требует усилий и для привязки его понятий к объектам окружающего мира. Это переход к неосознанной компетентности, мы можем также назвать это системной метанойей.
Особенности решения учебных задач по системному мышлению
В онтологических рассуждениях, как и в жизни, обычно делается предположение об открытости мира54 (open world assumption): «что не сказано, то просто не сказано». Это существенно отличается от предположения о закрытости мира: «что не сказано, того просто нет». Тренажёрные задачи чаще всего составляются из предположения о закрытости мира.
Опытные инженеры и менеджеры в предположении об открытости мира при решении задач начинают придумывать всё более и более необычные и маловероятные обстоятельства, логично ведущие к неправильным ответам – и даже часто добиваются успеха («вот если речь идёт о Юпитере, и пилот ракеты не боится огромной силы тяжести и играет на саксофоне в метановой атмосфере, то ваш правильный ответ будет неправильным, а мой неправильный правильным»). Действительно, маленькая вероятность обстоятельств к чисто формальной правильности ответа отношения не имеет (даже исчезающе маловероятное событие может быть формально верным, «логичным» в аристотелевой логике) и формально ученик может быть прав. Но по сути генерирование таких дополнительных условий исходя из посылки открытого мира не помогает решать тренажёрные задачи, а только мешает это делать.
Особое внимание нужно уделять тренажёрным задачам на начальных стадиях обучения – когда правильный ответ интуитивно не ясен, не является шаблонным. Когда студент материал знает плохо, он включает «смекалистый мозг». Он смотрит на 2*2 и начинает: «Это может быть любое число больше 1.0 и меньше 9.0, ибо мы же не знаем, насколько и как округлили исходные числа. И это может быть в ответе вообще что угодно, начинающееся и заканчивающееся на 2, ибо звёздочка не всегда означает знак умножения. Часто звёздочка означает любое количество символов. А ещё речь может идти о символьном умножении, поэтому ответом будет 22. И давай не будем разбирать ситуации, когда система счисления недесятичная, так и быть». Конечно, он достаточно смышлён, чтобы заподозрить в ответе 4, но и недостаточно уверен в этом ответе, чтобы не предположить дополнительных подвохов.
Двое из десятка изучающих системное мышление человек именно таковы – они материал не читали, но они хорошие инженеры или менеджеры, у них подвешен язык, они скептичны по отношению к материалу учебника (это ничего плохого, просто skeptic thinkers), и именно они обычно самые активные в группе. Их цель не столько поупражняться в системном мышлении и использовании его концептов, сколько попробовать «прогнуть» предлагаемые задачи вместе с системным мышлением, испытать их на прочность «здравого смысла». Этим людям хорошо работать Беспристрастными Свидетелями (Fair Witness) из Хайнлайна: «Энн стояла на трамплине. Джабл крикнул ей: – Тебе виден тот дом на горе? Какого он цвета? Энн посмотрела и сказала: – С нашей стороны белый. Джабл обернулся к Джилл: – Вот видишь, Энн не стала говорить, что дом белый целиком. И вся королевская рать не заставит ее сказать это до тех пор, пока она не пойдет и не посмотрит. Но даже и тогда она не сможет утверждать, что дом остался белым после того, как она ушла»55.
Как мы могли бы с этим бороться? Очевидный ответ – строго формализовать задачи, добиваясь однозначности правильного ответа. Но чем формальней будут поставлены задачи «из учебника», тем дальше они будут от реальной жизни.
Ещё важно понимать, что все эти задачи тренажёрные, а не экзаменационные. Они дают лишь повод осознать и обсудить материал учебника, формализм «единственно правильного ответа» для них непринципиален.
Ещё один источник возможной «формальной нелогичности» системного мышления в том, что он представлен в стандартах и публичных документах, откуда мы берём его положения (а вследствие этого и в нашем учебнике) не как логически непротиворечивая формальная онтология. Каждый стандарт имеет свою онтику (набор фактов о мире, не претендующий на полноту и непротиворечивость с другими наборами фактов). Изложение этих фактов на естественном языке только добавляет неопределённости. В реальных проектах «из жизни» очень трудно составить непротиворечивое системное описание ситуации, так что использовать системное мышление будет много тяжелей, чем в специально составленных учебных задачах.
Переход к использованию мышления
Одного решения задач недостаточно. Нужно будет потом долго тренироваться в постановке задач, в применении системного мышления в ваших рабочих проектах – и только тогда цветущая сложность начинает отступать и поддаваться тренированному в системном мышлении мозгу.
Основных идей системного подхода немного, каждая из этих идей довольно быстро понимается. Проблема в том, что все эти положения глубоко связаны друг с другом и крайне редко используются поодиночке. Так что требуется добиться некоторой беглости (fluency) в их одновременном и совместном применении – примерно в том же смысле, что и беглости пальцев в игре на рояле или наборе текста на клавиатуре, беглости в говорении на иностранном языке. Каждая клавиша на рояле или клавиатуре понятно нажимается, их всего не так много, проблема только в том, чтобы разные клавиши нажимать вовремя, быстро и такие, какие нужно для получения музыки. На освоение клавиатуры уходит несколько дней тренировки, на освоение рояльных клавиш уходит несколько лет. В освоении системного мышления, как и в освоении игры на рояле нет царских путей, кроме как бесчисленного числа повторений, выполнения многочисленных упражнений на использование этих положений, получение опыта применения в жизни. Это, увы, занимает время. Поэтому мышлению желательно учиться с детства. Вот из материалов Viewpoint Research Institute56:
Мы хотим помочь детям развить реальную беглость (fluency) во многих областях образования, включая мышление, математику и науки. Каждый из этих предметов не поддается «естественному обучению» (как учатся ходить и говорить). Довольно много времени и энергии нужно потратить, чтобы получить беглость выше пороговой. Тут интересное сходство с искусством, музыкой и спортом, для каждого из них также требуется довольно много времени и энергии, чтобы получить беглость. Эти искусства могли бы называться «тяжелое развлечение» (hard fun). Математики и ученые знают, что они занимаются искусством, равно как тяжелым развлечением. «Мышление» это более высокая категория, чем «просто» математика, наука и искусства. Оно представляет синтез интуитивного и аналитического подходов к пониманию мира и поведения в нем.
Peter Senge в книге «Пятая дисциплина»57 (1990) писал:
Недавно в ходе пятидневного вводного курса, проводимого Обучающим центром МТИ, одна женщина-менеджер из конструкторского отдела компании Ford лаконично сформулировала ситуацию: «Спустя пару дней, – сказала она, – я начинаю понимать, о чем вся эта история с системным мышлением и интеллектуальными моделями. Мне это напоминает время, когда я только начала знакомиться с высшей математикой. Сначала я чувствовала себя совершенно потерянной. Все это было мне совершенно чуждо. Но потом я начала „схватывать“ суть. Через год я уже вполне владела основами этого дела. Через пять лет это стало основой моей профессии». Потом она добавила: «Если бы высшую математику изобрели сегодня, ни одна из наших корпораций не смогла бы ею овладеть. Мы бы посылали каждого на трехдневные курсы. Затем каждый получал бы три месяца на то, чтобы посмотреть, работают ли „все эти штуки“. А когда выяснялось бы, что они не работают, мы бы начинали пробовать что-нибудь другое».
Если заниматься языками, то любой из них можно довести до уровня С1 (достаточный для поступления в европейский ВУЗ) за год, если интенсивно заниматься – для языка без флексий (английский, испанский) нужно на это потратить 600 часов, с флексиями (русский, немецкий) 1100 часов, для языков совсем другой структуры 2200 часов. Если заниматься год, то в день нужно тратить примерно 1.6, 3 и 6 часов соответственно, и в Сети можно найти достаточно примеров, как мотивированные люди выделяли примерно такое время в своём расписании и достигали успеха. Чтобы достичь в языке мастерства, нужно потратить порядка 10000 часов (хотя это и спорное утверждение, но порядок верный) – то есть заниматься языком несколько лет. И в случае иностранного языка это даже не «мыслить» и не узнать о каких-то новых вещах и их связях, это просто «переназвать известные уже вещи другими словами»! Системное мышление относится к того же сорта практике: его нужно практиковать, чтобы добиться беглости, а не «мыслить со словарём».
И это не разовое учебное усилие, не прохождение «интенсивного курса». Если в день несколько лет подряд нужно тратить по нескольку часов на какое-то занятие, то речь идёт по факту об изменении образа жизни – откуда-то эти несколько часов нужно взять, как-то переустроить своё типичное дневное расписание. Это как поступить в очную или заочную физматшколу: тяжело работать несколько лет, чтобы получить другие жизненные возможности. Обучение вообще-то неблагодарное занятие: если вы учились целые выходные с утра до вечера, то вас похвалить будет некому – это не работа, которую можно существенно продвинуть за пару дней и это всем будет заметно. Нет, придётся потратить много дней без немедленных наград. Зато это позволит потом претендовать на другие работы и другой уровень наград.
Последнее препятствие в использовании системного мышления – это просто его неиспользование по назначению, отсутствие приложения. Автору встречались случаи, когда люди тратили много времени на освоение системного мышления и даже достигали некоторой беглости в его использовании в тот момент, когда им явно указывалось на необходимость каких-то системных рассуждений в сложной ситуации. Но в критических ситуациях собственных рабочих проектов они просто забывали его использовать! Это неудивительно и даже неспецифично для системного мышления: обычно люди знают, как хорошо выполнить то или иное дело, но только мастера реально используют это знание, часто абсолютно автоматически – на то они и мастера. А не-мастера о правильных приёмах работы и мышления обычно знают, но просто забывают их применить, или им это лень делать, потому как неавтоматическое рассуждение очень трудоёмко.
Вот это чувство потерянности при обучении, невозможность реорганизовать свою жизнь для обучения, неиспользование результатов обучения обычно связаны с одной причиной: непониманием, зачем эти новые обширные знания нужны, зачем использовать системное мышление. Живут же люди без этого системного мышления, и неплохо живут!
Резюме тут простое: если хотите меньше допускать ошибок в сложных проектах, то заранее тренируйте системное мышление, а потом используйте его в жизни. Тогда в какой-то реальной ситуации привычка системно мыслить вас спасёт: вы не сделаете глупых ошибок даже в тех ситуациях, которые окружающим вас людям будут казаться очень сложными.
2. Воплощение системы, стейкхолдеры и интересы
Воплощение, определение и описание системы
В системном подходе очень важно понимать, говорим ли мы о физической реальности, привязаны ли мы к ней, или просто фантазируем о мире. Если мы хотим надёжно менять физический мир в соответствии с нашими замыслами, если мы говорим о человеческой деятельности, то нам нужно как-то обеспечить, что все наши рассуждения привязаны к физическому миру, что мы в конечном итоге имеем дело с физической реальностью58.
Это обеспечивается тем, что когда мы говорим о системе, то мы прежде всего имеем в виду воплощение системы (system realization – тот же корень, что real, реальный, буквально речь идёт о существовании в реальности, reality). Система понимается всегда как воплощение системы, как философский индивид – индивидуальный, уникальный физический объект, существующий в физическом мире. Например, это фирма Apple, топливный насос с серийным номером #12345, установленный на авиадвигателе #5678, исполнение танца «Барыня» на сцене Усть-Урюпинского театра вечером 24 октября 2015 года.
Как узнать, что система существует в физическом мире? Для этого есть множество философских критериев, и мы выберем самый «научный» из них. Мы будем считать, что в физическом мире присутствуют только те объекты, которые занимают место в пространстве-времени. Тем самым мы выбираем 4D-онтологию, подразумевающую существование мира в четырёхмерном пространстве-времени «по Эйнштейну».
Индивид в 4D имеет некую протяжённость в пространстве (то есть размер, длину, ширину, высоту, радиус) и во времени (то есть имеется момент, когда он начал существование, и момент, в который он закончил существовать). Место индивида в 4D называется экстент (extent, протяжённость в пространстве-времени). Поля или энергии мы тоже будем считать 4D объектами, физические тонкости такого подхода для нас пока не важны.
Тем самым мы чётко различаем воплощение системы (system realization) как индивид, который занимает экстент в пространстве-времени, и определения системы (system definition) – информацию о воплощении системы, об объекте-индивиде.
Информация не имеет места в реальном мире, нельзя сказать, что определяющее высоту в метрах индивида «Эйфелева башня» число «300» находится где-то в реальном мире и имеет собственную длину-ширину-высоту. Если вы укажете на вот это вот число «300» и скажете, что оно существует и имеет свой экстент – то вы укажете не на само число, а на носитель информации, который своей формой (частицами краски или прозрачностью материала или ещё как-то) кодирует это число. Тем самым место занимает не «300» как число, не часть определения Эфейлевой башни, а материальный объект кусочка описания (system description) Эйфелевой башни – информация определения, записанная на каком-то носителе информации.
Объекты, относящиеся к определению системы легко отличить – они не имеют экстента, они абстрактны, «идеальны» как противоположность материальному.
Всё это нужно для того, чтобы различить воплощение системы и её описания, даже если это неполные воплощения, а только их части и неполные (частные) описания.
Людей интересуют воплощения системы в конечном итоге, а описания системы их интересуют ровно постольку, поскольку без них воплощение системы трудно сделать.
Результат работы проектировщика атомной электростанции – в конечном итоге воплощение атомной электростанции, а не бумажная документация на её строительство или даже информационная модель. Результат работы хореографа – это в конечном итоге сам танец, а не листочек бумаги с описанием танца. И это несмотря на то, что проектировщик сам не строит атомные электростанции, а только их описывает, а «хореограф» в его изначальном значении тоже «описатель» танца (от др.-греч. – хороводная пляска, хоровод + – записывать, писать. Первоначальное значение хореографии – это отнюдь не сочинение и постановка танцев, а именно искусство записи танца).
Люди ходят не по карте, а по территории. Карта – это только описание территории, и это верно для всех описаний, не только для географических карт.
Карта коктейлей – это не коктейли, её не пьют. Карта находится в мире информации, даже если на ней изображены картинки настоящих коктейлей. Информация не занимает пространства-времени, она абстрактный объект, а не конкретный.
Если же говорят, что карта занимает пространство-время (имеет экстент), то речь идёт не о самой карте как информационном, абстрактном объекте, а о материальном носителе карты – бумаге и краске. Но нарисованные на карте объекты не существуют. Существуют индивиды, которые описывает эта карта. Карта в данном случае – не система, а только описание системы (system description), а информация на ней – определение системы (system definition).
А вот сами коктейли, описываемые картой (определяемые информацией на карте) – это системы (воплощения системы), они занимают место в пространстве-времени, по ним можно постучать, на них можно показать пальцем, их даже можно выпить.
В случае карты можно постучать не по коктейлям, а по картинкам коктейлей, что совсем не то же самое. И картинки коктейля не выпьешь.
Абстрактные объекты
Объекты-индивиды как воплощения системы противопоставляются определениям, как абстрактным объектам. По абстрактным объектам нельзя постучать, на них нельзя указать пальцем – они не занимают места в пространстве. Они используются в мышлении, чтобы переносить знания между ситуациями. Абстрактные объекты можно выражать символами на каких-то носителях. Но символ и означаемое символом (например, символ доллара и доллар) – этосовсем не одно и то же, равно как символ совсем не часть носителя информации, изменение структуры которого (краска, форма углублений) кодирует эти символы.
Множество – это абстрактный объект, не тождественный сумме входящих в него объектов-индивидов. Множество из одного автомобиля – это совсем не то же самое, что этот один автомобиль. Автомобиль имеет экстент, а множество экстента уже не имеет, это просто информация. Другое имя для множества – это тип, или класс. Все красные автомобили-индивиды материальны, а вот множество/тип/класс красных автомобилей – это определение красного автомобиля, оно идеально. Любой красный автомобиль-индивид определяется (defined) как входящий в это множество (классифицируется этим классом, принадлежит этому типу). Мышление ухватывает что-то общее во всех ситуациях, мышление происходит не для отдельных объектов-индивидов, о которых мы знаем разные факты. Мышление происходит для классов/типов/множеств индивидов/экземпляров.
4D экстенсионализм
Если один человек упомянул президента США, а другой – Барака Обаму, то они имели в виду одно и то же лицо? А если другие люди упомянули президента США и Джорджа Вашингтона – они имели в виду тех же лиц? В инженерии тоже нужна жёсткая логика для подобных рассуждений – описанный одним человеком насос P-101 на схеме трубопроводов, и описанный другим человеком насос модели ПДР-15-НШ-12 в монтажной спецификации – это один и тот же насос? А установленный в турбинном зале насос ПДР-15-НШ-12 с серийным номером RKS456/4 – как он соотносится с первыми двумя? Как описать это «в компьютере» так, чтобы и самому не запутаться, и других не запутать?
Ещё Декарт (1596—1650) задавался вопросом: а как вообще понять, что люди говорят об одном и том же объекте, если они видят в нём самые разные свойства (то есть относят его к самым разным классам)? Скажем, один инженер говорит о высокопроизводительной системе, другой – о взрывоопасной, менеджер – о прибыльной, а финансист – о дешёвой? Как тут понять, что речь идёт об одной системе? Ответ на такие онтологические вопросы был дан Декартом и сегодня его подход называют экстенсионализмом (extensionalism)59. В рамках экстенсионализма вслед за Декартом считают, что если экстенты, т.е. место в пространстве, у двух объектов совпадают, то это один и тот же объект. В XX веке к этому добавили ещё и протяжённость во времени, темпоральный/временной extent, и соответствующая теория получила название 4D экстенсионализма (4D extensionalism). Для экстенсионального подхода не важно, какие основные или вторичные свойства и сущности увидели разные люди в объекте, или для каких применений этот объект им нужен. Более того, для экстенсионального подхода не важно, одинаковые или разные имена у тех экстентов (мест в пространстве-времени), о которых говорят разные люди, имеющие разные интересы. Если речь идёт об одном и том же месте пространства-времени, значит речь идёт о том же самом индивиде, о том же самом воплощении системы. Если я говорю о пище, вы говорите о яблоке, она говорит о товаре, он говорит о зелёном физическом теле массой 150 грамм, и всем мы показываем на одно и то же место в пространстве-времени, то речь идёт об одном и том же индивиде. Если кто-то показывает в 4D на бабочку с крыльями и говорит «бабочка», а кто-то другой показывает в 4D на яйцо-гусеницу-куколку-бабочку-с-крыльями и говорит «бабочка», то у этих двоих есть шанс понять друг друга. Экстенсионализм позволяет самым разным людям договориться о мире.
Если не требовать, чтобы все рассуждения, все описания систем, которые делают люди, в конечном счёте привязывались бы к воплощениям систем, то мы не имели бы возможность проверить, об одном и том же говорят люди, или о разном. Более того, были бы огромные проблемы с проверкой того, говорят ли люди о реальном мире или высказывают благие пожелания, или просто фантазируют, или даже сознательно не хотят доводить свои мысли до реальности. Именно экстенсионализм позволяет до некоторой степени игнорировать различия в используемой людьми терминологии – ибо в конечном итоге всегда можно проверить, одно и то же понятие люди обозначают разными терминами, или разные: даже если речь идёт об абстрактных понятиях, всегда можно указать примеры из реального мира.
Отношение состава
Главные отношения индивидов – это отношение «часть-целое» (part of), они же отношения состава/сборки (composition).
Инженеры часто говорят об этом как о разбиении (breakdown) системы. Крыло и фюзеляж – части самолёта, топливный насос – часть двигателя. Экстенты всех этих частей занимают какую-то часть экстента целого: крыло занимает часть всего объёма самолёта, часть занимаемого им пространства-времени, топливный насос занимает часть двигателя. Если принять, что все системы существуют не просто в 3D пространстве, а в 4D пространстве-времени, то можно говорить об их темпоральных (временных) частях. Если речь идёт о такой части 4D-индивида, что на протяжении какого-то промежутка времени этот индивид не имеет никаких других частей, то эта темпоральная часть называется полной темпоральной частью. Например, яйцо является полной темпоральной частью бабочки – пока бабочка проходит стадию «яйцо», никакой другой «бабочки» в мире нет. Это очень удобно для описания изменений: разные состояния системы становятся просто её разными темпоральными частями. С этими состояниями системы можно работать как с отдельными объектами, они могут получать отдельные имена. Бабочка на стадии «яйцо» называется «яйцо». Пётр Сидорович в состоянии болезни называется «пациент». Удобно представлять четырёхмерные объекты эдакими «червяками» во времени, в которых 3D объём проходит какую-то траекторию во времени, какую-то «развёртку во времени».
При таком подходе события – это трёхмерные «срезы» индивида на какой-то момент времени, эдакие трёхмерные фотографии. До события было одно состояние индивида, а после события – другое состояние индивида. Кроме того, сам индивид появляется в какой-то момент времени, а в какой-то момент времени он исчезает.
Спортсменка на фотографии проходит разные события (отрыв от земли, приземление), определяемые её позами в эти моменты времени.
Эти позы, как «трёхмерные фотографии» и есть события, разделяющие разные состояния «сальто», «подготовки к сальто», «выравнивание после приземления». Эти позы в выделенные точки во времени – события, до и после которых состояние индивида изменяется.
Например, в позном беге60 событием является «поза бега» – всё тело бегуна в определённый момент времени «Поза бега» является ключевой для правильного бега, весь бег оказывается основан на событии принятия правильной позы.
Описания очень сложных систем (от микропроцессоров с их диаграммами состояний до предприятий с их регламентами работы) часто опираются на связанную с ними событийную структуру. Проще всего выяснить что-то про незнакомую систему – это спросить, какие с ней связаны события. В разработке информационных систем предприятия этот метод называется «событийный штурм»61 (event storming, по аналогии с «мозговым штурмом»).
В онтологии 4D экстенсионализма мышление про объект-событие не отличается чем-то особенным: о событиях говорится просто как о частях системы, разве что событие не просто полная темпоральная часть (состояние) системы, но и имеет нулевую длину во времени. Более того, любые события являются сами по себе границами темпоральных частей индивидов – эти 3D-срезы разрезают индивиды на состояния, которые были до события и состояния, которые наступили после события.
Можно говорить и о сложных событиях, которые занимают некоторое ненулевое время, если их рассматривать «в лупу». Когда говорят о таких слжных событиях, то рассматривают их в контексте таких больших отрезков времени, на которых длительностью самого сложного события можно пренебречь. Так, говоря о созревании помидоров, можно выделить сам помидор как целое, и три его полных темпоральных части – зелёный помидор, событие покраснения (превращения зелёного помидора в красный) и красный помидор. В большинстве случаев при разговоре про помидор можно пренебречь временем события покраснения помидора и всеми промежуточными при этом состояниями, оно тут просто не принимается в расчёт: нас интересует зелёное и красное состояния помидора, объекты «зелёный помидор» и «красный помидор», а вот «промежуточный помидор» нас не интересует, поэтому мы считаем это просто событием.
Вот диаграмма пространства-времени (space-time map) из книги Chris Partridge «Business Objects: Re-Engineering for Re-Use»62, которая это иллюстрирует:
Все три измерения пространства на этой диаграмме показывают на одной оси, а время на другой оси. Помидор (экземпляр помидора #91, речь ведь идёт об индивидах) занимает какое-то пространство-время, а внутри его находятся индивиды-состояния зелёного помидора, красного помидора и сложное событие изменения цвета помидора.
Событие «вторая мировая война» тоже длилось много лет, но при рассмотрении «предвоенного мира» и «послевоенного мира» это событие считается прошедшим «мгновенно» – это просто «фотография мира» в тот момент, когда там шла война.
Отверстия
4D экстенсионализм позволяет легко договариваться и о тех объектах, которые вызывают трудности в их определении. Так, объект «отверстие» в языке определяется как нечто несуществующее, «дырка». В бублике дырка – то место, где нет теста. Но в инженерном мире дырка вполне себе существует как отдельный объект-индивид: её можно сделать (просверлить), её можно облицевать каким-нибудь покрытием. Скважина – это отверстие в земле, нефтяники на сленге её часто называют «дыркой»: она ценна именно тем, что в скважине ничего нет, поэтому по ней можно качать нефть или газ. «Проходка» – это отверстие в сплошной стене, через которое можно пропустить трубу (часто это отверстие чем-то облицовывают).
Если вспомнить, что отверстие занимает определённый объём, определённое место в пространстве-времени, то дальше ему можно дать имя (инженеры так и делают), и обсуждать какие-то технологические операции с ним – изготовление, учёт, проверку, ремонт, «настройку».
Антракт – это темпоральная часть концерта или спектакля, когда отсутствует представление. Рассуждать об антракте можно так же, как и об инженерных отверстиях, но это будет не пространственная, а темпоральная часть спектакля или концерта.
Так же можно обходиться и со странными объектами, которые нужно учитывать поимённо, но которые трудно выделить как отдельные – например, сварные швы. Сварной шов нужно запроектировать, потом сделать, потом его регулярно нужно проверять. Это означает, что у сварного шва должно быть индивидуальное имя, это индивид. Если понимать, что сварной шов – это просто место в пространстве (и времени!), то никаких проблем в мышлении о таком объекте не появляется: это такая же часть системы как собственно труба, или шестерёнка, или отверстие.
Процессы и действия
В 4D экстенсионализме всевозможные «изменения», «действия», «процессы» (activities) оказываются составными четырёхмерными индивидами, состоящими из всех четырёхмерных индивидов, принимающих в них участие.
Тем самым задать «процесс» – это просто перечислить все индивиды63, которые взаимодействуют в его ходе, «участвуют» в процессе. Это взаимодействие меняет эти индивиды, меняет их состояния. А «участие» (participation) – это просто специализация отношения состава (composition, part_of).
Во многих графических языках моделирования стрелочки с ромбиками на конце как раз означают отношение состава, причём целое там, где ромбик, а часть – где ромбика нет. Жёлтый «шеврон вбок» это стилизованная стрелка, означает, что что-то меняется во времени, им обозначен «процесс». А голубые кружочки означают четырёхмерные объекты, участвующие в этом процессе.
Так, «танец» как индивид в какой-то момент времени начинает существовать, а в какой-то момент времени прекращает существование – процессы не вечны, как и любые другие индивиды. Танец является целым и включает в себя всех участвующих в нём индивидов как части (отношение участия как специализация отношения состава). Танец – это не только четырёхмерные танцоры, его исполняющие (танцоры – это темпоральные части каких-то людей, существующие от начала до конца танца), но и поддерживающий их фрагмент четырёхмерного пола, и ещё четырёхмерный объем воздуха с колебаниями в нём, ибо в этих колебаниях – музыка для танца. Танец – это индивид особого типа, «действие», но мы можем думать о нём примерно так же, как о «станке», «автомобиле», «отверстии». Сила системного мышления в том, что о самых разных предметах (включая процессы!) можно думать более-менее одинаково, и это сильно экономит мышление.
Мы обсуждали, что по индивиду можно условно «постучать», его можно «положить в тачку», на него можно условно «показать пальцем». Условность заключается в том, что индивид может быть недоступен, слишком маленьким, слишком горячим – это неважно, речь идёт просто о том, что мы говорим о физическом мире. Теперь понятно, что условно «постучать» можно и по процессу, действиям, какой-то иной активности. Условность тут в том, что в процессе участвует много самых разных индивидов, и трудно представить, как вы «стучите» по ним всем в ходе их взаимодействия. Просто нужно понимать, что все эти самые разные меняющиеся индивиды присутствуют в физическом мире, занимают экстенты, это не описания. Процесс тем самым физичен.
Даже по деятельности предприятия можно «постучать». Хотя деятельность предприятия много сложней танца, но по большому счёту не так уж от танца и отличается, там взаимодействуют в ходе этой деятельности люди, оборудование, здания и сооружения, сырьё и полуфабрикаты. Вот по ним и можно постучать. Предприятие существует в нашем мире. Несмотря на его процессный характер, можно с ним работать как с «вещью», хотя и состоящей из очень многих других вещей, участвующих в его деятельности.
И индивиды какого-то предприятия, и индивиды какого-то отдельного оргпроцесса64 тем самым становятся вполне «физичными», неабстрактными, имеющими пространственно-временную протяжённость, их легко представить. Для начала нужно просто перечислить входящие в оргпроцесс физические объекты-индивиды – и сразу станет понятно, одинаково ли вы понимаете этот оргпроцесс с другими людьми на предприятии.
Обычно люди с трудом договариваются о «процессах» в 3D, ведь процессы, т.е. разворачивающиеся во времени изменения очень трудно увидеть. В 4D люди договариваются об участвующих в процессе объектах, а происходящие с ними изменения описывают в терминах смены их темпоральных частей, каждая из которых представляет какое-то состояние объекта.
Мы часто будем приводить в качестве примера системы танец – танцы имеют процессную природу, они не такие тривиальные для мышления, как насосы или автомобили. Но танцы всё ещё много проще предприятия, поэтому думать о танцах проще, чем о предприятии. И совсем недаром одна из классических (год выпуска – 1999) книг Peter Senge по системному мышлению для предприятий называется «Танец перемен»65.
Компьютерные программы
Программа, как система – это 4D индивид, она занимает место в пространстве-времени, она материальна. Программа – это вещь, по ней можно постучать, ткнуть в неё пальцем! Эта вещь – физическая часть компьютера, которая проводит вычисления этой программы в ходе её работы по назначению (помним, что система определяется по основной её функции в момент, когда она полностью готова и работает, то есть выполняет своё назначение).
У программы-индивида в момент работы есть разные состояния (которые физически представляют собой состояния оперативной памяти и регистров процессора), а компьютер занят физическими процессами в ходе вычисления, эти процессы занимают пространство-время: пространство, в котором расположены взаимодействующие части компьютера, и время, во время которого программа выполняет свою функцию, то есть компьютер проводит вычисления:
Ещё раз подчеркнём: программу следует считать воплощением системы только в тот момент, когда она реально запущена на исполнение и работает, делает то, ради чего она была написана. Это довольно контринтуитивно, но исходный код программы – это не программа, а только описание программы. Поэтому программисты, которые считают, что их инженерная работа закончена в момент написания исходного кода – эти программисты глубоко неправы, это типичная ошибка. Из признания этой ошибки появилось целое движение DevOps66 – программисты признали, что они должны выполнять роль не только разработчиков кода программы (Development), но и сопровождением работы программы на рабочих серверах (Operations).
Исходный код – это описание программы (в классах, как любое проектирование), и перед использованием её нужно изготовить: откомпилировать, собрать, разместить в оперативной памяти нужного компьютера (возможно, перед этим оформив в какой-то контейнер) и передать на неё управление.
Тем самым программа – это процесс, и нас интересует именно тот процесс, который выполняется на правильном компьютере (или компьютерах – например, клиентском и в облаке), в тот момент, когда программа работает и выполняет свою функцию, своё назначение. Понятно, что от исходного кода до вот так работающей программы обычно долгий путь.
Ошибка, которую делают программисты, считая свой исходный код программой, ровно того же сорта, которую проектировщики и конструкторы делают, считая своей системой разрабатываемые ими информационные модели (а раньше – чертежи) и другую проектную и конструкторскую документацию. Карта не территория, меню не едят, на чертежах не летают, исходный код не хранит значений своих переменных в ходе исполнения.
Ещё одна ошибка – это считать программу отдельной системой, ибо регулярно в корпоративной разработке софта клиенты ожидают не столько корректную работу компьютера, сколько корректную работу той части организации, которую должен этот компьютер поддержать. Люди в организации должны вместе с программой сработать по какому-то организационному алгоритму. Такой совместный поток работы людей и компьютеров называется обычно workflow, хотя сейчас его чаще называют оргпроцессом. Чаще всего программа – это только часть этого оргпроцесса. Но для того, чтобы клиент смог получить результат оргпроцесса, эту программу нужно настроить, дать ей какие-то данные, научить с ней работать сотрудников и проверить не столько работу самой программы, сколько работу всего оргпроцесса в целом. Никого не волнует работа программы начисления зарплаты, волнует начисление зарплаты – и если начисления зарплаты не произойдёт, то программистам трудно будет объяснить, что с их программой всё в порядке, а неправы все остальные. Поэтому в проектах по разработке программ очень часто есть часть по работе с людьми и данными.
Ещё лет двадцать назад считалось, что мир захватят сложные алгоритмы, которые будут хитро перерабатывать относительно простые данные. Оказалось, что современное программное обеспечение сдвигается в сторону работы со сложными данными, при этом алгоритмы работы с этими данными относительно просты и единообразно устроены. А поскольку сложность из алгоритмов перемещается в данные, то системным подходом начинают интересоваться не только инженеры-программисты, но и инженеры данных. Никогда не нужно забывать, что данные – это в конечном итоге описания каких-то систем, но в момент их обработки какой-то программой они сами становятся частью системы этой программы, «вещью». То есть данные для обработки их программой тоже нужно «изготовить» из первичных описаний. И когда мы интересуемся, как получить из данных полезный результат, то как и в случае программ мы должны научиться их изготавливать из исходных данных – и мы по аналогии с DevOps будем говорить о DataOps67.
Системное мышление нужно как программистам, так и специалистам по обработке данных: в силу углубления разделения труда это уже не одно и тоже, а системное мышление поможет этим специалистам договориться между собой, а также с менеджерами и другими сотрудниками предприятий, для которых они работают.
Функции
Термин «функция», как мы обсуждали в первом разделе, имеет множество самых разных значений. Но в нашей книге мы главным образом будем использовать понимание функции как поведения объекта для какого-то назначения, то есть ролевого поведения. Функциональные объекты/элементы проявляют какую-то функцию по отношению к своему окружению, то есть играют в этом окружении какую-то роль. Молоток играет роль гвоздезабивального устройства. Функция (ролевое поведение) его – забивать гвозди. Эта функция ему назначена какими-то людьми, это не сам молоток себе эту функцию назначил. Например, мы можем взять микроскоп и назначить его молотком – забивать им гвозди. Молоток при этом – не более чем роль для микроскопа (или камня, или даже молотка), а поведение в этой роли – забивание гвоздей.
Приём мышления тут состоит в том, что для каждой роли (функционального объекта) предусмотрено культурно-обусловленное (иногда говорят «нормативное», обусловленное культурными нормами и правилами) поведение. Мышление позволяет использовать в какой-то роли самые разные предметы, и думать о них одинаково. Если функция – забивать гвозди и роль – молоток, то камень, микроскоп, специально сделанный молоток в общем и целом будут делать одно и то же. Знания передаются из ситуации в ситуацию в виде норм поведения для ролей, а не норм поведения для разных физических объектов.
Этот приём, когда вещи определяются по их основному назначению, по их ролевому поведению, позволяет существенно экономить мышление. Системы прежде всего рассматриваются как функциональный объект в тот момент времени, когда они выполняют свою функцию (то есть готовы и работают). Например, самолёт как система – это прежде всего функциональный объект, который летит, при этом перевозя по воздуху пассажиров и грузы. Назначение самолёта – самому летать. Назначение насоса – насасывать.
Системы именуются обычно по первичному их назначению, то есть по назначаемым им ролям, эти роли и определяют их поведение-функцию. Когда мы именуем микроскоп, то прежде всего имеем в виду то, что он позволяет «мелко смотреть» в тот момент, когда он полностью изготовлен и работает. Если бы мы считали, что микроскопом нужно гвозди заколачивать, назвали бы его молотком.
Физические и функциональные объекты
Функциональные объекты-роли интересны тем, что они могут исчезать из физического мира и снова появляться совершенно другими. Физичны ли они сами? Да, физичны, хотя некоторые философы и настаивают, что роли можно считать абстрактными объектами, но инженеры и менеджеры прислушиваются к другим философам, которые указывают, что большинство людей считает функциональные объекты существующими в тот момент, когда какие-то физические объекты играют их роль. Мы можем мыслить о Принце Гамлете, подразумевая что он существует в тот момент, когда его роль играет один из актёров (например, известный артист Василий Пупкин). По Принцу Гамлету в этот момент можно постучать, можно ткнуть в него пальцем, он занимает место в пространстве-времени.
4D экстенсионализм позволяет это осмыслить: даже если какой-то предмет определяется интенсионально (intentional), то есть по чьему-то намерению (intent), указанием назначения, то всё равно можно выяснить, какое место в пространстве-времени относится к этому предмету, и дальше уже проводить обычные рассуждения для физического предмета. Когда кто-то выделяет в соответствии с ролью функциональный объект, можно дальше отождествить его с каким-то физическим объектом, находящимся на том же месте, и считать, что функциональный и физический объект на какой-то период времени – это один и тот же объект.
Например, я могу выделить в своей жизни четырёхмерный индивид «моя любимая игрушка» – это плюшевый мишка в период 40 лет назад, игрушечный самолётик в период 30 лет назад и планшетный компьютер сегодня. А в промежутках, может быть, мне было не до игр, и функциональный объект «моя любимая игрушка» в этот период вовсе не существовал. Физические индивиды, играющие роль функционального объекта «моя любимая игрушка» несколько раз менялись, а вот функция (поведение – участвовать в моих играх) оставалась той же. Моя любимая игрушка в тот момент, когда она существует, вполне занимает экстент – по ней можно постучать, её можно понюхать, о ней можно говорить как о физически существующем предмете.
Зачем нужны функциональные объекты? Удобно выделить объект «президент США» – это такой четырёхмерный функциональный объект, выделенный на основе своей функции, роли в государственном управлении США. Он существует с 30 апреля 1789 года по настоящий момент, а также во многих возможных версиях будущего. При этом с 22 февраля 1732 по 14 декабря 1799 существовал обычный «четырёхмерный» человек Джордж Вашингтон (физический объект-индивид). Что же происходило с 30 апреля 1789 по 4 марта 1797 года? В этот период два четырёхмерных индивида пересеклись в одном и том же экстенте, одном и том же месте пространства-времени. Полная темпоральная часть «президента США» совпадала с полной темпоральной частью «Джорджа Вашингтона». А потом они снова разошлись – следующая полная темпоральная часть «президента США» совпадала с полной темпоральной частью Джона Адамса, потом с полной темпоральной частью Томаса Джефферсона, и т. д. Иллюстрирующая диаграмма взята из книги Matthew West68 (Рис. 1).
Четырёхмерная картина мира с функциональными объектами (в которых спрятана функция-поведение) и темпоральными частями (в которых спрятана развёртка во времени) оказывается очень удобной для описания изменений. Эти описания получаются более точными, строгими и компактными – и они одинаковы для разных ситуаций, что существенно экономит мышление.
Рис. 1
Вот, например, подумайте о замене насоса в установке первичной перегонке нефти или танцора в постановке балета «Спартак» – они абсолютно не отличается от схемы замены президента США: просто в функциональном объекте-роли меняют физический объект-исполнитель этой роли. Диаграммы будут идентичны.
Посмотрите на картинку (пример Matthew West) и сами разберите нарисованный на ней пример съёма двигателя с самолёта (Рис. 2).
Двигатель (с серийным номером) 329 (обычный индивид, физический объект) пересекается темпоральной частью с Самолётом 684 (обычный индивид).
Двигатель 329 (обычный индивид) совпадает темпоральной частью с темпоральный частью Левого двигателя самолёта 684 (функциональный индивид).
Левый двигатель самолёта 684 (функциональный индивид) является частью (то есть тоже пересекается, но во все моменты времени) с Самолётом 684 (обычный индивид).
Рис. 2
Таково необычное поведение четырёхмерных объектов – они могут совпадать друг с другом темпоральными частями или пересекаться ими. Стандартными отношениями состава (composition, «часть-целое») мы смогли описать то, для чего при иных подходах необходимо было бы определять специальные отношения «выполнять роль», «занимать место» и т. п. Может быть, это не так важно в разговорах людей, но это оказывается важным при «объяснении компьютеру»: при создании компьютерных баз данных, в которых перечисляются самые разные объекты, с которыми нужно работать.