Том ДеМарко Deadline: Роман об управлении проектами
Vsevolod Ustinovにより
1. Руководство ИТ-проектами:
1.1. найти нужных людей
1.2. дать им ту работу, для которой они подходят больше всего
1.3. не забывать о мотивации
1.4. сплотить команду и поддерживать её
1.5. всё остальное - административная ерундистика
2. Безопасность и перемены
2.1. Если человек не чувствует, что находится в безопасности, он будет противиться переменам.
2.2. Перемены необходимы руководителю для успешной работы (наверняка они необходимы и в любой другой деятельности).
2.3. Неуверенность заставляет человека избегать риска.
2.4. Избегая риска, человек упускает все новые возможности и выгоды, которые могли бы принести ему перемены.
2.5. Человека легко запугать прямыми угрозами, но также можно просто дать ему понять, что при случае с ним могут обойтись грубо и жестоко. Эффект будет таким же.
3. Отрицательная мотивация
3.1. Угрозы — самый неподходящий вид мотивации, если вас волнует производительность сотрудников.
3.2. Чем бы вы ни угрожали, задача все равно не будет выполнена, если с самого начала вы отвели на ее выполнение слишком мало времени.
3.3. Более того, если люди не справятся, вам придется выполнить свои обещания.
4. Повышение производительности
4.1. Не существует никаких краткосрочных мер, которые позволили бы быстро повысить производительность работы.
4.2. Повышение производительности — результат долгосрочных усилий.
4.3. Любые средства для повышения производительности, которые обещают немедленный результат, на самом деле не что иное, как «птичье молоко».
5. Управление рисками
5.1. Чтобы управлять проектом, достаточно управлять его рисками.
5.2. Создайте список рисков для каждого проекта.
5.3. Отслеживайте те риски, которые являются причиной провала проекта, а не только конечные риски.
5.4. Оцените вероятность возникновения и стоимость каждого риска.
5.5. Для каждого риска определите показатель — симптом, по которому можно определить, что риск превращается в проблему.
5.6. Назначьте специального человека для управления рисками, и пусть он не поддерживает девиз «Мы можем все!», который культивирует начальство.
5.7. Создайте доступные (возможно, анонимные) каналы для сообщения плохих новостей руководству.
6. Игра в защите
6.1. Сокращайте потери.
6.2. Успех проекта можно скорее обеспечить сокращением ненужных усилий, чем стремлением к новым победам.
6.3. Чем раньше вы прекратите ненужную работу, тем лучше для всего проекта.
6.4. Не пытайтесь создавать новые команды без необходимости; поищите в коллективе уже сложившиеся и сработавшиеся команды.
6.5. Оставляйте команды работать вместе и после окончания проекта (если они сами того хотят), чтобы у пришедших вам на смену руководителей было меньше проблем с плохо срабатывающимися командами.
6.6. Считайте, что команда, которая хочет продолжать работать вместе и дальше — это одна из основных целей любого проекта.
6.7. День, который мы теряем в начале проекта, значит так же много, как и день, потерянный в конце.
7. Сбор метрических данных
7.1. Определяйте размер каждого проекта.
7.2. Не усердствуйте поначалу с выбором единицы измерения — если впоследствии вам предстоит работать с реальными данными, для начала сойдут и абстрактные единицы.
7.3. Стройте сложные метрики на основе простых (тех, которые легко подсчитать в любом программном продукте).
7.4. Собирайте архивные данные, чтобы считать производительность труда по уже законченным проектам.
7.5. Работайте над формулами вычисления сложных синтетических метрик до тех пор, пока полученные результаты не будут наиболее точно отражать отношение абстрактных единиц к указанному в архивных данных объему работ.
7.6. Проведите через всю архивную базу данных линию тренда, которая будет показывать ожидаемый объем работ в виде отношения значений сложных синтетических метрик.
7.7. Теперь для каждого нового проекта достаточно будет высчитать значение синтетической метрики и использовать ее при определении ожидаемого объема работ.
7.8. Не забывайте об «уровне помех» на линии производительности и используйте его, как индикатор при определении допустимых отклонений от общей траектории.
8. Что дает давление сверху
8.1. Люди не начнут быстрее соображать, если руководство будет давить на них.
8.2. Чем больше сверхурочной работы, тем ниже производительность.
8.3. Немного давления и сверхурочной работы могут помочь сконцентрироваться на проблеме, понять и почувствовать ее важность, но длительное давление всегда плохо.
8.4. Возможно, руководство так любит применять давление, потому что просто не знает, как еще можно повлиять на ситуацию, или же потому, что альтернативные решения кажутся им слишком сложными.
8.5. Давление и сверхурочная работа призваны решить только одну проблему — сохранить хорошую мину при плохой игре.
9. Сердитый начальник
9.1. Злость и неуважение заразительны. Когда высшее руководство демонстрирует злость и неуважение к подчиненным, руководители среднего звена начинают копировать их поведение.
9.2. Неуважение и злоба, по мнению некоторых начальников, должны заставить подчиненных лучше работать. Это типичная политика «кнута и пряника». Но разве когда-нибудь неуважение со стороны начальства приводило к тому, что люди начинали лучше работать?
9.3. Если начальник демонстрирует неуважение к подчиненным, это признак того, что он не может больше занимать свою должность (а вовсе не признак того, что у него плохие подчиненные).
10. Туманные спецификации
10.1. Неясность спецификации говорит о том, что между участниками проекта есть неразрешенные конфликты.
10.2. Спецификация, в которой нет списка типов входящей и исходящей информации, не должна даже приниматься к рассмотрению. Это значит, что она попросту ничего не специфицирует.
10.3. Никто никогда не скажет вам, что спецификация плоха. Люди скорее будут обвинять себя в неспособности понять написанное, чем ругать авторов спецификации.
11. Конфликт
11.1. Проект, в котором участвуют несколько сторон, обязательно столкнется с конфликтом интересов.
11.2. Процесс создания и распространения программных систем — прямо таки рассадник всевозможных конфликтов.
11.3. В большинстве компаний, где создается программное обеспечение, никто специально не занимается вопросом решения конфликтов.
11.4. Конфликт заслуживает понимания и уважительного отношения. Конфликт не имеет ничего общего с непрофессиональным поведением.
11.5. Донесите до каждого, что постараетесь учитывать интересы всех участников, и проследите, чтобы так оно и было.
11.6. Тяжело договариваться. Гораздо легче выступать посредником.
11.7. Объявите заранее, что если интересы конфликтующих сторон полностью или частично противоположны, то поиск решения будет переложен на посредника.
11.8. Не забывайте: мы находимся по одну сторону баррикад. По другую сторону находится сама проблема.
12. Кто такой катализатор проекта
12.1. Существуют люди катализаторы. Они помогают создать здоровую команду, отношения, боевой дух. Даже если бы они больше ничего не делали (а как правило, они делают куда как много), их роль в проекте остается одной из наиболее важных.
12.2. Посредничество — еще одна сфера, в которой люди катализаторы просто незаменимы. Впрочем, посредничеству можно научиться, это не очень сложно.
12.3. Первым шагом к посредничеству должна быть маленькая церемония. Например, можно произнести фразу: «Вы позволите мне попробовать помочь вам решить этот спор?»
13. Проблемы социологии
13.1. Собрания должны быть небольшими. Для этого нужно сделать так, чтобы люди не боялись пропускать ненужные им собрания. Самый простой способ — заранее опубликовать повестку дня, а потом всегда строго её придерживаться.
13.2. Каждому проекту нужна какая-то церемония или ритуал.
13.3. С помощью церемоний можно концентрировать внимание собравшихся на основных целях и задачах совещания: сократить состав рабочей группы, повысить качество программного кода и т. п.
13.4. Защищайте людей от оскорблений и ругани Начальства.
13.5. Запомните: в работе страх = гнев. Те руководители, которые любят кричать на своих подчиненных и всячески унижают и оскорбляют их, на самом деле просто чего-то очень боятся.
13.6. Если бы для всех проявление грубости и злости к подчиненным всегда значило бы, что начальник просто боится, то никто из начальников не стал бы так себя вести просто из страха, что его страх станет заметен! (Это, конечно, не решает проблем такого руководителя, но, по крайней мере, оберегает его подчиненных.)
14. О персонале
14.1. Если в самом начале проект делает большая команда, это снижает эффективность самой ответственной части работы — определения архитектуры системы (потому что всем разработчиком надо скорее дать какую-то работу).
14.2. Если работу раздать людям и командам еще до того, как завершится стадия дизайна продукта, не получится создать простые и эффективные модели взаимодействия между людьми и рабочими группами. Это приведет к потере независимости, увеличению числа собраний и совещаний, общему недовольству.
14.3. В идеале было бы хорошо сначала набрать маленькую команду, которая создала бы продуманную архитектуру системы, а уже потом, на последнюю, шестую часть времени разработки в эту команду можно было бы добавить новый персонал (который работал бы непосредственно над кодированием).
14.4. Те команды, перед которыми не ставят жестких сроков, заканчивают работу быстрее!
15. Человеку свойственно ошибаться
15.1. Нам кажется, что самое страшное — не знать чего то. На самом деле гораздо хуже быть уверенным, что знаешь, когда на самом деле это не так.
16. О паталогической политике
16.1. Эту патологию невозможно вылечить снизу.
16.2. Не стоит терять время или подвергать себя опасности, чтобы проверить предыдущий постулат на собственном опыте.
16.3. Иногда единственным выходом из ситуации становится выжидание. Попробуйте подождать, пока проблема не разрешится сама по себе или пока вы не найдете способ уйти от нее в сторону.
16.4. Чудеса, конечно, случаются, но лучше всё же на них не рассчитывать.
17. Злоба и скупость
17.1. Злоба и скупость — вот формула, которую начинают применять в плохих компаниях те, кто несет ответственность за неудачи в бизнесе.
17.2. Злоба и скупость прямо противоположны истинным целям любой хорошей компании — быть щедрыми и заботливыми по отношении к своим сотрудникам.
17.3. Когда вы подмечаете в компании проявления злобы и скупости, знайте, их настоящая причина — страх и боязнь провала.
18. Основы здравого смысла
18.1. У проекта должно быть два срока сдачи — запланированный и желаемый.
18.2. Эти сроки должны быть разными.