Deadline. Роман об управлении проектами Демарко Том

Генерал Марков покачал головой:

— Кажется, это довольно полезная штука. Наверное, ее где-то можно использовать… Но вот где и как…

Белинда просто прыгала от восторга.

— Нет, это же чудесно, замечательно, восхитительно! Только подумайте, как эти данные накладываются на модели, которые мы с вами рисовали! Вот тут мы с вами изображали поток работы, — она подошла к стене, на которой висела диаграмма, — но что конкретно перетекает из одного резервуара в другой? И что в них находится?

— Не знаю, — пожал плечами мистер Томпкинс, — что-то вроде «сделанности» или «готовности».

— Ну да, — подхватил экс-генерал, — какая-то абстрактная величина, которой мы измеряем работу.

— Да нет же, ничего вы не понимаете! Там находятся эти самые функциональные единицы. Смотрите сюда.

Белинда перевернула листок с таблицей и стала быстро чертить на обратной стороне.

— Любой проект можно paccматривать вот таким образом. По сути, проект — это клапан, — Белинда указала кончиком ручки на клапан посередине диаграммы, которую только что нарисовала. — Слева у нас резервуар, где находится продукт, который мы начинем разрабатывать. Справа — резервуар с готовым продуктом. В самом начале правый резервуар пуст, потому что мы еще ничего не сделали. А левый поначалу полон до отказа этими самыми функциональными единицами. Сколько их там? Давайте посмотрим — она снова перевернула листок, чтобы посмотреть на цифры, которые оставил после себя Капорус. — Вот, пожалуйста, к примеру пусть это будут три тысячи функциональных единиц проекта Notes — И Белинда написала эту цифру у левого резервуара.

— Далее давайте разобьем на составляющие суть работы нашего клапана — проекта. Нужно смоделировать процесс, учитывая деление программистов на команды, давление со стороны, сжатые сроки, уровень профессиональной подготовки, возможные отклонения от графика… в общем, кучу вещей. Все это мы моделируем в виде работы нижних труб, клапанов и резервуаров. И когда все это будет сделано, и мы запустим готовую модель, то функциональные единицы из левого резервуара начнут постепенно перетекать в правый через вот эту систему труб и клапанов. Проект можно считать завершенным, когда все функциональные единицы из левого резервуара окажутся в правом.

Всю оставшуюся часть дня они провели в кабинете, восстанавливая по обрывочным записям алгоритмы для вычисления размеров проекта, которые объяснял им Капорус. Одновременно они старались осмыслить ту лавину всевозможной информации, которую обрушил на них сегодня утром необыкновенный консультант. Дело в том, что, совершая свои сложные вычисления, этот достойный человек имел привычку бормотать себе под нос интереснейшие сведения, например: «Среднее приложение, разработанное в США в 1994 году, стоило около тысячи пятидесяти долларов за функциональную единицу», или «Поддержка готового программного продукта требует в среднем одного сотрудника на пятьсот функциональных единиц продукта», или «В программном продукте, который выпустили без отладки, будет содержаться около пяти и шести десятых дефектов на функциональную единицу» и т. п. Мистер Томпкинс честно старался записать все эти бесценные сведения, но писал он гораздо медленнее, чем говорил Капорус, поэтому многое так и осталось незаписанным. Сейчас они втроем просматривали каждый клочок бумаги, выискивая полезные сведения.

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

— Понятия не имею, — честно признался мистер Томпкинс.

— Так можно посчитать, — ответила Белинда.

— Разумеется, можно, — не стал перечить Томпкинс. — Через некоторое время. Когда завершится первый проект, у нас появятся данные для того, чтобы как-то рассчитать производительность. Еще один проект — еще больше данных. А еще через несколько лет мы сможем ответить на вопрос Гэбриела совершенно точно. У нас будут данные по средней производительности труда в этой организации и всевозможные вариации вокруг этой цифры. Тогда можно будет производить любые статистические сопоставления производительности и размеров команды, размеров проекта, да чего угодно. Вот если бы такие данные были у нас сейчас… — он не закончил фразу и замолчал, размечтавшись о таком богатстве, как готовые метрики по различным проектам.

— Да ладно вам, ребята. Не нужно ждать несколько лет, — Белинда улыбалась им, как учительница улыбается неразумным первоклашкам. — Мы добудем все это уже на следующей неделе.

— И откуда же ты собираешься вытащить все эти данные? — взметнулся мистер Томпкинс.

— Да, Белинда, ты уж объясни нам, пожалуйста, — поддержал его генерал.

— Проще простого. Здесь ведь уже разрабатывали программные продукты и до нас, не так ли? Значит, должна была остаться какая-то отчетность.

Бывший генерал грустно покачал головой:

