пятница, 19 февраля 2016 г.

= ИНЖЕНЕРИНГ УДАЧИ И УСПЕХА



Это продолжение рассказа про инженерию и науку из моего учебника, начало (про ненаучность инженерии) и всякие оговорки в http://ailev.livejournal.com/1247245.html. Текст я привожу as is, без правок.

Инженерия научна
Инженерная наука

Можно думать о науке, ищущей компактное описание самой инженерии (engineering science) — эта наука должна рассказать о том, что делает системный инженер в ходе инженерного проекта.

Отношение к системной инженерии как к науке среди системных инженеров обычно отрицательное (хотя они и признают её полезность). Это отношение связано с тем, что “наука” обычно никогда не рассказывает, как породить ту или иную идею. Без “науки” трудно решать практические задачи, но сама наука обычно ничего не говорит о том, как породить идею решения. Наука лишь рассказывает о том, какие есть объекты, их характеристики и отношения друг с другом и что можно с ними делать. Что с этими объектами делать для решения конкретных задач — неведомо. Никакое знание физики не помогает решать даже олимпиадные задачки, что уж говорить о решении реальных проблем. Но без знания физики и олимпиадные задачки и инженерные проблемы решать труднее. Наука аналитична, инженерия же связана с решением проблем (проблема — когда никто не знает, что делать) и требует синтеза.

