Читать книгу «Системная инженерия – 2022» онлайн полностью📖 — Анатолия Левенчука — MyBook.

Системность инженерии как задающая её безмасштабность и непрерывность

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

• Изменение мира происходит на нескольких системных уровнях, выделяемых по отношению «часть-целое» несколькими разными способами в момент эксплуатации, это тезис первого поколения системного мышления (это всё подробно разъяснялось в курсе практического системного мышления).

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

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

Если принять эти положения в полной мере, то системная инженерия будет безмасштабна/scaleless: не зависеть от масштаба/размера систем, эволюционного системного уровня. Термин этот идёт из физики, иногда об этом говорят как многомасштабность/multiscale, но это менее точно: применимость ко всем масштабам (безмасштабность) – это вовсе не учёт только нескольких выделенных заранее масштабов, но отсутствие привязки к масштабу в рассуждениях.

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

В нашем курсе мы довольно грубо и почти произвольно в методических/учебных целях определяем уровни этого системноинженерного/эволюционного стека физических масштабов как (от более крупных к более мелким масштабам):

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

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

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

Общество – каталлактическая самоорганизация по фон Хайеку3 (не знаем контрагентов в лицо, ибо их слишком много, не знаем интересов этих контрагентов, ибо они могут занимать самые разные роли), но общество в целом тоже может быть достаточно организованным и некаталлактически (то есть через силовые органы власти как организации с понятным подчинением принуждать всех остальных исполнять приказы нескольких человек), чтобы выставлять границы на свою территорию и противодействовать своему исчезновению при агрессивных изменениях окружения (скажем, войны с другими обществами) или изменениях в своей организации (скажем, захват власти религиозным фанатиком или диктатором и последующая сознательная или даже неосознаваемая их работа по уничтожению этого общества в силу каких-то иррациональных убеждений)

Сообщество – определения subculture, counterculture, community, community of practice, learned society, school of thought из википедии: все говорят об одном и том же, подчёркивая разные стороны. И мы тоже можем говорить разным языком, подчёркивая разные стороны. У нас субкультура, контркультура, сообщество практики, сообщество наученных (деятелей, не учёных!), «незримый колледж». Но можно говорить и о племени (очень модно!), и о «муниципальном образовании» типа «деревня, где все друг друга знают», землячестве бывших (или даже нынешних) членов одного общества в каком-то другом обществе. Ориентируемся на число Данбара4 (150), но с учётом современных компьютерных средств («записных книжек», социальных сетей) человеческая «память на лица» быстро растёт. Но в сообществе всё равно может быть и больше людей/личностей, чем можно помнить даже с помощью записной книжки. Например, число системных инженеров киберфизических систем, которые вступили в Международный совет по системной инженерии на 2022 год – более 19000, это означает, что эти люди считают себя членами сообщества системных инженеров, тем самым примерно известны их ролевые интересы, но это не означает, что речь идёт о традиционной организации, которая создаёт какую-то целевую систему, или что все там примерно знакомы друг с другом и доверяют друг другу сильно больше, чем своим соседям по улице. Сотрудники штаб-квартиры INCOSE, однако, занимаются построением сообщества системных инженеров как целевой системы (об INCOSE в нашем курсе будет отдельно сказано через несколько разделов). А маркетологи пытаются делать сообщества потребителей каких-то продуктов, «клиентуры» как множества клиентов.

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

Личность – и тут «инженерия личности» (хотя так и не говорят, но мы советуем думать именно так!) сводится к разным психотерапиям («ремонт» личности), коучингу (помощь в стратегировании), образованию, просвещению. Включать ли сюда разные варианты обучения «разумных роботов», то есть личностей не на базе homo sapiens (xGI, разные виды general intelligence6)? Почему бы и нет. Поэтому тут можно рассматривать и проекты AGI (artificial general intelligence), и проекты создания киборгов в части экзокортекса (грубо говоря, «добавка памяти и возможности вычислений», ибо добавка искусственного зрения, печени и т. д. – это уже более низкий системный уровень, «существа»).

Существо – тут разведение живых существ, включая «системную биологию» как разработку и производство полностью искусственной жизни. Но в целом тут инженерия и вирусов, и бактерий, и растений (агрономия), а дальше червей, рыб и до зверей (включая приматов и даже человека вне аспектов его разума). Медицина/ветеринария, фермерство, генная инженерия – это всё оказывается инженерными дисциплинами, «изменением мира к лучшему». Сюда же трансгуманизм как отрыв личности от обязательного использования генома homo sapiens (хотя усиление интеллекта живых организмов уровня выше возможности планировать представляется принадлежащим к уровню личности. Граница существа и «разумного существа» весьма размыта, как и граница «робота», «киборга», «существа»).

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

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