— Но мы не собирали никаких специальных данных, Белинда. Ничего такого, что могло бы сейчас пригодиться.

— Ну, по крайней мере, данные по зарплате-то у вас здесь есть!

— Конечно, есть, мы же платим людям деньги, значит, где-то в бухгалтерии должны быть и ведомости.

— Итак, мы знаем, сколько месяцев разрабатывался продукт. И мы знаем, над каким именно продуктом работали программисты. А если не помним сами, то можем найти, у кого спросить.

— Да, это можно было бы сделать. Узнать, сколько человеко-месяцев было затрачено на каждый проект. Правда, мы не узнаем, какую именно работу выполняли разработчики… только общие цифры по проектам, — уступил генерал Марков.

— Вот и отлично. Общих цифр нам вполне хватит. А потом мы соотнесем эти цифры с размерами проектов, выраженными в функциональных единицах.

Но мистер Томпкинс все равно ничего не понимал.

— И как же, черт возьми, нам это подсчитать?

Белинда не торопилась с ответом. Она молча глядела на мистера Томпкинса, словно давала ему последний шанс догадаться самому. Впрочем, это не помогло. Сумасшедшее утро так вымотало беднягу, что он едва сдерживался, чтобы не заснуть прямо за столом. И тут, как всегда, явился Вальдо. Бесценный ассистент мистера Томпкинса катил перед собой столик с тремя чашками крепчайшего моровийского кофе. «О, кофе!» — обрадовался теперь уже обоснованной паузе мистер Томпкинс и взял себе чашку. «Слава богу, хоть пару минут передышки», — подумал он.

— Мы посчитаем размеры всех старых проектов в функциональных единицах, исходя из того, что представляют собой сейчас готовые продукты, — продолжала Белинда, отхлебнув кофе. — Куча работы, конечно, но нам вполне по силам.

— Ну откуда же нам взять время еще и на эту работу?! — простонал в отчаянии мистер Томпкинс. — На нас и так уже висит прорва дел, за которые мы даже не принимались!

— Эй, кто здесь главный? — улыбнулась Белинда. — Вовсе не обязательно делать всю работу самому, верно? Сформируем команду, которая будет заниматься этими вычислениями. Конечно, надо будет научить их, как это делается: сначала подсчитать функциональные единицы, потом вытащить из отчетов данные о зарплате, а потом вычислить среднюю производительность работы.

Но мистера Томпкинса было не так-то просто убедить.

— А кто возьмется за такую работу? Я имею в виду, нам нужен специалист по работе с архивными данными…

— Археолог, — уточнила Белинда. — Такая работа — чистейшая археология. Нужно ковыряться в костях давно умершего проекта и воссоздавать картины прошлого.

— Ну, пусть будет археолог. И откуда здесь возьмутся археологи? Этому парню нужно будет не только переваривать старые отчеты и горы цифр, ему еще придется бегать по всей компании, искать людей, которые помнят, как это было, или хранят у себя дополнительную информацию. А это значит, что он должен прекрасно знать не только структуру нашей организации, но и всех тех, кто в ней работает…

— Что ищешь ты в стране чужой, того и дома есть немало! — продекламировал генерал Марков, улыбаясь.

— Что ты имеешь в виду?

— Я имею в виду — посмотри, что у тебя прямо под носом, Вебстер.

Непосредственно под носом мистера Томпкинса высились груды исписанных карточек и листков с разнообразными вычислениями. Вальдо пытался хоть как-то разложить их на столе, чтобы вся куча бумаг не съехала на пол.

— Что? Что у меня под носом?

— Вальдо.

Вальдо оторвался от работы и удивленно воззрился на генерала.

— Я? Вы про меня говорите?

— Он идеально подходит для этой работы, — продолжал меж тем Марков. — Вальдо, ты прекрасно подходишь для этой работы. Ты не против сменить работу?

— Новая работа? А какая именно?

— Руководитель метрической группы.

— Я — руководитель?!

— Ну, не знаю, не знаю… — вмешался мистер Томпкинс, который вдруг понял, что сейчас потеряет своего превосходного ассистента. — Он, конечно, прекрасный работник, и все же…

Белинда встала со своего места, подошла к Вальдо и крепко пожала ему руку.

— Конечно, Вальдо. Уфф, ну слава Богу, нашли отличного руководителя. Поздравляю! Как видишь, стать руководителем довольно просто.

— Но…

— Слушай, Вебстер, разве ты не видишь, что Вальдо — лучшая кандидатура на эту должность? Он давным давно здесь работает. Он знает всех и каждого. Думаю, что во всех семи зданиях не найдется ни одного человека, который не знал бы Вальдо. Причем его знают с хорошей стороны, и это тоже важно. Каждый раз, когда он общается с кем-то, у него становится одним другом больше. Ты же сам испытал это на себе, верно? Так что еще нужно для руководства метрической группой?

