18+
реклама
18+
Бургер менюБургер меню

Анатолий Левенчук – Системная инженерия – 2022 (страница 2)

18

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

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

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

Изложение опирается на знакомство с фундаментальными мыслительными практиками интеллект-стека (данный курс завершает знакомство с этими практиками).

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

Концептуально все разделы курса согласованы между собой, хотя в изложении явно прослеживается двойственность использования и более старых идей «водопадной» (одноцикловой), и современных идей непрерывной инженерии.

Основной материал курса изложен с использованием не столько стандартов системной и программной инженерии (они вышли до 2015 года, поэтому не отражают произошедшего с тех пор сдвига в непрерывную инженерию, при этом они продолжают использоваться в сильно зарегулированных госорганами больших инженерных проектах создания кибер-физических систем типа атомной электростанции и авианосца, изменений инженерии там можно ожидать очень нескоро), сколько по современной литературе 2017—2022 года. В нашем курсе/книге даны ссылки на почти два десятка учебников системной, программной инженерии и инженерии предприятия, разъясняющих подробно те или иные положения курса. Больше половины этих учебников отсылают к примерам из программной инженерии, но мы надеемся, что при их изучении будут учтены идеи безмасштабности из нашего учебника (а идеи непрерывности в них всех уже есть).

Для примеров в книге/курсе берутся главным образом практики программной инженерии и инженерии киберфизических систем, изредка практики инженерии предприятия. В следующих версиях предполагается увеличить число примеров других систем. Курс не делает акцента на моделеориентированную1 системную инженерию, ибо сегодня другой системной инженерии уже не бывает, вопрос лишь в выборе уровня формальности моделирования, опоры на самые разные языки моделирования. Эти языки системного моделирования отнюдь не все относятся к визуальным языкам начала 21 века, принятым для больших окологосударственных проектов классической системной инженерии. Материал по моделированию, поднимаемый в рамках курсов-пререквизитов по онтологике и коммуникации, системному мышлению, методологии, и примеры построения различных инженерных моделей даются в нашей книге/курсе в их текущем разнообразии. Но упор делается на то, чтобы использовать для инженерного моделирования подручные low code системы (productivity tools), в том числе системы табличного моделирования (типа coda.io, notion.so и их варианты), а также всевозможные прикладные инженерные моделеры различных прикладных инженерных дисциплин.

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

История курса/книги начинается с 2012 года, когда автор начал чтение односеместрового курса «Введение в системную инженерию» (Foundations of Systems Engineering) на межфакультетской (впоследствии – межвузовской) кафедре технологического предпринимательства МФТИ. Буквально на следующий год курс был поделен на семестровый курс системного мышления, и отдельно – семестровый курс системной инженерии. Обучение на кафедре по этим курсам затем продолжили выпускники программы (Михаил Бухарин и Илья Бурдин). В Школе системного менеджмента работа над курсом продолжилась, несколько лет там курс «Системная инженерия» на базе учебника системного мышления читал Вячеслав Мизгулин. В 2022 году было окончательно сформировано видение опоры курса системной инженерии на мыслительные практики интеллект-стека и необходимость безмасштабного курса, а также отражение непрерывного характера инженерии, окончательный отход от «водопадной» модели с её одним стадийным «жизненным циклом».

Это новое видение нашего курса/книги отразило опыт многочисленных попыток преподавать какие-то основы системной инженерии в самых разных вузах: поскольку часы в программе на пререквизиты к курсу не были предусмотрены, большинство этих попыток оказались неудачными. Как минимум, для курса оказались нужны знания онтологики, основ системного подхода, методологии, а также безмасштабное изложение материала, чтобы решить вопрос о применимости системной инженерии к проблемам инженерии предприятия и согласовать материал с трендами в INCOSE VISION 2035, которые явно указывают на рост внимания системных инженеров к системам уровня живых существ, личности, организации, сообществ, обществ. В программной инженерии массовые изменения по линии непрерывности разработки прошли с переходом на микросервисные архитектуры, это стало массовым и отразилось в учебной литературе приблизительно с 2017 года (хотя сами идеи обсуждались ещё с момента выхода Agile manifesto в 2003 году). Системное мышление, которое в третьем своём поколении вышло за пределы жизненного цикла и включило в себя идеи эволюции, базирующиеся на общих физических законах, как раз помогает в понимании этого направления развития инженерных практик.