Конечно, в системноинженерном/эволюционном стеке все обычные проблемы представления системных уровней какой-то системы в виде даже не дерева, а «стека»:

• Каждый уровень включает не одну систему, а множество их самых разных, это больше «иерархия/дерево», а не «стек».

• Легко находится множество подуровней внутри одного уровня, и может существовать множество вариантов такого стека

• Не оговорено, это функциональное или конструктивное разбиение, а также возможность одновременной множественности таких разбиений (считаем, что на границах уровней оно совпадает, но это не всегда факт: так, внутри одного и того же общества легко выделить разные сообщества, составленные из одних и тех же людей, и даже разные организации. СМД-методология называет это «популятивными объектами»7, когда люди одновременно входят в состав разных их устойчивых групп, термин «популятивности» позаимствован был из биологии).

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

Масштабы времени, важные для выхода в непрерывную разработку:

• Эксплуатация одной версии системы

• Жизненный цикл одной версии системы

• Непрерывная инженерия множества версий (множество жизненных циклов «замысел-проектирование-изготовление-эксплуатация-вывод из эксплуатации»).

Конечно, вы можете, и даже должны адаптировать эти стеки для ситуации вашего проекта. Самый простой способ это сделать – это выписать конкретные масштабы и виды систем из вашего проекта, аннотировав их типами из нашего курса/учебника (помня при этом, что эти уровни выделены более-менее произвольно, для целей упрощения понимания). Например, если вы создаёте таблетку из лактобактерий как биодобавку, вам потребуется как-то изменить (в том числе уговорить принимать эту таблетку!) системы на следующих уровнях стека:

• Потребнадзор::сообщество и общество

• Клиентура::сообщество (маркетинг)

• Клиент::личность

• Желудок и кишечник::существо

• Таблетка::вещество

• Лактобактерия::существо

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

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

Потребуется каждый раз описывать функциональность системы и определять приоритеты в архитектурных характеристиках (надёжность, изменяемость и т.д.) для систем из каждого уровня, принимать архитектурные решения, разрабатывать концепцию системы и изготавливать её, вводить в эксплуатацию и заниматься всеми остальными инженерными практиками, хотя они и будут носить разные имена и для веществ, и для существ, и для личностей, и так далее. И это простой и обозримый пример, хотя уже и в нём нужно затрагивать проблемы высоких уровней. Скажем, все штаммы молочнокислых бактерий, грубо говоря, «штаммы кефира и йогурта разных сортов», обладают примерно одинаковой полезностью по влиянию на микрофлору и уж точно не являются лекарствами, их даже «биодобавками» считать сложно – если вы упакуете кефир или йогурт в капсулы, они ж не станут от этого «биодобавками»? Но вы можете использовать «связи в министерстве», чтобы этот кефир с йогуртом в капсулах назвать лекарством, получить лицензию и устроить на этом маркетинг! Это этично, или нет? Хорошо ли от этого будет людям (они получат плацебо!), а хорошо ли будет (гражданскому) обществу?

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

Если вы хотите изменить мир хоть неживой, хоть живой, хоть в небольших масштабах, хоть в больших – вы должны будете предположить функцию вашей системы, описать конструкцию, изменить физический мир, чтобы реализовать конструкцию, а потом подстраивать получившуюся систему к непрерывно меняющимся условиям, причём делать это на множестве системных уровней на множестве масштабов времени. Неважно какими вы словами это называете, насколько различны те системы, которые вы затрагиваете своими изменениями мира к лучшему, и насколько сильны традиции работы с этими системами (в этих традициях может что-то не учитываться из всего перечисленного, они же именно «традиции», поэтому могут не учитывать знаний современной инженерии). Вы должны всё это делать, и делать на многих масштабах/системных уровнях как вещества, так и масштабах времени (эксплуатация, один жизненный цикл системы или фичи, эволюция как множество жизненных циклов). Поэтому такой подход и называется системной инженерией, а не просто инженерией. Безмасштабность и непрерывность просто характеризуют её современное состояние, отвечающее третьему поколению системного мышления, появившемуся по историческим масштабам совсем недавно, в десятые годы 21 века.