Руслан Раянов
Управление проектом разработки сайта или веб-приложения
От идеи до внедрения
2015
Введение
Начнем с признания. Мне еще очень много нужно сделать, чтобы вести проекты на действительно высоком уровне. Я не претендую на эксклюзивность моих идей. Просто излагаю свой опыт и мысли, и, надеюсь, что это будет для вас хорошим бумажным (вернее электронным) помощником при ведении проектов.
Сразу хочу сказать, что пишу эту книгу исходя из своих сугубо прагматических интересов. В первую очередь, книга направлена на людей, с которыми я работаю. Это наши разработчики и менеджеры проектов. Именно они делают результат, который мы имеем сейчас. Мне бы очень хотелось иметь общее видение и представление о ведении проектов, и, чтобы каждому члену команды были понятны наши общие принципы и основные методики ведения проекта.
Во-вторых, эта книга для наших клиентов. Т.е. для тех, кто является заказчиком проектов, которые мы ведем. Понимание того, как ведется разработка, значительно упрощает взаимодействие между исполнителем и заказчиком. Обычно недопонимание возникает из-за отсутствия полной картины по проекту, либо неучтенной сложности. В книге мы рассмотрим моменты, связанные с заказчиком и его роли в разработке сайта или веб-приложения.
В-третьих, эта книга для тех, кто просто хочет научиться управлять проектами или узнать что-то новое по этой теме. Причем это не обязательно должен быть программный проект. По своей сути, практически все проекты имеют очень сходную структуру. У всех есть начало, конец, ресурсы, цель, план и т.д. В книге мы рассмотрим все составляющие в контексте проекта на разработку сайта.
После прочтения книги у вас будет представление о том:
● что такое проект
● что такое принципы эффективности
● как вести проект
● как управлять ресурсами на проекте
● как планировать проект
● как решать проблемы
● как вести ежедневную текучку по проектам
● как делать отчеты по проектам
● как организовать взаимодействие с заказчиком и исполнителями
Сейчас есть довольно большое количество различных методик (agile, scrum и т.д.). Мы не будем рассматривать ведение проекта в контексте какой-либо методологии. Я просто опишу наше видение, как надо вести проекты. Что-то может пересекаться с известными методологиями, что-то – нет. Поэтому при прочтении прошу не сравнивать с другими подходами ведения проекта.
Какие проекты мы будем рассматривать в книге?
В первую очередь, это те проекты, которые мы сами разрабатываем. Это сайты и веб-приложения со своей специфической бизнес-логикой, которые требуют разработки на заказ. Т.е. это, например, CRM, в которой автоматизируются сложные бизнес-процессы, либо интернет-магазин с нетипичной функциональностью, либо агрегатор-биржа по какой-то отрасли. В общем, все то, что не подпадает под стандартные CMS. Подобные проекты отличаются от потокового создания визиток в первую очередь тем, что здесь гораздо больше неизвестных переменных: сложность модулей, программисты и их навыки, изменчивые требования и т.д.
Другой момент, мы не рассматриваем большие проекты со стоимостью выше 1-2 млн. рублей. У меня нет опыта разработки подобных проектов и думаю там есть значительные отличия. В первую очередь в том, что надо учитывать значительно больше интересов разных сторон. Важный момент – при увеличении размера проекта сложность его ведения увеличивается непропорционально. Т.е., чем больше объектов задействовано в проекте, тем сложнее всем этим управлять, и зависимость сложности от количества нелинейная.
Возможно, те, кто далек от мира разработки сайтов и веб-приложений, сочтут, что это чтиво не для них. Специально для вас, вся наша жизнь – это продвижение от одного проекта к другому: поездка на отдых, уборка квартиры, свидание, устройство на новую работу, открытие своего бизнеса, разработка сайта, – все это проекты. Воспринимайте все, что вы делаете для достижения определенных целей как проекты. Принимая такой контекст, примените эту книгу для достижения своих целей. Мы не будем рассматривать в книге постановку целей (цель в наших проектах – сделать сайт). Вы сами можете их определить и прорабатывать их в соответствии с принципами, заложенными в этой книге. Рекомендую вам начинать с одного проекта – иначе вы рискуете забросить это дело в середине пути, а это самый худший исход проекта.
Итак, давайте начинать. В первой главе мы изучим принципы, на основании которых мы ведем проекты.
Глава 1. Принципы ведения проекта
Принципы – это основа. Это фундамент. Всегда отталкивайтесь от принципов, а не от правил, ограничений, прихотей заказчика и т.д. Принципы – это компас. В любую непогоду он выведет вас на нужный путь. Следуя четким принципам, вы снижаете риски принятия неверных решений. Принимая сложное решение, всегда спрашивайте себя, а как это соотносится с вашими принципами? В общем, вы меня поняли – в ситуации неопределенности действуйте согласно принципам, а не каким-то другим соображениям.
Очень важно, чтобы вся команда действовала по одинаковым принципам и ценностям. Если это не так, то начинаются трение и недопонимание.
Конечно, со временем принципы меняются. Что-то оказалось неэффективным, что-то мы узнаем новое и пробуем. Давайте разделим все принципы на основные и дополнительные. Основные имеют приоритет и раскрывают ваши основные ценности. У каждой команды они могут быть разные. Важно, чтобы внутри команды было согласие по ним.