Система управления жизненным циклом сложных инженерных объектов
Основные мысли данного длинного текста (полученного переписыванием http://ailev.livejournal.com/926668.html и http://ailev.livejournal.com/927713.html):
-- СУЖЦ и PLM тесно связаны, но не одно и то же;
-- основное назначение СУЖЦ -- устранение и предотвращение широко понимаемых проектных коллизий;
-- архитектуры СУЖЦ могут быть самые разнообразные, общего рецепта тут нет;
-- выбор архитектуры СУЖЦ делится на содержательное рассмотрение и оформление результатов;
-- содержательное рассмотрение архитектуры СУЖЦ прежде всего инженерное, а не айтишное.
1. Что такое система управления жизненным циклом
Сложные инженерные системы (атомные электростанции, оффшорные буровые платформы, вертолёты и т.д.) проходят жизненный цикл, занимающий десятки лет – от замысла до вывода из эксплуатации. За это время инженерная система проходит множество различных состояний: существует как набор презентационных документов для инвесторов и потенциальных пользователей, многотомных детальных требований, часть из которых существует в виде обязательного отраслевого регулирования, архитектуры (эскизного проекта), рабочей документации типового проекта, свежеизготовленных комплектующих и жидкого бетона, эксплуатируемой и обслуживаемой затем десятки лет системы «в металле и бетоне», но и после этого система продолжает существовать -- в виде мусора и лома.
«Управление жизненным циклом» -- это термин, которым люди пытаются обозначить практику обеспечения связности всех этих состояний системы, как в прямом направлении (например, передача рабочей документации на стадию сооружения), так и в обратном направлении (например, учет данных по надёжности аналогичных эксплуатируемых уже систем на стадии проектирования новых). Эту практику трудно выделить из традиционных практик системной инженерии – управления требованиями, создания системной архитектуры, системной интеграции, верификации и валидации и т.д.. При внимательном разбирательстве оказывается, что суть разговоров про «управление жизненным циклом» сводится к необходимости освоения привычных для системной инженерии практик управления информацией («нужная информация должна быть у нужных заинтересованных сторон вовремя, и в доступной для её использования форме»), управления конфигурацией («проектная информация должна соответствовать требованиям, информация «как построено» должна соответствовать проекту, в том числе проектным обоснованиям, физическая система должна соответствовать информации «как построено», а разные части проекта при этом должны соответствовать друг другу», иногда часть этой практики назвают «управление изменениями»).
Системная инженерия редко использует понятие «управление жизненным циклом», но это понятие часто используется поставщиками программных систем PLM (Product Life cycle Management).
В России сейчас провоходит серия межотраслевых и международных мероприятий (совещаний, конференций и т.д.), где активно используется название "система управления жизненным циклом" (СУЖЦ), вводимое взамен PLM (product lifecycle management). Эта замена термина требует некоторой расшифровки.
Слово "продукт" из PLM в СУЖЦ пропало не случайно, ибо речь идет о сложных иненерных объектах – если вертолёт еще можно с натяжкой назвать «продуктом» в силу его серийности, то атомная станция «продуктом» обычно уже не называется. Поэтому "жизненным циклом" какой именно системы тут «управляется», нужно уточнять в каждом конкретном случае. «Система УЖЦ системы» немного запутывает, но именно это и имеется ввиду. Чтобы не слишком путаться, в название этой статьи я вынес «СУЖЦ управления сложным инженерным объектом», но «сложный инженерный объект» -- это просто расшифровка слова «система».
«Система УЖЦ» -- это прежде всего социотехническая система, т.е. она включает не только программные средства PLM, но и организацию людей (практики работы, профессиональные роли, необходимый инструментарий для поддержки этих профессиональных ролей, утвержденные виды жизненного цикла каких-то конкретных рабочих продуктов и т.д.). Поэтому специалисты в слове "система" слышат одно ("информационная система", прежде всего PLM), а менеджеры -- совсем другое ("система менеджмента", способ организации работ). Тут еще нужно отметить западную традицию произвольного добавления слова management в сочетаниях «чего-нибудь менеджмент».
По-новому сформулированная СУЖЦ не использует PLM как обязательный класс программных средств, вокруг которого такая система строится. В крупных инженерных проектах обычно используется сразу несколько (чаще всего существенно "недоосвоенных") PLM разных вендоров, и при создании СУЖЦ речь идёт обычно уже об их межорганизационной интеграции. Конечно, при этом решаются и вопросы, как интегрировать в СУЖЦ информацию и тех систем, которые еще не имеют связи с какой-то из PLM систем расширенного предприятия. Термином «расширенное предприятие» (extended enterprise) обычно называют созданную посредством системы контрактов организацию из ресурсов (людей, инструментов, материалов) участвующих в конкретном инженерном проекте различных юридических лиц. В расширенных предприятиях ответ на вопрос, в какую именно PLM интегрируются данные какой именно из систем CAD/CAM/ERP/EAM/CRM/и т.д.. становится нетривиальным: владельцам разных предприятий не предпишешь использовать программные средства одного поставщика.
А поскольку PLM-система всё-таки являтся программными средствами, а "система управления" из СУЖЦ явно понимается в том числе как "система менеджмента", то термин СУЖЦ подразумевает явно и организационный аспект, а не только аспект информационных технологий. Тем самым фраза "использование PLM для поддержки системы управления жизненным циклом" вполне осмыслена, хотя может запутывать при дословном переводе в ней “PLM” на русский.
Тем не менее, понимание "системы управления жизненным циклом", когда ею занимаются специалисты из IT-служб, немедленно нивелируется назад к "только софту", подозрительно напоминающему программные средства PLM. И после этого переупрощения начинаются трудности: «коробочная» система PLM от какого-то поставщика программных средств автоматизации проектирования обычно сразу представляется конструктивно, как набор программных модулей из каталога этого поставщика, вне связи с поддерживаемыми инженерными и менеджмерскими функциями, и рассматривается как тройка из датацентрического репозитория данных жизненного цикла, «системы документооборота» (workflow engine) для поддержки «управления» -- что бы под этим «управлением» ни понималось, и «портала» для просмотра содержимого репозитория и состояния документооборота.
Дальше люди из IT-служб начинают сочинять, для чего бы инженерам и менеджерам была бы нужна такая система: какие могли бы быть функции такой системы. Инженеры, едва-едва освоившие САПР, и озабоченные спорами об осмысленности перехода от 2D к 3D и от бумаги к электронным документам, обычно отмалчиваются. За них решения принимают менеджеры, разворачивая из слов "жизненный цикл" каждый свою любимую идею: кто-то настаивает на использовании PLM в СУЖЦ для заглядывания в конец жизненного цикла (предусмотреть стадию вывода из эксплуатации) и с удивлением узнаёт, что PLM тут не помощник, кто-то рассматривает PLM в СУЖЦ как средство управления старением (предусмотреть увеличение длительности стадии эксплуатации), и так же остаётся разочарован, кто-то настаивает на обеспечении коллаборативного проектирования (collaborative design), хотя эта мода в Россию придёт только через пару лет, некоторые указывают на требования иностранных заказчиков инженерных систем вести "управление конфигурацией", подразумевая при этом "управление изменениями", а некоторые менеджеры мечтают об использовании PLM для менее нервной передачи рабочей документации от контракторов-проектантов контракторам по сооружению.
В результате за десятью функциональными зайцами сразу погнавшиеся менеджеры оказываются не в состоянии поставить задачу IT-службам, закупленные системы PLM не оправдывают их ожиданий и признаются провальными.
2. Функция (назначение) системы управления жизненным циклом
Тезисом настоящей статьи является утверждение, что на текущей стадии развития информационных технологий системы управления жизненным циклом вводятся только для одной главной цели, реализуют только одну главную функцию, поддерживают только один главный сценарий (use case), имеют одно главное назначение: СУЖЦ обнаруживают и предотвращают коллизии, неизбежные при коллаборативной разработке. Все остальные функции СУЖЦ являются производными, поддерживающими эту главную функцию.
Коллизии -- это противоречия (несоответствия) одних частей целевой системы другим, независимо от того, в каком состоянии по мере прохождения по жизненному циклу находится целевая система. Противоречия неизбежно появляются при коллаборативной разработке проекта и сооружении, ибо разные участники разработки и сооружения целевой системы действуют в ситуации неполной информации как о целевой системе и ее текущем (или прогнозируемом далее по жизненному циклу) состоянии, так и о действиях и целях друг друга, так и об ожиданиях пользователей и систем в операционном окружении уже развёрнутой для эксплуатации системы.
Коллизии могут найтись на любой стадии жизненного цикла системы, например:
- на стадии замысла оценки стоимости могут не соответствовать текущей предполагаемой конструкции, а реализуемые разработчиками-контракторами функции противоречить действительным нуждам заказчика-пользователя;
- на стадии проектирования предполагаемое комплектующее оборудование может не соответствовать имеющимся типам из имеющегося у закупщиков каталога, или комплектующее оборудование может быть пропущенным на части чертежей, ведомостей, инженерных обоснований, или оказаться запроектированным внутри стены -- ибо все эти чертежи, ведомости, обоснования делаются разными людьми, часто в разных организациях и в разное время,
- на стадии строительства арматура может оказаться еще не закуплена, или закуплена неправильная, или установлена на не своё место, или опоры не выдержат нагрузки после заполнения трубопроводов, ибо были выбраны неправильно, или три бригады выйдут на работу одновременно в одном тесном помещении из-за ошибки в планировании работ.
- на стадии эксплуатации может оказаться, что забыли запроектировать входную дверь. Увы, это даже не шутка: один из классических примеров ошибок в системной инженерии – это реально сданный в эксплуатацию высокотехнологичный почтамт, в котором въезд для погрузки-разгрузки грузовиков с почтой был невозможен: при проектировании забыли узнать, какой высоты эти грузовики, а они оказались слишком большие для оставленной им въездного проёма в железобетонной конструкции почтамта.
- породить некоторое количество лучших архитектур-кандидатов и их гибридов
- совершить многокритериальный выбор из этих архитектур.