Белинда говорила чистую правду, и мистер Томпкинс знал это.

— Да, ладно, — с грустной улыбкой сказал он, — я согласен. Просто не представляю, как я теперь буду работать без Вальдо.

— А ты будешь продолжать работать вместе с ним. Только уже в новой ипостаси, где его талант будет использоваться куда полнее. В этом и заключается наша работа — находить для своих подчиненных такую должность, на которой проявятся все их скрытые способности. А в чем еще заключается руководство, если не в этом?

— Э-ээ, а вы не объясните мне все-таки, что происходит? — Вальдо, в отличие от них, оставался в полном неведении.

— Надо будет дать ему в подмогу человека, хорошо знакомого со статистикой, — пробормотал генерал Марков, — чтоб умел замешивать цифры и факты не хуже, чем Ниро Вульф свои омлеты. Добавим аналитика… и, глядишь, команда готова.

— Так что же все-таки происходит?!

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

Генерал вскоре ушел, а Белинда осталась еще часа на два, чтобы помочь мистеру Томпкинсу ввести Вальдо в курс дел и научить вычислять размер проекта в функциональных единицах по методике Т.Джонса Капоруса. Когда они закончили, у молодого человека уже даже сложился приблизительный план по проведению первых «археологических» изысканий. Первые результаты Вальдо обещал представить не позже, чем через неделю.

После этого Белинда и Вебстер поужинали в городе и теперь вместе возвращались в парк у гавани, где ночевала Белинда. Мистер Томпкинс был искренне счастлив, глядя, с какой радостью и энтузиазмом работает Белинда. Правда, у нее еще остались кое-какие странные привычки — например, она продолжала ходить босиком и ночевать на земле под деревом в парке. Хотя, конечно, в такие ночи, как эта, странно как раз сидеть дома, а не уходить в парк, чтобы лежать на траве и смотреть на звезды. В парке все дышало тишиной и спокойствием. Электрического освещения почти не было, поэтому звезды сверкали ярче обычного.

— Все-таки как много может измениться за один день, — говорил мистер Томпкинс. — И как же нам повезло, что сегодня к нам заехал этот Т. Джонс Капорус. Даже не верится, что за один день можно столько всего успеть. Кажется, сегодня мы поймали удачу за хвост.

— Точно. Он послужил катализатором для наших собственных размышлений. Но какого же пинка мне хочется дать нам всем за это!

— Но почему?!

— А почему мы сидели и ждали, пока он нам все расскажет, а, Вебстер? Нам должно быть стыдно, что мы не сделали эту работу сами, несколько месяцев назад.

— Но для этого нужно было знать его концепцию функциональных единиц. А это стало для нас настоящим открытием.

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

— Не очень понимаю — как мы могли это сделать?

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

— Например?

— Например, измерять разные проекты с помощью одного из них. Скажем, мы говорим, что наш QuickerStill имеет размер в сотню «галублов». А теперь ты можешь сказать мне, приблизительно, конечно, сколько «галублов» в проекте Quirk? Иными словами, мы же знаем, сколько раз надо взять QulckerStffl, чтобы получился Quirk? Конечно, это были бы очень относительные вычисления, но если бы мы трое делали их вместе, то уж наверняка получили бы вполне правдоподобную цифру.

— Если QuickerStiil равен одной сотне «галублов», то Quirk, я бы сказал, потянет на две с половиной сотни.

— Ну, более или менее. A PShop тогда можно было оценить в пятьсот или шестьсот «галублов».

— Но ведь это же все нереальные цифры, сплошные догадки и никакой точности! — возразил мистер Томпкинс.

— Да, но как только мы обсудим и запишем наши догадки, в дальнейшем нам останется только улучшать и уточнять их. А для этого нам придется более тщательно проработать единицу измерения — «галубл» — и изобрести собственные функциональные метрики.

— Честно говоря, я не очень-то верю, чтобы мы могли сами дойти до такой универсальной концепции, как функциональные единицы. Капорус и его команда работали над ней не один год.

— Да, но ведь он пытается решить куда более сложную задачу, чем мы. Он изобретает универсальные метрики для измерения любого программного продукта. А для этого приходится учитывать массу нюансов, которые отличаются друг от друга в разных компаниях и разных странах. Что касается нас, то наша проблема находится в рамках одной компании и одной страны, так что все, что нам было нужно, — это собственная система мер, которая подходит только для здешних проектов, в Айдриволи.

— Даже не представляю себе, с чего мы могли бы начать, — пробормотал Томпкинс.

