Наивность часто связана с неопытностью, поэтому не удивительно, когда люди, не имеющие представления о трудоёмкости и длительности создания нужной им системы, принимают нереалистичные решения. В самом худшем варианте это может привести к тому, что мой коллега Том ДеМарко называет «истерическим оптимизмом», когда все поголовно в организации бездумно верят, что сложный проект, ничего подобного которому они никогда не делали, можно как-нибудь сделать за девять месяцев, хотя реалистичная оценка его продолжительности – три года.
Наивность и оптимизм, как мы видим, присущи также и техническим специалистам. Однако, вообразим на минуту, что именно ваши менеджер, отдел маркетинга или конечный пользователь несут ответственность за чересчур оптимистичный план или бюджет. Как они отреагируют, когда в конечном счёте поймут чрезмерную оптимистичность первоначальных оценок? Захотят ли они продлить срок разработки, увеличить бюджет и спокойно согласиться с тем, что все не так просто, как они себе представляли? Скажут ли они вам и вашим коллегам спасибо за героические усилия? Если это так, то самым важным для вас может оказаться заменить классическую каскадную модель жизненного цикла ПО на подход RAD, чтобы сразу после реализации первой версии прототипа системы можно было получить реалистичную оценку плана, бюджета и ресурсов.
Тем не менее, в большинстве безнадёжных проектов такого рода рациональная коррекция курса в середине проекта невозможна. Так может случиться, например, если главный менеджер наивно пообещал что-либо заказчику и считает, что дело чести – выполнять своё обязательство, несмотря ни на что. Самое худшее – когда человек, принимающий на себя обязательства, вполне осознает происходящее (в особенности такие дела всплывают наружу, когда после празднования по поводу заключения нового контракта с очередным доверчивым пользователем менеджер по маркетингу признается менеджеру проекта за кружкой пива: «Послушай, мы никогда бы не заключили этот контракт, если бы сказали клиенту, сколько времени потребует проект на самом деле; в конце концов, мы знали, что наши конкуренты тоже придут с заманчивыми предложениями. И, кроме всего прочего, твои ребята всегда раздувают планы и бюджеты, не так ли?»).
|
На последнее замечание особенно трудно возразить, если оно исходит от вашего босса или менеджера, который выше вас на два или три уровня. Предполагается, что вся оценка планов и бюджета является предметом переговоров (которые будут детально обсуждаться в главе 3). В то же время ваш менеджер ведёт себя в некоторой степени наивно, если он, будучи недовольным «раздуванием» плана и бюджета, полагает, что вы сможете завершить проект в смехотворно короткий срок, принятый без вашего ведома. Такой срок может быть установлен и под влиянием менталитета «Морского Корпуса», который обсуждается в подразд. 1.3.5. Наконец, принятие отделом маркетинга смехотворного плана и бюджета может быть результатом политических игр, о которых говорилось ранее; менеджера по маркетингу вряд ли особенно волнует реалистичность предлагаемого им плана и бюджета, поскольку его основная цель – получить комиссионное вознаграждение или доставить удовольствие своему боссу.
|
Представим себе, что наш безнадёжный проект – это результат «наивности в чистом виде», свободной от политики или каких-либо других злонамеренных воздействий. Главный вопрос заключается в следующем: что делать? Как было отмечено выше, определяющим фактором является вероятность того, что лица, принимающие решения, пересмотрят свои бюджеты и планы, когда станет очевидной невыполнимость взятых на себя первоначально обязательств. Трудно предсказать заранее, произойдёт это или нет, однако небесполезно было бы оглядеться вокруг себя и посмотреть, что же происходит в подобной ситуации с другими безнадёжными проектами. (Если это первый такой проект, который когда-либо осуществлялся в вашей компании, значит, вы в самом деле – белое пятно на карте!)
Если у вас есть твёрдая уверенность, основанная на вашем политическом чутьё или опыте предыдущих проектов вашей организации, что руководство, отрицая очевидные факты, будет настаивать на первоначальном бюджете и плане, значит, придётся принимать гораздо более серьёзное решение относительно дальнейшего продолжения работы. При этом имеет существенное значение степень вашего влияния на другие аспекты проекта – например, на состав привлекаемых технических специалистов – что будет обсуждаться в главе 2.
1.3.3 Наивный оптимизм юности: «Мы сможем сделать это за выходные!»
Несмотря на то, что руководство компании, как правило, является удобной мишенью для критики за множество нелепых решений, связанных с безнадёжными проектами, технические специалисты тоже не такие уж невинные агнцы. Несомненно, во многих случаях высшее руководство, к счастью, осознает свою неопытность в вопросах оценки и планирования сложных проектов. Оно обязательно будет консультироваться относительно продолжительности проекта с каким-нибудь технократом-сорвиголовой, которого, может быть, только неделю как назначили на высокую руководящую должность.
|
И, если этот технократ честолюбив и полон юношеского оптимизма (что напоминает юношеские фантазии относительно бессмертия, всемогущества и всеведения), он, скорее всего, ответит: «Нет проблем! Мы можем покончить с этой ерундой за выходные!» Высококвалифицированный программист (правда, здесь больше подходит определение «хакер») твёрдо уверен, что может разработать любую систему за выходные. Такие незначительные мелочи, как документирование, отладка, тестирование и проработка пользовательского интерфейса, настолько скучны, что нечего о них и говорить.
Если вы как раз именно такой чересчур оптимистичный программист и при этом ответственны за оценку параметров проекта, то, скорее всего, не представляете себе, что вы делаете. Вероятно, вы прочли последний абзац, немедленно оскорбились и проворчали: «Черт возьми! Я в самом деле могу разработать любую систему за выходные!» Господи, благослови вас; может статься, вы и преуспеете. В любом случае, что бы вы не услышали от старого пердуна вроде меня, вряд ли это изменит ваше мнение.
Однако, если вы – закалённый в битвах ветеран и замечаете, что вас почти втянули в безнадёжный проект, поскольку какой-то молодой и наивный технический менеджер взял на себя смехотворно оптимистичные обязательства относительно плана, бюджета и ресурсов, то что же вам остаётся делать? По-моему, самое лучшее – спасаться бегством. Когда до таких менеджеров дойдёт, что они пытаются прыгнуть выше головы, они впадают в состояние коллапса, что выражается в непредсказуемом поведении или полной беспомощности. В большинстве случаев им никогда не приходилось прежде иметь дело с такими большими и сложными проблемами, которые невозможно решить ни гениальным умом, ни грубой силой (например, кодируя без перекуров 48 часов в выходные). В любом случае, когда проект не уложится в срок, для них, наверняка, будет весьма неприятно услышать от вас: «А я ведь тебя предупреждал!».