— Что?
— Я выбрал на кривой то место, где «поправка на рост» составляет приблизительно половину всей реальной производительности. То есть в этой точке напрасно расходуется около трети времени, которое мы приняли за идеал.
— Так, это мне понятно.
— И сколько человек будет работать в команде в этот момент?
— Понятия не имею.
— Ну конечно же, вы не можете назвать точную цифру. Но мы и не пытаемся сейчас добыть из вас точные знания. Мы пытаемся понять ваши ощущения. Спросите у своей интуиции: сколько человек должно работать в команде программистов, чтобы треть всего времени уходила на общение и тому подобные вещи?
— Но мой ответ будет очень и очень приблизительным.
— Давайте, давайте, говорите. Сколько?
— Я бы сказал — около четырех человек.
— Иными словами, «чистая производительность» четырех человек, работающих в одной команде, будет приблизительно на треть меньше, чем «производительная мощность» человека, работающего над проектом в одиночку, помноженная на четыре?
Мистер Томпкинс пожал плечами.
— Разумеется, я не могу говорить с полной уверенностью, но мне кажется, так оно и есть.
— Хорошо, — доктор Джамид опять обратился к ноутбуку и стал вносить в модель необходимые дополнения. Еще через несколько минут дело было сделано. Доктор Джамид повернул экран к мистеру Томпкинсу. — Вот она, модель ваших интуитивных ощущений относительно размеров команды.
— Что-то вроде многозначных кодов?
— Ну, если не найдем чего-нибудь получше, можно взять и многозначные коды. Способность выполнять поставленные задачи контролируется клапаном под названием «Общая производительность труда». Чем выше ее значение, тем быстрее работа перемещается из первого резервуара во второй. Естественно, общая производительность должна выражаться в тех же единицах, что и количество работы в резервуарах.
— Понятно… — протянул мистер Томпкинс, хотя на самом деле был в этом далеко не уверен.
— Вот эти тонкие стрелочки — зависимости. Они показывают, например, что общая производительность зависит от четырех вещей: от размера команды; от того, сколько в ней новичков, которые еще не вошли в курс дел; от «поправки на рост» и от «стоимости интеграции».
— А стоимость интеграции, если я правильно понимаю, — это отношение производительности, которую команда теряет при появлении в ее составе новых членов, к скорости работы?
— Да. А теперь я напишу уравнение или построю графическое определение для каждого клапана и каждого измерителя. Например, вот как я определяю значение «поправки на рост».
— Как видите, ее начальное значение — ноль, и к тому времени, когда у вас в команде появляется четыре человека, оно вырастает приблизительно на треть. А дальше — это просто мои догадки относительно того, какой вы хотели бы видеть эту кривую.
Мистер Томпкинс уставился на модель. Интересно, это и есть графическое представление его догадки о том, как влияет на работу команды увеличение числа программистов?
Доктор Джамид, казалось, умел читать мысли.
— Пока мы играем с этой моделью, вам, может, захочется что-то в ней изменить. Может быть, в этой вот кривой, а может, даже перестроить всю модель целиком.
— Да, чтобы она соответствовала тому, что мне подсказывает интуиция.
— Абсолютно верно.
— Так вот, как раз сейчас моя интуиция подсказывает мне, что в эту модель необходимо внести некоторые исправления. А именно — ее не устраивает, что значение «поправки на рост» остается неизменным. Может быть, оно должно выражаться динамической функцией от времени. В конце концов, с течением времени люди привыкают работать вместе.
Доктор Джамид согласно кивнул.
— Расскажите мне об этом поподробнее, пожалуйста.
Мистер Томпкинс помолчал и задумчиво начал:
— Иногда мне кажется, что команды могут достигать такой слаженности в работе, что значение «поправки на рост» с течением времени становится отрицательным. Происходит нечто, после чего команда становится единым целым — ее производительность становится больше, чем сумма производительности ее членов. Все начинают работать вместе… и… даже не знаю, как сказать точнее… происходит слияние.
Через несколько минут Абдул повернул монитор к мистеру Томпкинсу:
— Что-то в этом роде?
— Да, похоже. В командах действительно может наблюдаться «эффект слияния», как вы это называете. А теперь можно вернуться к стоимости интеграции и переопределить ее значение.
— Разумеется.
Мистер Томпкинс молча рассматривал модель на экране ноутбука.
— Как только вернусь, сразу куплю такой и себе.
— Я использую Ithink, — ответил доктор Джамид13, — но покупать его вам не нужно. Разрешите мне вам его подарить, — и он достал из сумки запечатанную коробочку.
— О, Абдул. Ну зачем же?! Я бы прекрасно мог и сам…
Доктор Джамид протестующе поднял руки.
— Пожалуйста, Вебстер. Это просто дополнение к тому, о чем мы говорили, ко всем моим моделям и схемам. Кроме того, он стоил мне меньше, чем тот замечательный обед, которым вы меня угостили сегодня в Риме, поверьте. — С этими словами он протянул мистеру Томпкинсу коробочку, и когда тот взял подарок, снова полез в сумку и достал оттуда дискету. — А здесь вы найдете все модели, которые мы с вами разработали за два дня. Это вам пригодится для начала…
— …для начала работы над моделированием всех наших интуитивных предположений, — продолжил за него мистер Томпкинс. — И мы будем этим заниматься, пока не опишем их все. Обещаю вам, Абдул. Обещаю, мы это сделаем.
Из дневника мистера Томпкинса
Моделирование процесса разработки
1. Моделируйте свои предположения и догадки о том, как пойдет процесс работы.
2. Обсуждайте эти модели вместе с партнером, чтобы лучше понимать процесс работы и вносить необходимые исправления.
3. Предсказывайте результаты работы с помощью модели.
4. Сравнивайте результаты, полученные а процессе моделирования, с реальными.
Глава 11
Зловредный министр Бэллок
Прохладным весенним утром мистер Томпкинс шагал на работу, хотя еще не было и семи. Когда погода великолепная и утро обещает еще один чудесный день, хорошо пройтись пешком, любуясь окрестным пейзажем и никуда особо не торопясь. От резиденции мистера Томпкинса до места работы было не больше мили, причем дорога пролегала по исключительно живописной местности: с одной стороны простирались виноградники, с другой — журчал ручей. И каждый день по дороге на работу мистер Томпкинс задавал себе один и тот же вопрос: почему развитые страны так преуспели в создании материальных благ, но не могут при этом обеспечить человеку прекрасный пейзаж по дороге из пункта А в пункт Б? Вот в Моровии дороги потрясающе красивы, где бы ни находились пункты А и Б.
Было еще рано, поэтому он, не торопясь, прошел вдоль ручья за поворот, ведущий к комплексу зданий компании. Еще полмили, и он подошел к небольшому пруду, возле которого стояла деревянная скамейка. Мистер Томпкинс очень любил сидеть тут по утрам и размышлять. Подходить к скамейке нужно было осторожно — возле пруда нередко можно было встретить крольчиху с выводком или даже оленей, и мистер Томпкинс не хотел их беспокоить.
Присев на скамейку, мистер Томпкинс блаженно вздохнул. Его охватило чувство спокойствия и удовлетворения. Да, пожалуй, никогда в жизни он не был так счастлив, как за три месяца пребывания в Моровии. Получается, что увольнение стало для него благом, перевернуло всю его жизнь? Нет, не совсем так. В конце концов, многие люди в таких условиях заканчивают куда как хуже, чем он. Но дело все же не в увольнении. Ему повезло, что его похитила Лакса Хулигэн.
Вдруг раздался всплеск, а через секунду — радостное птичье пение из ветвей дерева, что росло у самой воды. Мистер Томпкинс очень медленно и осторожно потянулся к рюкзаку, вытащил оттуда энциклопедию о птицах и бинокль, которые купил как раз для этой цели. Разглядеть певца не составило большого труда — мистер Томпкинс сразу увидел пичугу с ворохом зеленых перьев на голове. Ему даже не понадобилась энциклопедия: конечно же, перед ним опоясанный пегий зимородок. Записав в блокнот «4 апреля, опоясанный зимородок», мистер Томпкинс положил все принадлежности рядом на скамейку на случай, если ему посчастливится увидеть еще кого-нибудь.
Теперешнее расслабленное состояние вовсе не означало, что у мистера Томпкинса совсем не было проблем. Конечно же, проблемы были — а как же без них, когда ты управляешь командой талантливых разработчиков! Проблемы с руководством программистами есть всегда, и моровийские программисты в данном смысле ничуть не отличаются от своих западных коллег. Более того, хорошие программисты это прекрасно знают и нередко напоминают об этом начальству. Конечно, некоторые из них заставили мистера Томпкинса помучиться, но он уже много лет назад выучил одно полезное правило: уважать любого, даже самого вредного из своих подчиненных.