— Функциональные единицы представляют собой синтетическую систему мер, вроде категории при налогообложении. Ее вычисляют только исходя из других, более простых данных. Берут данные и высчитывают по определенной формуле искомую синтетическую метрику. Так вот, эти самые базовые данные для программного обеспечения получить совсем не так уж трудно. Скажем, входные и выходные потоки, сегменты баз данных, элементы данных… Все это и есть та базовая информация, по которой вычисляются функциональные единицы.

— Ну… да… — мистер Томпкинс пытался понять, к чему ведет Белинда.

— И все, до чего нам нужно было дойти своим умишком, — это понять, что на основе простых базовых данных можно создать некую синтетическую систему измерения. После этого мы могли бы сразу начать наши археологические изыскания и вытащили бы из прошлых проектов все необходимое…

— А! — наконец-то он все понял. — После этого мы бы применили множественную регрессию, установили соотношение между комбинациями наших примитивных данных и объемом проделанной работы.

— Совершенно верно. По крайней мере, у нас была бы хоть какая-то приблизительная формула для вычисления этого нашего «галубла» или стандартной моровийской единицы работы, или «айдриволи» — как бы захотели, так бы и назвали.

— Теперь понимаю. Да, ты абсолютно права, с этим мы вполне могли бы и сами справиться.

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

— Ты права. Давно нужно было самим этим заняться. Сейчас все кажется таким простым и естественным… Словно нос на лице, после того как кто-то заставил тебя обратить на него внимание. М-да, а до приезда Т. Джонса Капоруса мы ни о чем таком не думали.

— Стыд и срам.

— Да нет же. Спасибо ему большое! Есть люди, которые могут показать и объяснить тебе то, что ты сам должен был бы заметить давным-давно. Такие люди в нашей отрасли и есть самые ценные специалисты. Им как-то удается всегда видеть простые и незыблемые истины и помогать увидеть другим.

Они замолчали. Ночь была теплой, они сидели на траве, глядя на ночное небо над заливом.

— А здесь часто можно увидеть падающую звезду, — сказала Белинда, показывая пальцем куда-то на небосвод над Ионийским морем, — Смотри вон туда, поверх зеленых навигационных огней, под углом примерно двадцать градусов.

Она развернула мистера Томпкинса лицом к морю, и он стал смотреть, куда она велела. Смотреть было приятно. Вид ночного моря успокаивал, зеленые огоньки подрагивали вдалеке, рядом слышалось тихое дыхание Белинды. Вдруг небо пересекла длинная светлая дуга и скрылась в море.

— Ух ты!

— Видел?

— Ага.

— Каждую ночь падают. Иногда я успеваю насчитать около десятка, прежде чем усну, — Белинда расстелила свой матрац на траве и теперь сидела на нем, одетая во фланелевую ночную рубашку. Мистер Томпкинс никогда не задумывался о том, в чем она спит, но уж точно не ожидал увидеть фланелевую рубашку

Белинда укрылась легким одеялом, улеглась на спину и, заложив руки за голову, смотрела на звезды, которые просвечивали сквозь листву. Прошло несколько минут, прежде чем они снова заговорили. Казалось, Белинда просто стала думать вслух:

— Зачем это все, Вебстер? И что мы здесь делаем? Мне скоро стукнет пятьдесят, а я до сих пор не знаю, что мне с собой делать. Что нужно для жизни? Достаточно ли помочь маленькой стране третьего мира выйти на свет Божий и продавать первоклассные программные продукты? Интересная задача, никто не спорит, но достаточно ли этого, чтобы оправдать мое существование?

— А, я понимаю, о чем ты. Я тоже иногда сам о чем-то таком думаю.

— Мы помогаем славным молодым ребятам сделать хорошую карьеру и зажить более-менее достойной жизнью…

— И мы не причиняем никому вреда, не загрязняем атмосферу, не разрабатываем оружие…

— Точно. Но мне все равно непонятно — я что, только для этого и живу?

— Не знаю. Думаю, мы никогда этого не узнаем.

— Иногда мне кажется, что существование можно оправдать чем-то замечательным и необыкновенным. А потом, под другое настроение, мне кажется, что единственной достойной целью будет помогать этому миру выжить. А еще мне иногда кажется, что стоило бы потихонечку подкрасться и дать этому миру хорошего пинка!

— Удивить? Помочь? Дать пинка? Вот в чем вопрос!

— Или, если точнее, какой должна быть правильная комбинация этих составляющих? — улыбнулась Белинда. — Может быть, у каждого из нас есть своя абсолютная формула? А может быть, вся наша жизнь здесь, вся карьера — это просто возможность понять объем ингредиентов? Удивить, помочь, дать пинка…

— А что, мне нравится такая формулировка. Каждый из нас — точка на оси координат, чью позицию определяют значения У, П и Д.

