http://www.ashmanov.com
I. Правильный проект: запуск, ведение, завершение
Основные принципы устройства коротких проектов
В качестве примера коротких проектов по разработке ПО можно привести разработку сайта, небольшие внутрифирменные информационные системы для собственных нужд, первые версии программ для внешних потребителей, разработку shareware и так далее.
Такой короткий проект обычно отличается от длинного и большого тем, что:
- проект часто возникает в организации, не занимающейся разработкой ПО профессионально
- руководитель проекта имеет обычно небольшой опыт разработки, занят и другой, основной деятельностью
- ресурсы сильно ограниченны: сроки небольшие, людей мало - каждый разработчик и менеджер проекта на счету
В условиях сильно ограниченных ресурсов нет возможности делать всё по-хорошему: тщательно планировать, использовать специальные средства планирования и управления, методично нанимать нужных специалистов, закладывать достаточные сроки тестирования и документирования.
В небольшом проекте не получается рассматривать персонал как атомы, движение которых подчиняется макро-законам. (Я, впрочем, считаю, что и в большом проекте тоже нельзя.)
В таких условиях люди становятся ключевым фактором и никакие формальные "техники" управления проектом не смогут заменить работы с людьми. В условиях дефицита ресурсов приходится иметь дело с теми, кто есть под рукой, и именно отношения с этими людьми будут определять успех проекта.
Отсюда вытекает принцип номер один:
Принцип А. Кадры решают всё.
Автор этого принципа широко известен.
Люди вовлечены в проект настолько, насколько они чувствуют свою ответственность за него, поэтому второй основной принцип гласит:
Принцип Б. Ключ к успеху проекта - передача ответственности участникам проекта.
(Предвидя возможные возражения разработчиков, скажу, что энтузиазм и авторские творческие порывы я тоже отношу к чувству ответственности.)
Для того, чтобы возложить ответственность за что-либо на кого-либо, нужно это сделать в явном виде. Назовем это переключением ответственности.
Точками переключения ответственности служат решения. Отсюда - третий принцип:
Принцип В. Ключевой момент переключения ответственности - принятие решения.
Например, принятие решения о запуске проекта переключает ответственность за проект на руководителя проекта, а ответственность за выделяемые ресурсы - на его нанимателя.
Руководитель проекта в свою очередь начинает транслировать часть ответственности дальше вниз, принимая решения о подборе и расстановке разработчиков.
Если люди, структура ответственности и решения в проекте выбраны правильно, то и проект будет правильным.
Правильный проект
В понятие "правильного проекта" я включаю самые простые вещи: необходимый минимум действий - не технических, а относящихся к ответственности и взаимоотношениям людей в проекте. А именно:
- правильный запуск проекта
- правильный контроль
- правильное окончание или остановка проекта
Ключевым этапом является запуск проекта, поскольку именно на этом этапе обычно закладываются основные ошибки проекта.