К сожалению, сведение всей инженерии только к науке и “аналитике” в ущерб практической деятельности по решению проблем, в том числе с помощью “ненаучных” по своей природе догадок-эвристик отражено и в учебных курсах по инженерии. Так, руководитель NASA Michael Griffin в речи 2007 г. System Engineering and the Two Cultures of Engineering (http://www.spaceref.com/news/viewsr.html?pid=23775) пишет, что:
I have always loved the view of the engineering profession captured by the great Theodore von Karman when he said, "Scientists study the world as it is; engineers create the world that has never been." Less eloquently, engineers are designers; they synthesize knowledge to produce new artifacts. Von Karman speaks to what most of us, and certainly most laymen, would consider the essence of engineering: engineers create things to solve problems.
But all of us who are engineers know that the engineering profession also has a rich scientific side, the analysis of these artifacts and the prediction of their behavior under various environmental and operational conditions. Adapting von Karman's observations, it may be said that engineering science is the study of that part of the world which has been created by man.
Sadly, many students have been led to believe that engineering science is engineering! In a curriculum of 120 or more credits leading to a bachelor's degree in a branch of engineering, the typical student is required to take one, or maybe two, courses in design. Everything else, aside from general-education requirements, focuses on the analysis, rather than the creation, of engineered objects. Graduate education often has no design orientation at all. So, engineering as taught really deals with only a part of engineering as it is practiced.Основное, что должен уметь делать системный инженер — это создавать материальные объекты, а не анализировать их. Упор на синтез, а не на анализ характеризует инженера.

Интересно, что примерно такое же рассуждение проводится про образование менеджеров-предпринимателей. Henry Minzberg считает, что выпускников MBA (Master of Business Administration) готовят как аналитиков, а не синтетиков. Из них получаются не столько предприниматели-руководители предприятий, сколько начальники финансовых и прочих аналитических отделов компаний — тех подразделений, где основным продуктом являются “отчёты”. А потом совсем другие люди (часто с инженерным образованием) по этим отчётам принимают синтетические решения и реализуют какие-то идеи на практике.

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

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

Наша книга решает вопрос о балансе инженерной науки и инженерной практики так:
● Она сначала сосредотачивается о самых общих теоретических знаниях об инженерной науке. Знание принципов освобождает от знания множества фактов. Нужно знать, какие основные объекты, с которыми работают инженеры, в чём суть их работы.
● Она содержит ссылки на материалы о практиках моделеориентированной системной инженерии. Знакомство с конкретными практиками крайне важно, но оно происходит на втором шаге: нужно понимать, что мастерство во владении отдельными практиками набирается достаточно долго, и по каждой практике есть книжки даже более толстые, чем наша.

Теоретическое знание нашей книги должно “оживляться” на материале конкретного инженерного проекта. Книга не рассчитана только на прочтение, она должна лечь в основу практической работы (учебной или реальной), в которой теоретическое знание книги соединяется с практическим опытом его использования. Нет ничего практичней, чем хорошая теория, но без занятий реальной инженерной деятельностью эту практичность предъявить нельзя. Тот, кто прочёл много книг по танцам, но никогда не танцевал сам, вряд ли сможет станцевать при случае. К инженерам (менеджерам, учёным, кому угодно) это тоже относится.

Научное (формальное) основание системной инженерии

Системная инженерия и менеджмент опираются не на теории, а на эвристики. Они эмпирические, а не “строго научные” дисциплины типа физики или химии. 

И тем не менее, есть ли какое-то научное (формальное, теоретическое) основание системной инженерии, т.е. существует ли компактное формализованное описание системноинженерного знания? Существует ли оно, или речь идёт только об искусстве (humanities, куда относятся литература, изобразительное искусство, кино и т.д.)? Почему системным инженерам выдают master of science, а не master of art in Systems Engineering?

Действительно, в большинстве случаев системных инженеров учат работать примерно так, как учат писателей, композиторов и прочих людей “творческих профессий”: им дают ознакомиться с работами предшественников, рассказывают о том, что в этих работах хорошего и что плохого, как называются те или иные объекты и практик (например, что обычный текст называется “проза”, в песне можно выделить “мелодию”) учат каким-то отдельным приёмам работы, которые предположительно должны давать хорошие результаты.

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

В последнее время предприняты некоторые попытки разобраться с понятиями системноинженерного проекта (в рамках работ Русского отделения INCOSE и SEMAT). Настоящий курс использует все эти наработки (http://www.slideshare.net/ailev/course-essence-sysengomgsep13), задавая научное основание для описания практик системной инженерии.

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


Первое поколение — это алхинженерия (”алхимическая” инженерия), по аналогии с алхимией по сравнению с химией. Помните алхимические неформальные описания химических реакций в те времена, когда не было ещё развитой химической нотации и понимания различий между химическими элементами и сложными веществами? Вот пример (http://gothicsstyle.ru/2011/02/02/srednevekovaya-alximiya-recepty/): «Чтобы приготовить эликсир мудрецов, или философский камень, возьми, сын мой, философской ртути и накаливай, пока она не превратится в зелёного льва. После этого прокаливай сильнее, и она превратится в красного льва. Дигерируй (нагревание твёрдого тела с жидкостью, не доводя её до кипения) этого красного льва на песчаной бане с кислым виноградным спиртом, выпари жидкость, и ртуть превратится в камедеобразное вещество, которое можно резать ножом. Положи его в обмазанную глиной реторту и не спеша дистиллируй. Собери отдельно жидкости различной природы, которые появятся при этом. Ты получишь безвкусную флегму, спирт и красные капли. Киммерийские тени покроют реторту своим темным покрывалом, и ты найдёшь внутри неё истинного дракона, потому что он пожирает свой хвост. Возьми этого чёрного дракона, разотри на камне и прикоснись к нему раскалённым углём. Он загорится и, приняв вскоре великолепный лимонный цвет, вновь воспроизведёт зелёного льва. Сделай так, чтобы он пожрал свой хвост, и снова дистиллируй продукт. Наконец, мой сын, тщательно ректифицируй, и ты увидишь появление горючей воды и человеческой крови (Dumas, 1837, с. 30).

Современное пояснение: “Философская ртуть — свинец. Прокалив его, получаем массикот (желтую окись свинца). Это зеленый лев, который при дальнейшем прокаливании превращается в красного льва—красный сурик. Затем алхимик нагревает сурик с кислым виноградным спиртом — винным уксусом, который растворяет окись свинца. После выпаривания остается свинцовый сахар — нечистый ацетат свинца (чистый Рb(С2Н3OO)2 3Н20—это бесцветные прозрачные кристаллы). При его постепенном нагревании в растворе сперва перегоняется кристаллизационная вода (флегма), затем горючая вода—«пригорелоуксусный спирт» (ацетон) и, наконец, красно-бурая маслянистая жидкость. В реторте остаётся чёрная масса, или чёрный дракон. Это мелко раздробленный свинец. При соприкосновении с раскалённым углём он начинает тлеть и превращается в жёлтую окись свинца: чёрный дракон пожрал свой хвост и обратился в зелёного льва. Его опять переводят в свинцовый сахар и повторяют все вновь.

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

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

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

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

Системный подход как научное основание системной инженерии

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

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

Системноинженерное мышление коллективно

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

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

Тем самым в основании системноинженерного мышления лежат:
● Системный подход (как думать о системах)
● Ситуационная инженерия методов (как думать о деятельности)

А в чём мышление?

Мышление появляется там и тогда, где и когда нужно решить проблемы — что-то, что непонятно как решать. До этого момента можно не мыслить, можно заимствовать какие-то справочные решения, использовать уже имеющиеся знания, “на автомате”. Хорошо сформулированная проблема обычно в себе содержит явное противоречие, которое необходимо “снять” — только в этот момент включается мышление, только в этот момент нужно “сесть и подумать” (а не “вспомнить и применить”). Иногда говорят, что мышление появляется, когда нужно “перевести проблемы в задачи”, т.е. создать список работ, которые понятно, как делать, и которые вместе решают проблему.

Системная инженерия тут неоригинальна, решение проблем путём формулирования и снятия противоречий (коллизий) присуще и теории ограничений Элияху Голдратта (”грозовая туча”), и ТРИЗ+, и системомыследеятельной методологии (школа Г.П.Щедровицкого).

Системная инженерия ничего не говорит про то (не предлагает никаких “методов творческого мышления”, таблиц решений, способов развития воображения), как снимать противоречия. Чудес не бывает, думать тут приходится не меньше и не больше, чем в любых других школах мысли. Системная инженерия позволяет удерживать вИдение всей системы в целом при решении проблем, не терять за деревьями леса, не терять за листьями дерева.

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

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

Итого: системноинженерное мышление ничего не говорит про содержание мышления, только про его форму. Более того, системная инженерия делает всё, чтобы не нужно было мыслить, а нужно было бы просто применять в проекте уже известные технические решения. Но мощь системной инженерии будет проявляться в тот момент, когда известных технических решений не будет и нужно делать первую из данного вида (first of a kind, FOAK) систему, или обходить какие-то жёсткие ограничения, которые не встречались раньше.

Наука/менеджмент = наука/инженерия

Менеджмент связан с системами особого рода — организациями, которые состоят не только из зданий, оборудования (капитала), не только из запасов материалов и денег, но и из людей. Часть менеджерской профессии при этом — инженерия предприятий: замысливание (conception), проектирование, эксплуатация, модернизация и ликвидация предприятий. Конечно, работа с людьми принципиально отличается от работы с железом или программным обеспечением. Но параллелей между инженерным и менеджерским мышлением много больше. Настолько больше, что правильно было бы говорить об общем для них системном мышлении, а не системноинженерном мышлении. И знание о том, как описывать деятельности для них тоже будет общим.

По большому счёту, к менеджменту более-менее приложимы те же рассуждения, которые приведены тут про инженерию. Менеджмент тоже ориентирован на синтез, а не на анализ. Он основан на эвристиках, и использует теории тогда, когда эти теории есть. Конечно, значительная часть этих эвристик отличается от инженерных эвристик. Более того, менеджерские эвристики не записывают в толстые справочники (хотя посмотрите на многочисленные регламенты по организации работ в любом предприятии — не напоминает инженерные справочники? Единственное отличие, что такие справочники готовят на каждом отдельном предприятии, редко используются общие справочники для многих предприятий).

Так что материал нашей книги в части того, как описывать мышление и деятельность, во многом применим и к менеджменту, хотя и с некоторыми оговорками.


19 февраля 2016, 15:47

Комментариев нет:

Отправить комментарий