{"id":14279,"url":"\/distributions\/14279\/click?bit=1&hash=4408d97a995353c62a7353088166cda4ded361bf29df096e086ea0bbb9c1b2fc","title":"\u0427\u0442\u043e \u0432\u044b\u0431\u0435\u0440\u0435\u0442\u0435: \u0432\u044b\u0435\u0445\u0430\u0442\u044c \u043f\u043e\u0437\u0436\u0435 \u0438\u043b\u0438 \u0437\u0430\u0435\u0445\u0430\u0442\u044c \u0440\u0430\u043d\u044c\u0448\u0435?","buttonText":"","imageUuid":""}

С чего начинается любой проект

Когда вы сталкиваетесь с созданием проекта (неважно, MVP это инновационной идеи или уже будущий highload-сервис, который вам поручило реализовать руководство), он всегда будет проходить через ключевые точки. От того, как вы расставите приоритетность этих точек, как подготовитесь к ним и как зафиксируете результат, будет зависеть успех проекта.

Для начала немного теории. Что же такое проект?

Это выполнение уникальной работы. У вас есть начало и конец + некий путь между этими двумя точками. Этот путь вы представляете себе как прямую линию (или почти прямую линию), из точки А в точку Б, где вы и должны получить результат, по которому измеряется успешность вашего проекта.

Хотим отметить, что регулярные (рутинные) процессы, которые вы ежедневно выполняете — не равны проектной деятельности. Проектные и процессные задачи не должны перемешиваться между собой. Проектные задачи должны регламентироваться отдельными правилами и нормами в вашей компании или команде.

Итак, чем мы можем управлять в проекте:

Мы любим сравнивать IT проект со строительством. Так понятнее становятся многие вещи для Заказчика (ведь они превращаются в осязаемые процессы).

Давайте представим себе конструирование загородного дома. Его проектирование можно оптимизировать, выполнив адекватное планирование. Если создавать все в неверном (пусть даже местами) порядке — трудно будет создавать, тестировать и отлаживать процесс постройки (идея, проект, закупка материалов, закладка фундамента, возведение стен и т.д).

Очень часто причиной закрытия так и не вышедшего в свет проекта — является нехватка бюджета. Большая часть этой нехватки — связана с неверным планированием в начале пути.

Тщательное планирование необходимо.

“Вы можете спланировать основные структурные компоненты и позднее решать, чем покрыть пол, в какой цвет покрасить стены, какой использовать кровельный материал и т. д. Хорошо спланированный проект открывает больше возможностей для изменения решения на более поздних этапах работы.” (Цитата С. Макконнелл “Совершенный код”)

Разные проекты (CRM, ERP, e-commerce, агрегаторы объявлений и т.д.) — требуют разного подхода в планировании. Существуют классические и гибкие методологии (постепенность процессов против коротких повторяющихся итераций) для управления проектами. Все методологии помогают нам расставить приоритеты и минимизировать потери на проекте, но не дают “серебрянной пули”.

Невозможно реализовать проект быстро, дешево, с максимально возможной функциональностью, без рисков для вас и с наивысшим качеством. Так или иначе, все аспекты придут в баланс и будут друг другу соответствовать.

Любой проект проходит через фазы развития. Каждую из них можно пройти циклично по несколько раз, перед тем как переходить к следующей.

Какие фазы проекта вас ожидают?

  • Первая и самая начальная фаза, это зафиксировать для себя требования. Описать проект: его историю (описать как он возник), изменение бизнес-среды (может быть связано с экономикой, конкуренцией и т.д.), какой путь развития выбран для проекта и пояснить причину выбора. Определить конкретные результаты и выгоды, которые будут достигнуты.
  • Планирование бюджетов и сроков. Обязательно установите временные рамки, в которые ожидается достижение целей. Желательно зафиксировать бюджет на риски, взять от максимальной планки около 30% (пусть это и будет запас на “Черный День”). Зарезервировать ресурсы (не только финансовые, но и временные, а также, необходимые специалисты — тоже являются ресурсами) для рисков, которые могут повлиять на проект. Если рисков слишком много, то необходимо переосмыслить задачу в голове.
  • Содержание проекта. Представляете себе финальную точку и начинаете декомпозицию работ (это всегда должен быть актуальный и регулярно обновляющийся документ) или иерархическая структура работ (выписать все шаги по проекту, объединив в блоки).
  • Этапы работы над проектом. Подходы к разработке зависят от предварительного понимания всех требований к системе, если на этапе проектирования возможно определить около 80% требований, то процесс будет более последовательным (скорее всего, это будут проекты, с уже отработанным бизнес-процессом, перенесение проекта на новые технологии, либо системы, которые влияют на здоровье/жизнь людей).
​Рис.1 "Последовательный подход" (С. Макконнелл "Совершенный код")