— Да-аа, сколько же в нас Микеланджело, сколько Матери Терезы, а сколько… кого?

— Мильтона Берле?

— Ну да, точно.

Мистер Томпкинс опять посмотрел на небо, на горящие где-то далеко в заливе зеленые огоньки, и стал ждать следующую падающую звезду. Нужно было всего лишь расслабиться и спокойно глядеть в черное южное небо… Когда упало уже целых три звезды, он обернулся к Белинде и увидел, что она мирно спит. Мистер Томпкинс осторожно поднялся и медленно пошел домой.

Из записной книжки мистера Томпкинса

Сбор метрических данных

1. Определяйте размер каждого проекта.

2. Не усердствуйте поначалу с выбором единицы измерения — если впоследствии вам предстоит работать с реальными данными, для начала сойдут и абстрактные единицы.

3. Стройте сложные метрики на основе простых (тех, которые легко подсчитать в любом программном продукте).

4. Собирайте архивные данные, чтобы считать производительность труда по уже законченным проектам.

5. Работайте над формулами вычисления сложных синтетических метрик до тех пор, пока полученные результаты не будут наиболее точно отражать отношение абстрактных единиц к указанному в архивных данных объему работ.

6. Проведите через всю архивную базу данных линию тренда, которая будет показывать ожидаемый объем работ в виде отношения значений сложных синтетических метрик.

7. Теперь для каждого нового проекта достаточно будет высчитать значение синтетической метрики и использовать ее при определении ожидаемого объема работ.

8. Не забывайте об «уровне помех» на линии производительности и используйте его, как индикатор при определении допустимых отклонений от общей траектории.

Глава 13

QuickerStill

С самого начала ВВН постановил, что продукт — аналог Quicken — будет называться QuickerStill. Название разработчикам понравилось. Естественно, все понимали, что такое имя надо оправдать14, поэтому требования к производительности программы изначально были очень высокими. Мистер Томпкинс не имел ничего против такого развития событий. Ему тоже понравилось имя нового продукта. Более того, ему нравилась идея делать проекты «еще быстрее», может быть, даже быстрее, чем в идиотские сроки, установленные непреклонным министром Бэллоком. Сейчас Вебстер Томпкинс уныло обернулся, чтобы посмотреть на счетчик, висевший у него за спиной:

Осталось всего 345 дней до «дня Д»!

До 1 июня — немногим меньше года. Все шесть проектов за такой срок не сделать, это было абсолютно ясно. Сейчас они уже знали, что средняя производительность в Айдриволи за последние пять лет варьировалась в пределах пяти функциональных единиц на человеко-месяц. Причем все это подсчитывалось на «домашних» проектах. А как изменится производительность при работе над продуктами высочайшего качества, которым придется конкурировать на мировом рынке? Наверняка не больше трех единиц. А это означает, что на разработку проекта размером с PShop понадобится не менее трех лет. Учитывая, что начали они зимой, сейчас им еще предстоит около шестисот дней работы. Да, у больших проектов нет ни единого шанса уложиться в установленные Бэллоком сроки.

Мистер Томпкинс не надеялся успеть сдать большие проекты — PShop, Paint-It и Quirk, но у него все еще теплилась надежда завершить в срок хоть какой-то из мелких проектов, объемом с QuickerStill. Даже это было маловероятно, но все же он хотел принять вызов и бороться. И если бы у него получилось, то он мог бы считать, что его миссия в Моровии окончилась успешно.

Эта тайная надежда грела ему душу. Да, он сможет добиться успеха, невзирая на идиотизм ситуации и зловредность Бэллока! Чем больше он об этом думал, тем оптимистичнее смотрел в будущее. В конце концов, худшее уже позади. Что еще может придумать Бэллок после своей эскапады со сроками?

Миссис Бирцих, заботливая и толковая ассистентка, которую ему подыскали на место Вальдо, вбежала в его кабинет в явном расстройстве, если не сказать — в отчаянии.

— Босс, босс! Скорее идите, посмотрите на это! К вам делегация от Моровийского Института программирования. Они утверждают, что пришли проверять работу наших проектов!

— Мы следуем прямым указаниям министра Бэллока, — пояснил мистеру Томпкинсу руководитель группы проверки — Он только что распорядился, чтобы все команды разработчиков предоставили свидетельства улучшения процесса разработки. Все без исключения. Сейчас они сертифицированы как СММ второго уровня. Министр настаивает, чтобы все прошли сертификацию следующего уровня еще до конца года. Это его категорическое требование. Уж не знаю, насколько это реально, но он говорит, что мы должны успеть

— Вот это меня, честно говоря, не очень беспокоит, — отрезал Томпкинс. — Меня больше беспокоит, сколько мои люди потеряют времени из-за этой вашей программы по улучшению процесса разработки. Перед нами поставлены очень жесткие сроки — на случай, если мистер Бэллок забыл сообщить вам об этом.

