Глава 2. Страх

- А как насчет моей храбрости? - обеспокоено спросил Лев.

- У вас ее хоть отбавляй, я в этом не сомневаюсь ни минуты, - сказал Оз. - Нужна лишь уверенность в себе. Все живые существа испытывают страх в минуту опасности. Храбрость - это умение побеждать свой страх, а такое умение у вас есть.

«Волшебник страны Оз»

Разработка программного обеспечения – дело рискованное. Люди, которые этим занимаются, постоянно боятся, что что-то пойдет не так, как надо. Если вы хотите, чтобы команда работала эффективно, обязательно принимайте во внимание такие страхи.

Интересно, а зачем при разработке ПО вообще нужен процесс? Наверное, затем же, зачем существуют правительства, законы и налоги: из-за страхов.

В «Декларации Независимости» говорится:

Все люди созданы равными и наделены их Творцом определенными неотчуждаемыми правами, к числу которых относятся жизнь, свобода и стремление к счастью. Для обеспечения этих прав людьми учреждаются правительства, черпающие свои законные полномочия из согласия управляемых[1].

Конечно, глубина и всеобъемлемость этого документа кого угодно собьет с толку, но обратите внимание на слово «обеспечения». Мы учреждаем правительства, потому что опасаемся потерять свои права.

По той же причине мы разрабатываем процесс для создания ПО: мы боимся. Заказчики боятся, что:

l      Не получат того, о чем просили.

l      Попросят не то, что им нужно.

l      Заплатят много, а получат мало.

l      Отдадут свою судьбу и карьеру в руки технарей, которым на это наплевать.

l      Им даже не предоставят никакого разумного плана работ.

l      Тот план, который им предоставят, не будет иметь ничего общего с действительностью.

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

l      Никто и никогда не скажет им правду.

Разработчики тоже боятся. Прежде всего, они опасаются, что:

l      Их попросят сделать то, что они делать не умеют.

l      Их попросят сделать совершенно бессмысленные вещи.

l      Они вконец отупели.

l      Они не поспевают за последними техническими разработками.

l      Их наделят только обязанностями, а о правах забудут.

l      Им не объяснят четко и ясно, что именно нужно сделать.

l      Им придется пожертвовать качеством работы из-за сжатых сроков.

l      Им придется решать трудные вопросы самостоятельно, без помощи со стороны.

l      На успешное завершение проекта просто не хватит времени.

Основным источником провала любого проекта являются страхи, которые не были вовремя приняты во внимание

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

«Если я скажу обо всем программистам, они будут несколько месяцев в этом разбираться, вместо того, чтобы сразу сделать то, что мне нужно».

«Если я скажу заказчику, как быстро мне удалось сделать эту задачу, он еще чего доброго подумает, что я все буду делать с такой скоростью».

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

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

«Билль о правах» заказчика

l      У вас есть право получить общий план работ и узнать, что может быть сделано, когда и за какие деньги.

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

l      У вас есть право наблюдать развитие проекта на работающей версии системы, которая регулярно проходит определяемые вами тесты.

l      У вас есть право менять свои решения, заменять одну функциональное свойство системы другим и менять приоритеты, не платя за это чрезмерные суммы разработчикам.

l      У вас есть право получать информацию о любых неожиданных изменениях в ходе работ, что позволит вам вовремя уменьшить общий объем задач и сохранить первоначальные сроки поставки системы. Вы также можете прекратить проект в любое время и получить при этом работающую версию системы, разработка функциональности которой была оплачена вами на текущий день.

«Билль о правах» программиста

l      У вас есть право знать, что именно нужно сделать, и какова приоритетность каждой задачи.

l      У вас есть право в любое время производить качественный программный продукт.

l      У вас есть право просить и получать помощь от коллег, начальства и заказчиков.

l      У вас есть право самостоятельно оценивать объем трудозатрат по задачам, а потом вносить в них изменения.

l      У вас есть право взять на себя ответственность и не ждать, пока ее на вас возложат.

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

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



[1] по изданию: «Соединенные Штаты Америки: Конституция и  законодательство» Под ред. О.А.Жидкова. Перевод О.А.Жидкова. М.: Прогресс, Универс, 1993.


Copyright notice

© Copyright Addison-Wesley, 2001, все права защищены
© Copyright maxkir.com, перевод, 2002
© Copyright Издательский дом "Питер", 2002, все права защищены