Deadline. Роман об управлении проектами
Шрифт:
— Понятно. И программисты устраивают своему менеджеру суд Линча.
— Непременно. К тому же представь, как ты будешь смотреть в глаза начальству. Тебе надо закончить проект к 1 июня. А что делают почти все твои программисты? Правильно — мух на потолке считают. Так как бы ты поступил?
— Если честно… если честно, я попробовал бы следующее: раз мне надо занять мою команду какой-то полезной работой, я бы просто постарался как можно раньше выделить какие-то части и раздать их разработчикам.
— Вот-вот, а поскольку вся работа по определению архитектуры состоит как раз в выделении отдельных частей из целого —
— Понял. Это будет уже не дизайн, а ерунда какая-то. Но разве у меня обязательно все получится так плохо?
— Не обязательно. Но в большинстве случаев почему-то получается как раз так. Действительно, почти во всех проектах есть некоторые задачи, которые можно выделить с самого начала. Однако если у тебя здоровенная команда, то этих задач надолго не хватит.
— Но ведь чтобы дать команде действительно важные и нужные задачи, я могу поделить на части саму работу по дизайну системы!
— А вот тогда ты встанешь на скользкую дорожку, которая сведет на нет все усилия по разработке архитектуры приложения, — заметил Кенорос. — Тебе придется разбить всю работу на пять или даже десять частей, чтобы распределить ее между всеми своими сотрудниками. Но такое грубое деление должно само по себе стать частью дизайна системы. А ты подходишь к задаче не как архитектор, а как менеджер по персоналу, которому надо занять людей работой.
— Но ты говоришь, что даже грубо приблизительное деление проекта на части — уже дизайн.
— Так и есть. И поскольку никто не берет на себя ответственность за сведение воедино всех кусочков дизайна, в результате получится сущая ерунда. К тому же эффективнее всего использовать людей для написания кода и тестирования, поэтому с первых дней проекта у руководителей возникает непреодолимое желание засадить всех за код, даже несмотря на то, что архитектура системы еще до конца не определена.
Но мистера Томпкинса было не так-то просто переубедить:
— Если все так, как ты говоришь, то в большинстве случаев ни одна команда не сможет создать хорошо продуманную архитектуру просто потому, что в большинстве проектов даже на начальной стадии работает больше пяти человек.
— Боюсь, это суровая правда жизни, — ядовито усмехнулся Кенорос. — Сейчас даже в самом начале над проектами работает куда больше людей, чем требуется. Команда проходит все этапы разработки, предусмотренные процессом, вот только дизайна системы в результате не получается. Внутренняя структура развивается вместе с продуктом, и ни у кого нет ни времени, ни возможности хотя бы окинуть ее взглядом и подправить. Проходит несколько лет, систему надо менять. И вот наконец появляется человек, в обязанности которого входит изменение дизайна старой системы. И тут происходит самое печальное.
— Самое печальное? Что же это?
— А то, что этот человек, который появится в проекте через несколько лет, будет первым, кто увидит и оценит настоящую архитектуру системы.
Весь день мистер Томпкинс обдумывал то, о чем они говорили с Аристотелем. Если Кенорос прав, то последствия слишком раннего роста команд разработчиков можно заметить не только у них в Айдриволи, но и во всей отрасли, по всему миру. В большинстве случаев вместо самой
После обеда пришла Белинда, и мистер Томпкинс тут же подробно изложил ей всю идею. Вопреки его ожиданиям, она ничуть не удивилась.
— Не вижу ничего нового и из ряда вон выходящего. Управление — это всегда поиск компромиссов. Дизайн — тоже некий компромисс. Тебе нужно занять команду работой, поэтому ты соглашаешься на не самый лучший дизайн.
— Одно дело, когда речь идет о «не самом лучшем». Другое — когда дизайна нет вообще.
— Вебстер, какой-то дизайн есть всегда. Просто он не так хорош, как тебе бы хотелось. Даже если все время, отведенное на дизайн, потрачено впустую, все равно у системы будет внутренняя архитектура. Иначе этот твой будущий специалист, который придет в проект через несколько лет, не сможет ничего в ней поменять.
— Ну, пусть так. Я согласен, какой-то дизайн есть всегда. Мы говорим сейчас не об этом, а о том, что качество «стихийного» дизайна куда хуже, чем у продуманного заранее.
Белинда расчистила себе часть доски для записей.
— Вот, смотри, — и начала быстро водить по ней фломастером. — Вот это вся система, а это — ее части.
— Здесь изображен только один способ, как можно поделить целое на части. На самом деле таких способов очень много. Вот еще один, — и она быстро пририсовала вторую картинку рядом с первой. — Чтобы понять, какой из способов лучше и правильнее, мы должны оценить возникшие в результате деления взаимодействия. Если их много и они сложные, то деление было сделано не лучшим образом.
— Абсолютно правильно, — кивнул мистер Томпкинс. — Причем не только в дизайне. Это важно при любом делении целого на части — например, когда ты распределяешь работу между людьми.
— Сейчас мы перейдем к этому. Итак, посмотрим, какие взаимодействия мы получили в результате деления. Оценим дизайн, иными словами, выберем тот рисунок, который изображает лучший способ деления проекта на части.
— Мы должны выбрать рисунок справа, — произнес мистер Томпкинс голосом прилежного ученика.
— Правильно, Вебстер! Мы выберем его, потому что он проще и взаимодействие между частями гораздо яснее выражено, чем на рисунке слева. Так вот, делить работу между людьми или командами мы будем точно так же, — сказала Белинда и нарисовала ниже еще два рисунка.
— Итак, взаимодействия между людьми аналогичны взаимодействиям между частями проекта, таким образом, — Белинда показала пальцем, — взаимодействие между разработчиком 3 и разработчиком 4 совпадает с взаимодействием между частью 3 и частью 4.
Неудержимый. Книга XVIII
18. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Стеллар. Заклинатель
3. Стеллар
Фантастика:
боевая фантастика
рейтинг книги
Вторая невеста Драконьего Лорда. Дилогия
Вторая невеста Драконьего Лорда
Любовные романы:
любовно-фантастические романы
рейтинг книги
Ученик. Книга третья
3. Ученик
Фантастика:
фэнтези
рейтинг книги
Кодекс Охотника. Книга XVII
17. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Провалившийся в прошлое
1. Прогрессор каменного века
Приключения:
исторические приключения
рейтинг книги
Эволюционер из трущоб. Том 3
3. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
рейтинг книги
Газлайтер. Том 14
14. История Телепата
Фантастика:
попаданцы
аниме
фэнтези
рейтинг книги
6 Секретов мисс Недотроги
2. Мисс Недотрога
Любовные романы:
любовно-фантастические романы
эро литература
рейтинг книги
О, мой бомж
1. Несвятая троица
Любовные романы:
современные любовные романы
рейтинг книги
Кодекс Охотника. Книга XV
15. Кодекс Охотника
Фантастика:
попаданцы
аниме
рейтинг книги
Протокол "Наследник"
1. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Возлюби болезнь свою
Научно-образовательная:
психология
рейтинг книги
