145 1. Системы управления конфигурацией

Итак, обещанная история о разработке системы контроля за регламентацией, вышедшей из недр ВВС США. Само собой, разработка была закрытой. В 1966 г. у нас в стране был издан (с грифом “для служебного пользования”) сборник статей, посвященный этой системе и сразу ставший раритетом. Но нашими военными управленцами подобные методы на вооружение были приняты, к сожалению, гораздо позже. Уже в самом конце 70-х появилась книга Бобрышева о “конфигурационном руководстве”[1].

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

Именно на этом сломалась наша великая и могучая инженерно-техническая система. Она уперлась в управленческие ограничения, в проблемы менеджмента.

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

Система управления конфигурацией постепенно распространилась из сферы ВВС на другие организации. Кстати, именно для этого, а не для абстрактной “оптимизации”, которая грезилась нашим идеологам АСУ в 60-е годы, служили компьютеры – впервые в мире они были внедрены в организации именно для того, чтобы вносить изменения в регламентацию.

Как это выглядит в действии? Например, собирается совет директоров “Боинга” и принимает решение изменить стратегию фирмы в какой-то сфере деятельности. Или всего-навсего служба главного технолога принимает решение какую-то обечайку, или какой-то фланец, или дренажно-предохранительный клапан заказать не фирме Макдоннел-Дуглас, а фирме Мартин-Мариетта. Но в следствие того, что меняется вес или форма детали, меняется и центровка всего изделия, температурные режимы работы и т.д. – в конечном счете меняется все.

Представьте себе, что у вас имеется сто тысяч процедур, вы поменяли какое-нибудь реле в блоке гировертиканта, и из-за этого пришлось сразу поменять одну из технологических или эксплуатационных процедур. Но для того чтобы выяснить, какие это влечет изменения для всего массива регламентации, вы должны взять измененную процедуру, перебрать по очереди все 99 тысяч 999 оставшихся, к каждой из них приложить измененную и проверить, влияет это изменение на нее или не влияет. Предположим, вы нашли всего пять процедур, затронутых изменениями в первой. После этого вы должны взять каждую из этих пяти и опять повторить процесс: приложить ее по очереди ко всем остальным и проверить, надо ли что-то в них менять. Если, предположим, для каждой из этих пяти процедур найдется всего лишь от трех до восьми процедур, которые поменяются как следствие, то всего после второго прохода их появится уже 25-30. Теперь, на следующем проходе, вы уже должны взять каждую из них и тридцать раз перешерстить сто тысяч процедур, чтобы проверить, какое изменение на что влияет или не влияет. А это уже три миллиона попарных сравнений, после которых измененных процедур обнаружится уже больше сотни… И если у вас в запасе несколько миллионов лет, то есть надежда, что этот процесс, как говорят математики, “сходящийся” и начиная с какого-то там пятисотмиллионного прохода число выявляемых изменений начнет уменьшаться.

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

На следующее утро каждый пользователь системы, включая младших клерков, находил на своем столе послание: “Внимание! В соответствии с решением руководства № ___ от ____ в процедуру P-2335, касающуюся Вас, внесены изменения. Новая редакция процедуры прилагается”. Как в этом случае должен поступить получивший этот документ? Он может сравнить новую и старую процедуры и посмотреть, что конкретно изменилось, а может и не сравнивать (на это и не рассчитано). Остается лишь вынуть из картотеки карточку со старой редакцией процедуры и вставить на ее место новую. Отныне так происходит каждое утро. И все!

Эта система успешно держала на плаву американский ВПК и даже помогла выиграть лунную гонку, о чем я вам рассказал в прошлый раз.