— О, об этом можете не беспокоиться, — уверенно заявил руководитель группы проверки — Улучшение процесса разработки немедленно скажется на производительности ваших сотрудников. Мы это знаем на примере американцев. Даже один-единственный уровень СММ даст вам не меньше двадцати четырех процентного увеличения производительности.

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

Мистер Томпкинс говорил это, а про себя думал о том, что ему сказал Гектор Риццоли: «Нет на свете ничего, что могло бы быстро поднять производительность».

— Мы все знаем, что работа над процессом дает положительный эффект только через весьма и весьма продолжительное время. Следовательно, сейчас мы его просто потеряем.

Гость только пожал плечами: «Да, но через какое-то время окажется…»

— Разумеется, разумеется. Возможно, это будет через год после того, как мы закончим проекты. Через год мои люди начнут работать немного лучше благодаря тому, чему вы их сейчас обучите. Кстати, как долго будет длиться ваша программа?

— Думаю, около десяти месяцев. Обучение не займет у ваших сотрудников больше, чем один день… или даже половину дня раз в неделю.

Мистер Томпкинс застонал. Эту ситуацию можно было не моделировать, и без того ясно, что произойдет с графиком работы.

— А каковы ваши планы? Вы собираетесь работать только над этими шестью проектами, или же вы должны поднять уровень СММ во всей организации?

— Во всей организации. Именно этого требует министр Бэллок.

— Понятно.

— Мне очень жаль, мистер Томпкинс. Я понимаю, наше появление вас не обрадовало, но постарайтесь думать о том, какие выгоды вы получите в будущем…

Мистер Томпкинс только головой покачал.

— Ну, может быть, хоть это вас немного утешит: честно говоря, мы еще не готовы начинать обучение ваших сотрудников. Я думаю, на подготовку программы уйдет не менее шести недель.

— А что вы собираетесь делать здесь сегодня? К чему тогда столько людей?

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

— Понятно.

— Как видите, наша группа довольно большая, и тем не менее нам потребуется не меньше целого дня работы, чтобы провести проверку тех, кто работает в этом здании, в Айдриволи-1. На проверку остальных уйдет остаток этой недели и, пожалуй, вся следующая.

В конце дня руководитель группы проверки и несколько его помощников собрались в кабинете мистера Томпкинса. С собой они привели застенчивого менеджера проекта QuickerStill, Бигсби Гроша. Тут же в кабинете сидел и генерал Марков.

Руководитель группы проверки огласил вердикт:

— Вот и все на сегодня, мистер Томпкинс. В целом, конечно, все довольно неплохо, за исключением разве что мистера Гроша и его группы разработчиков. По сути, они — единственное досадное отклонение от принятого процесса разработки.

— Уверен, у него были на то веские причины, — начал было мистер Томпкинс.

— Ну, знаете ли, любой может найти веские причины, чтобы не следовать установленной процедуре разработки. Когда наш институт сертифицировал эту группу разработчиков, как СММ второго уровня, мы особо подчеркивали тот факт, что процесс — некоторая последовательность шагов разработки — не должен изменяться. Что бы кто бы ни разрабатывал — процесс остается неизменным. В этом и состоит суть второго уровня СММ. Главное в нем — неизменность. Неважно, хорош ваш процесс или плох, идеален или отвратителен, главное — что вы, по крайней мере, ничего в нем не меняете. И большинство всех работающих в Айдриволи-1 разработчиков поступают именно так! Мы проинспектировали шесть проектов — все находятся на стадии написания требований, причем пять именно этим и занимаются: фиксируют требования и составляют документацию, как того требует принятый здесь процесс. И никакой самодеятельности. Все, кроме мистера Гроша с его проектом. Мистер Грош вообще решил отказаться от любых правил! Его группа даже и не думала заниматься требованиями — вместо этого они сразу приступили к проектированию! — голос инспектора дрожал от возмущения.

— Я уверен, у него были на то причины, — повторил мистер Томпкинс.

— Конечно, — отозвался Грош. — Все очень просто. Наш проект не похож ни на один из тех, которые мы делали до сих пор. Сейчас нам надо практически создать аналог известного на рынке, хорошо документированного и описанного продукта — Quicken. У нас уже есть вся документация. Нам не нужно описывать требования, потому что это простое копирование…

— Не нужно писать требования! — взвизгнул руководитель группы проверки. — Никогда в жизни мне не доводилось видеть проект, для которого не нужно писать требований. Никогда! Каждый проект должен быть тщательно документирован. Если вы были сертифицированы на СММ второго уровня, вы обязаны описывать требования, используя известные и утвержденные методики. Только так и никак иначе.

