Достаточно сложно определить на русском языке, что такое системная инженерия, уже только потому, что само понятие «инженерия» вобрало в себя со временем слишком много всего, не говоря уж об инжиниринге. Большую работу на тему определения и стандартизации системной инженерии на русском языке провел Виктор Константинович Батоврин, поэтому я не буду на этом останавливаться подробно. Отмечу лишь, что процесс пересмотра стандартов системной инженерии в профессиональных сообществах идет постоянно. Не так давно в Москве сформировалось Русское отделение международного совета системных инженеров INCOSE, где вопрос определения системной инженерии периодически обсуждался и продолжает обсуждаться по сей день. Наиболее простым и понятным определением, хотя и не академическим, я считаю для себя следующее, предложенное Анатолием Игоревичем Левенчуком:
Под инженерией я, в свою очередь, буду понимать в этой книге любое спланированное изменение окружающего мира, результат которого может быть проверен на соответствие задуманному плану. Поскольку эмпирический научный метод Бэкона время от времени переживает очередную реинкарнацию, например в цикле Шухарта-Деминга (рис. 1), то мне ничего не остается, как сослаться на Бэкона и его предшественников (античных и, возможно, более ранних), пытающихся формализовать здравый смысл или, как чаще говорили в те времена, Божественный замысел. В итоге получим, что инженерия – это эмпирический научный подход к прикладным задачам. Теперь, внимание. Поскольку инженерия, сама по себе, тоже является прикладной задачей, то можно себе представить эмпирический научный подход к инженерии. Это и есть системная инженерия.
Рис. 1. Обобщенная схема инженерной деятельности как цикл Шухарта-Деминга
Системный подход – тема для отдельного собрания сочинений. Сейчас уже, как мне кажется, бесполезно говорить об истоках системного подхода, потому что уровень информационного шума вокруг этой темы слишком велик. Я, конечно, не откажу себе в удовольствии сослаться на работы Берталанфи и Холла, но надо понимать, что всё то же самое, только другими словами, существовало гораздо раньше. Все содержание этой книги, собственно, и будет посвящено конкретным примерам применения системного подхода к инженерии. Теоретическую базу системного подхода, или даже правильнее сказать – системных подходов, потому что у многих авторов он свой собственный, вы всегда сможете найти в многочисленной литературе. Системный подход, в самой прямой трактовке, без каких-либо лишних теоретизирований, означает следующее – работа с объектом как с системой. К сожалению, определений системы тоже очень много, и мне снова придется давать свою вольную трактовку – рекурсивное определение системы. Заранее предупреждаю, что программистам будет проще пережить следующий абзац.
Система – это элемент другой системы, обладающий протяженностью в пространстве и времени, и предназначенный для выполнения определенного набора функций в другой системе в интересах ограниченного набора сторон, а также состоящий из элементов, функции которых отличны от функций определяемой системы, и функции определяемой системы не являются результатом сложения функций ее элементов.
Система обладает жизненным циклом, захватывающим пространственно-временную протяженность системы не только на стадии функционирования, но и на всех других – от замысла до вывода из эксплуатации. Жизненный цикл системы, в простейшей трактовке, представляет собой отрезок времени, разбитый на стадии. Однако, каждая стадия жизненного цикла соотнесена с практиками, которые используются на этой стадии обеспечивающими системами. Способ разбиения временного отрезка (от замысла до вывода из эксплуатации) на стадии, определяемые уникальными наборами практик, сегодня часто называют моделью жизненного цикла системы.
Фактически, жизненный цикл системы – это расширенное четырехмерное (пространство и время) понимание системы, включающее в себя также и другие системы, которые обеспечивают «жизнь» первой.
Например, когда мы говорим о жизненном цикле моста, то обсуждаем конкретную деятельность, в том числе, работу проектно-строительных компаний, а не только сам мост.
Заинтересованные стороны (стейкхолдеры) – это роли, в которых окружающие систему люди воздействуют на систему, а система имеет воздействие на них хотя бы раз в течение всего жизненного цикла системы.
Весь системный подход, в современном его изложении, крутится вокруг стейкхолдеров и их интересов. На рисунке 2 приведена схема связи между определением и воплощением системы через стейкхолдеров.
Рис. 2. Связь между определением и воплощением системы через стейкхолдеров (ISO 42010 – OMG Essence), из материалов А. И. Левунчука
Определенные выше понятия будут активно использоваться в дальнейшем изложении. Более подробное описание этих понятий, но на английском языке, вы можете найти в своде знаний по системной инженерии (SEBoK). Если эта книга у вас пойдет тяжело, рекомендую сначала разобраться с дисциплиной системного мышления, прекрасно изложенной в учебных курсах и материалах Анатолия Игоревича Левенчука.