Если на предварительном этапе выработки требований к проекту, можно описать только малую часть, то рекомендуется придерживаться более гибких методологий разработки и управлять проектом фрагментарно, определив на старте минимальные жизненно важные требования к проекту. Дополнительные требования добавляются по мере развития проекта.

​Рис.2 . "Итеративный подход" (С. Макконнелл "Совершенный код")

Определить критический путь проекта. Есть те работы, которые идут параллельно или идут последовательно и их невозможно сделать, не выполнив предыдущую задачу.

  • Управление рисками. Рисковое событие — это все факторы, влияющие на ход развития проекта. Произведите взвешивание по категориям: вероятность — случится это событие или нет, и влияние событий — низкое / высокое. Зарезервируйте ресурсы для рисков. Если рисков слишком много, то необходимо переосмыслить весь проект.

Определите и зафиксируйте антирисковые мероприятия.

  • Зафиксируйте, что входит в проект и что выходит за его границы. Если вы меняете содержание — меняются сроки и бюджет. Нельзя внезапно захотеть делать вещи, которые изначально не предполагались.

“Помните о бизнес-модели проекта. Многие проблемы с требованиями исчезают при воспоминании о коммерческих предпосылках проекта. Требования, которые сначала казались прекрасными идеями, могут оказаться ужасными, когда вы оцените затраты” (Цитата С. Макконнелл “Совершенный код”)

  • Зафиксируйте план управления вехами (события) — ориентиры, чтобы понять прибыли ли вы в точку, которая отражает необходимый результат или ещё нет. Веха — это результат события, но никак не процесс. Будьте внимательны! Перечислите и кратко опишите важные достижения проекта, которые будут служить основными контрольными точками оценки хода выполнения проекта и его стоимости. Как правило, это точки, в которых выполнение какого-либо действия или группы действий приводит к тому, что проект достигает вехи, производя очень заметный или значительный результат.

Совет:
Обращайтесь за помощью к специалистам из финансовой, юридической, экономической, технической сферы, чтобы верно спланировать проект и не столкнуться в середине пути с тем, что нужно было решить вначале. Рекомендуем обращаться к потенциальным подрядчикам, т.к. это поможет определиться с выбором подрядчика и включиться им в работу.

“Внимание к требованиям помогает свести к минимуму изменения системы после начала разработки. Обнаружив при кодировании ошибку в коде, вы измените несколько строк, и работа продолжится. Если же во время кодирования вы найдете ошибку в требованиях, придется изменить проект программы, чтобы он соответствовал измененным требованиям. Возможно, при этом придется отказаться от части старого проекта, а поскольку в соответствии с ней уже написан некоторый код, на реализацию нового проекта уйдет больше времени, чем могло бы. Вы также должны будете отказаться от кода и тестов, на которые повлияло изменение требований, и написать их заново. Даже код, оставшийся нетронутым, нужно будет заново протестировать для гарантии того, что изменение не привело к появлению новых ошибок” (Цитата С. Макконнелл “Совершенный Код”)

  • Интеграция или внедрение проекта. Определите сферы деятельности, на которые влияют в течение всего срока действия или завершение проекта, и укажите, как они влияют. Например, если проект является проектом разработки приложений, некоторым организациям может потребоваться выполнять процессы вручную, пока не будет внедрен новый автоматизированный процесс.
  • Распределение ролей и зон ответственности между всеми участниками проекта. Помните, что вся ответственность за успешность или (тьфутьфутьфу) не успешность проекта — лежит на основателе.

Функциональные области в проекте это сроки, бюджет (стоимость), задачи (качество их выполнения), риски, выгоды, команда, интеграция (объединение всех областей). Всё нужно описать еще на старте и дальше переходить к выполнению этапов проекта.

Какие же это будут этапы?

  • Бюджетирование проекта. От чего зависит стоимость разработки?
  • Техническое задание. Как правильно составлять?
  • Проектирование и прототипирование проекта. Как правильно собрать данные и спроектировать понятный интерфейс с минимальным количеством переделок/доработок.
  • Реализация проекта (как двигаться из точки А в точку Б). Первый релиз (альфа/бета/полноценный запуск)
  • Поддержка проекта. Что входит и сколько это должно стоить ?

Заказчик отвечает за грамотную постановку цели, а Исполнители - помогает в достижении этой цели, делиться своим опытом. Грамотное управление и планирование приведет проект к поставленной цели (но помните, что есть еще внешние факторы и держите “руку на пульсе”).

P.S.

Книга, которую мы так часто упоминали:

0
3 комментария
Иннокентий Сар

Очень информативно. Крутая статья, спасибо!

Ответить
Развернуть ветку
Дмитрий Яковенко
Автор

Спасибо большое за обратную связь! Рад, что полезно!

Ответить
Развернуть ветку
Елена Горных

Дмитрий, могу я написать Вам в лс? Это важно. Спасибо.

Ответить
Развернуть ветку
0 комментариев
Раскрывать всегда