Наши подходы к управлению проектами

Управление проектами

Мы достигаем целей проекта без лишних затрат

Как мы проводим анализ

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

Как мы проводим R&D

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

  • Это в таком виде вообще достижимо? Если да, то какие есть варианты и цена на них.
  • Если не достижимо, то какие есть альтернативы, чтобы все таки достичь целей проекта и сколько эти альтернативы стоят.

Обычно эта фаза делается до старта технологически сложного проекта с целью снять риски.

Как мы планируем проект

Бывают разные проекты и для них используются совершенно разные подходы:

  1. Если границы проекта четко определены, проект небольшой и внесения изменений в требования не предвидится, то мы можем дать календарную оценку и определить бюджет проекта.
    Далее мы строим план итераций с задачами в них, понимаем какая требуется команда, закладываем риски и служебные активности.
  2. Для многих проектов на фазе старта результат проекта еще не определен. Ясны цель и направление, а сам проект - это итеративный путь для достижения цели.
    Обычно так разрабатываются все новые продукты, которые переосмысливаются в процессе разработки и в результате получения обратной связи от рынка и потенциальной аудитории.
    Для таких продуктов ставятся высокоуровневые цели и сроки их достижения. А потом планируются итерации и задачи в рамках итераций. Достижение каждой такой цели можно рассматривать как мини-проект.

Как мы ведем проект

Обычно мы используем одну из agile методологий, которую адаптируем под специфику работы с конкретным клиентом. Практически всегда процесс работы над проектом делится на итерации (спринты), итерация длится 2-3 недели.
На итерацию клиентом и командой ставятся цели и планируется определенный набор задач. Результаты итерации передаются клиенту в виде релиза продукта, с которым клиент может поработать.
Этот подход позволяет клиенту постоянно быть в контакте с командой, отслеживать прогресс и корректировать результат в нужную сторону.

Как работает наше QA

Наши инженеры по качеству составляют чек листы - списки всех кейсов, которые необходимо проверить.

Само тестирование может быть ручным, а может быть автоматизированным. Выбор того или иного подхода зависит от цены и от следующих параметров:

  • Необходимость прогонять тесты при каждой сборке проекта
  • Требовательность системы к отсутствию ошибок, обусловленных человеческим фактором (например, для финансовых систем)
  • Какие-то еще специфические условия

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

При определенном уровне требований к защите информации мы проводим автоматизированное тестирование на проникновение для каждого нового релиза.

Поддержка

Мы решаем некритичные вопросы, возникающие в созданных нами системах, обычно в течение 1-2 дней. В случае критичной проблемы возможны ситуации немедленного реагирования, например, в случае сбоя работы сервиса с большим числом пользователей.

Но обычно для таких сервисов мы настраиваем системы мониторинга различных параметров среды и автоматического восстановления в случае сбоя.