— Но наш проект абсолютно другой! — завопил Грош.

— Все проекты другие, — неумолимо парировал руководитель группы проверки. — Каждый проект другой, потому что отличается от прочих. И тем не менее процесс разработки должен оставаться неизменным.

— А если проект отличается настолько, что использование данного процесса становится нецелесообразным? — вмешался в разговор мистер Томпкинс.

— Процессу нужно следовать в любом случае, — ответил инспектор. — Только так и никак иначе. Если мы начнем делать исключения для тех проектов, которые отличаются от других, то каждый начнет делать, что ему на ум взбредет, а о слаженном и постоянном процессе можно будет вообще забыть.

— Значит, нужно одинаково подходить ко всем проектам?

— Совершенно верно, — подтвердил инспектор. — А если этого не делать, то ни о какой сертификации на второй уровень СММ и речи быть не может. И это не только мое мнение. Это мнение всего нашего института.

— …сертификация на второй уровень СММ… — задумчиво произнес мистер Томпкинс. — Ну что ж, может быть, это и есть ответ. Не надо сертифицировать проект QuickerSlill на второй уровень СММ, вот и все.

— Боюсь, вы нашли неверное решение, мистер Томпкинс. Институт программирования едва ли допустит такое. Я хочу сказать, достаточно позволить этому произойти хотя бы единожды…

— А что, если нам не предавать наше соглашение огласке? Пусть это останется только между нами…

— Думаю, это невозможно, — твердо возразил неприступный инспектор. — И не думаю, что такой поворот событий порадует министра Бэллока. Он требует, чтобы вся организация перешла на следующий уровень СММ еще до конца года, а тут вдруг окажется, что один из центральных проектов вместо этого вдруг откатывается на один уровень назад. Нет, сэр. Я собираюсь написать сегодня представление лично мистеру Грошу и его группе. Мы дадим им семь дней на то, чтобы они исправились и написали все необходимые спецификации по стандартной форме…

— Скопировали требования из одной формы в другую! — горько воскликнул Грош.

— …по стандартной форме, как я уже говорил. По форме, которая соответствует процессу СММ второго уровня. Если же через семь дней они не представят комиссии необходимую документацию, сертификация всей группы будет официально и публично аннулирована. Я достаточно ясно все объяснил? — в голосе инспектора звучала угроза.

— О, да, — ответил мистер Томпкинс. — Вы объяснили все предельно ясно. Но эта проектная группа — всего лишь крохотная часть всей организации. Если я правильно вас понял, то завтра вы продолжите работу в других зданиях?

— Да. Судя по сегодняшним темпам, у нас будет уходить по одному дню на каждое здание, не меньше.

— Не окажете ли мне услугу, начав завтра проверку Айдриволи-2? А потом, послезавтра, Айдриволи-3 и так далее, по порядку? Тогда через неделю вы сможете закончить всю процедуру на Айдриволи-7, — говорил мистер Томпкинс, а сам думал, что это даст ему по крайней мере несколько дней отсрочки. — Вы не могли бы проводить проверку именно в такой последовательности?

— Конечно, мистер Томпкинс. Мы же здесь, чтобы помочь вам. Итак, завтра мы займемся Айдриволи-2. Я так понимаю, что у вас там сосредоточены особо важные проекты, раз вы просите проинспектировать их в первую очередь.

— Э… о… да, вы абсолютно правы. И в Айдриволи-3, и в Айдриволи-4. Там тоже идет очень важная разработка. Мы особо заинтересованы в вашей оценке этих трех групп. Айдриволи-5 и Айдриволи-6 уже далеко не так важны. Было бы замечательно, если бы вы сначала проверили самые важные проекты.

— Разумеется. Я вас прекрасно понимаю. Мы сделаем все возможное, чтобы помочь вам. Можете положиться на нас, мистер Томпкинс.

— Спасибо. Я не сомневался.

Вскоре все, кроме Габриела Маркова, покинули кабинет.

— Кажется, мы отстаем даже больше, чем предполагали, — мрачно заметил он.

— Ну, конечно же, какое-то время сожрет это «улучшение процесса разработки».

— Да нет же, все еще хуже.

— Да почему же?

— Ну это же должно быть так естественно для руководителя — сэкономить время на написание документации в то время, как по каждому проекту есть прекрасная документация от конкурирующего коммерческого продукта! И тем не менее догадался об этом только Грош. Все остальные пошли по проторенной дорожке и стали писать спецификацию требований, как они всегда делали до этого. Никто больше не подумал о том, что эти шесть проектов кардинальным образом отличаются от всех, которые они делали раньше.

Мистер Томпкинс вскочил на ноги.

— Теперь я понимаю, о чем ты. Сдается мне, нам пора прогуляться по Айдриволи-7 и самим поинспектировать команды Б и В. Интересно, сколько из них догадалось сэкономить время на требованиях?

— Руководства пользователя и есть спецификация требований, — сказала им Молли Макмора. — Конечно же, мы не стали их копировать в стандартную форму. Это означало бы впустую тратить время.

— Точно, — согласился с ней Элем Картак. Все остальные руководители команд Б и В согласно закивали головами.

И тут подняла руку Аврил Альтербек, руководитель команды В, которая разрабатывала PShop:

— Руководства пользователей по Photoshop, которые выпустила Adobe, настолько полные и всеобъемлющие, я никогда не встречала лучшего описания требований к программе. Никогда раньше мне и в голову не приходило, что руководство пользователя можно рассматривать в таком качестве. Но теперь все по-другому. Более того, я думаю, почему бы нам вообще не писать руководство пользователя или хотя бы его основу в самом начале проекта? Тогда бы сначала оно выполняло роль спецификации, а потом постепенно превратилось в настоящее руководство пользователя. Я знаю, что все остальные со мной согласятся, потому что мы уже обсуждали свои мысли по этому поводу, — она обвела взглядом собравшихся. Те дружно кивнули.

— Однако даже при том, что руководство пользователя является замечательным описанием функциональности продукта, мы не должны отказываться от работы по написанию требований, — продолжала Аврил. — Существуют ведь требования, не относящиеся к функциональности программы, например, время отклика, объем файлов, диапазон чисел, точность переменных и допустимые расширения…

— Каждый из нас описал все эти нефункциональные требования отдельным документом, — вставил Картак. — Теперь, кроме руководств пользователя, у нас есть полный набор спецификаций. В них есть все требования к системе — и функциональные, и нефункциональные. При этом все прекрасно изложено ясным, доступным языком, со множеством примеров и иллюстраций. Мне кажется, ничего лучше и быть не может!

Мистер Томпкинс перевел дух. Благодаря столь нестандартному подходу к описанию требований они экономили довольно времени. А это значит, что все команды Б и В, почти не затратив времени на документирование требований, сейчас уже вовсю занимались проектированием своих продуктов. И разумеется, это значит, что группа инспекторов аннулирует СММ-сертификацию всех команд, как только доберется до Айдриволи-7. Но это его проблема, а не руководителей команд Б и В.

«Подходящий момент для того, чтобы похвалить ребят за то, что они сделали», — подумал мистер Томпкинс.

— Я рад видеть, что вы проявили нестандартный подход к работе, — сказал он собравшимся. — Мы должны использовать каждую разумную возможность сократить время разработки. И вам это удается. Это доказывает, что вы можете анализировать ситуацию и принимать правильные меры, а это все, чего я от вас хочу. Одно меня удивляет — почему руководители команд А не догадались поступить с требованиями таким же образом?

Сначала все молчали, потом раздался голос Аврил:

— Кажется, я знаю, почему.

— Так объясните мне, пожалуйста.

— А вы попробуйте представить себя в шкуре Томаса Орика, руководителя команды А, которая тоже делает PShop. У него в команде шестьдесят человек, к тому же поговаривают, что за проектом присматривает сам министр внутренних дел, потому что хочет, чтобы PShop был закончен вовремя.

— И что?

— А то, что Томас просто обязан сделать так, чтобы все были завалены работой. Более того, он даже должен применять метод кнута и заставлять свою команду работать сверхурочно. Если он этого не сделает, то его сочтут плохим руководителем, который не понимает ситуации и не принимает должных мер. И что ему, спрашивается, делать?

Мистер Томпкинс задумался. Плохи дела, в самом деле. Конечно, надо бы поговорить с Томасом, но все же Аврил пыталась донести до него другую мысль. Да, переводить спецификации из одной формы в другую было совершенно бесполезным занятием, но зато оно давало Томасу возможность загрузить работой всю свою огромную команду. И — что, возможно, еще важнее — это давало команде возможность выглядеть занятой.

Страницы: «« 4567891011 »»

Читать бесплатно другие книги:

Афанасий Карачаев найден мертвым в своей квартире. Официальное заключение о смерти указывает на серд...
Старуха Кристи – отдыхает! Жизнь иногда придумывает такие детективы, что даже самым крутым писателям...
Казалось, судьба подслушала мечту талантливого режиссера Алексея Соколовского – и осуществила. Но та...
Как круто изменилась ее жизнь! Еще год назад она была скромным сотрудником известного рекламного аге...
Он знает цену золоту, но выше ставит дружбу, а всего выше – долг перед Родиной. Верует в Господа, но...
Проснувшись в день своего тридцатилетия, Йозеф К. оказывается внутри бюрократической судебной машины...