Снижение рисков при планировании разработки веб-проекта | Umbrella IT

Снижение рисков при планировании разработки веб-проекта

Как построить работу и получить качественный продукт?

 

Давайте представим, что мы запускаем проект. Что мы чувствуем? Как правило, у нас сразу возникает ряд вопросов, страхов и опасений:

  • Вдруг команда разработчиков не справится с проектом и я так и не получу его в завершенном виде?
  • Что если сроки проекта растянутся, траты увеличатся?
  • Возможно, проект получится некачественным?

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

Никто не может дать 100% гарантий. К счастью, компания Umbrella провела опрос среди более 100 своих клиентов и подготовила специальную инструкцию со списком важных критериев: следуем ей – сокращаем риски и получаем желаемый результат.

 

План первого разговора

 

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

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

 

Ломаете голову, что важно спросить, на что обратить внимание и что не упустить из виду во время первого разговора с потенциальным исполнителем?

Вот подробная инструкция по проведению первого разговора, где указаны пункты и критерии, на которые стоит обратить внимание:

 

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

Необходимо проговорить и утвердить в словесной форме, что Predevelopment будет абсолютно бесплатным и включит в себя:

  • wireframe, function map (mindmap) – по сути это функциональная карта сайта/приложения;

  • юзкейсы – с помощью юзкейсов мы можем представить себе, какие возможности будет иметь юзер в приложении;
  • оценку проекта, включающую в себя расходы на запуск проекта и все, что с ним связано и при этом отсутствие каких-либо предоплат. Все выплаты должны осуществляться по факту отработанных часов или оговоренному плану трат, поскольку профессионалы стоят денег и у каждого свой рейт;
  • разбиение проекта на фазы – работа и продвижение короткими фазами дает нам возможность быстрее понять в чем плюсы, а в чем минусы и вовремя их исправить, тем самым быстрее получить проект и выйти на рынок.

 

 

КОМАНДА – в профессиональной команде разработчиков должен быть отдельный специалист в каждой области, а не человек-оркестр, который умеет все из разных областей (UX/программист/QA), но на практике оказывается, что он умеет все по чуть-чуть, а этого чуть-чуть совершенно не хватает для создания качественного проекта.

Пусть компания подтвердит, что у них в команде есть следующие специалисты:

 

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

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

Автоматизация тестирования – это конвертация ручного тестирования в автоматическое путем написания специального кода, который автоматически прогоняет различные проверки.

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

Нагрузочное тестирование проверяет и показывает, какое количество пользователей выдержит сервер в реальности после запуска проекта.

 

  • DevOps – уточняем, есть ли в команде DevOps, имеет ли исполнитель возможность взять запуск нашего проекта на себя и успешно его осуществить.

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

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

 

  • 1 point of contact. Типичная ситуация: “Мы рассказали про фичу одному разработчику. Тут к нам обращается с вопросами по смежной фиче другой, а через неделю звонит Тимлид и презентует архитектуру, которая не учитывает ранее оговоренные фичи”.

Во избежание таких неловких моментов, определяем одного ответственного человека, который будет единственным каналом связи с командой разработчиков, в идеале им должен быть ПМ (проджект-менеджер) или ТимЛид (лидер группы разработчиков).

 

 

ПРОЦЕСС РАБОТЫ – чем прозрачней и проще выстроен процесс разработки проекта, тем удобней нам контролировать каждый из его этапов, вовремя менять и перестраивать его компоненты, а также, с легкостью и безболезненно заменять одну команду другой, при этом абсолютно ничего не теряя.

Для этого проговорить, что после старта проекта мы:

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

Мы заинтересованы в том, чтобы работа над нашим проектом продвигалась стабильно и отлажено, чтобы все было выполнено наилучшим образом и в срок, не так ли?

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

 

А вот и пример плохого отчета, в котором мы видим перечисление непонятных задач. Такой отчет явно не поможет нам понять, над чем именно сейчас работает команда и в каком статусе находятся те или иные задачи.

 

 

КОНТРОЛЬ РАБОЧЕГО ПРОЦЕССА – нам необходимо контролировать процесс работы с помощью вспомогательных инструментов, чтобы четко понимать какова эффективность команды и за что мы платим деньги, иметь возможность управлять и первым и вторым.

Пусть команда подтвердит, что использует инструменты для контроля работы и покажет нам:

 

  • Task Tracker. Из опробованных членами команды Umbrella таск-трекеров на сегодняшний день одним из самых удобных и простых в использовании оказался Trello.Trello позволяет организовывать проект с возможностями разделять задачи и команды по разным доскам, предоставлять доступ к отдельным задачам, менять статусы задач.

 

  • Time Tracker. В любой момент зайти и посмотреть, сколько человек сейчас работает над нашим проектом в реальном времени, что именно делает тот или иной разработчик, за сколько отработанных часов мы платим – что может быть прозрачнее и удобнее?

Существует множество разных time trackers, Umbrella отдает предпочтение Worksnaps.

 

 


Не нашли ответы на все свои вопросы?

Мы с радостью поможем и поделимся опытом!

Пообщаться с нашей командой


 

Проверяем контракт

Наконец-то мы прошлись по всем вышеуказанным пунктам инструкции и наш кандидат в исполнители соответствует всем критериям. Какой же следующий шаг?

Проверим контракт на наличие всех важных для нас пунктов из ранее перечисленных, а также обратим внимание на:

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

 

 

Распечатываем агенду разговора

Да уж, столько информации, все и не запомнить.

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

Вооружаемся карандашом и проходимся тщательно по каждому пункту!


 

PREDEVELOPMENT

  • Вы сделаете мне перед проектом бесплатный predevelopment?
  • Будет ли он включать в себя:
    • wireframe;
    • mindmap;
    • юзкейсы;
    • оценку проекта, включающую в себя расходы на запуск проекта и все, что с ним связано;
    • отсутствие каких-либо предоплат;
    • разбиение проекта на фазы.?

Если нет – давайте сразу обговорим, чего не будет, и чем мы это заменим.

 

КОМАНДА

  • Вы можете подтвердить, что у вас в команде есть отдельный специалист QA? Какие тесты он будет делать?
  • Вы можете подтвердить что у вас в команде есть отдельный специалист DevOps?
  • Кто будет моим 1 point of contact? Почему именно он?

 

ПРОЦЕСС РАБОТЫ

  • Вы разобьете наш проект на короткие фазы разработки? Сколько размер каждой фазы?
  • Нам предоставят доступ ко всем репозиториям и документам по проекту? Будет ли у меня единая точка где хранятся все доступы?
  • Будет ли мой point of contact отправлять мне ежедневные и еженедельные отчеты? Можете скинуть мне пример отчетов на email?

 

КОНТРОЛЬ РАБОЧЕГО ПРОЦЕССА

  • Можете показать, какие инструменты вы используете в качестве (для удобства можете показать как вы их используете на своем экране) Таск-трекера и в качестве тайм-трекера?

 

КОНТРАКТ

  • Я хочу утвердить, что в контракте будут отсутствовать упоминания предоплаты и обязательно присутствовать пункт о передаче всех прав, включая права на исходный код нам.

 

Выводы

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


Ещё

  • Umbrella IT вошла в Топ веб и мобильных разработчиков
    Umbrella IT вошла в Топ веб и мобильных разработчиков
    Скейтбордисты и банджи-джамперы любят риск. Будоражащее кровь чувство опасности – именно то, что заставляет их сердца биться быстрее. Но когда дело касается представления своего бизнеса в интернете – зачем рисковать? Umbrella IT – надежный партнер. Мы были первым официальным партнером Symfony в России. Наш опыт и экспертизу давно ценят наши клиенты, а теперь – и …
  • Создаем приложение с механикой Uber: руководство по разработке проекта на миллион долларов
    Создаем приложение с механикой Uber: руководство по разработке проекта на миллион долларов
    Uber стал первым, кто применил бизнес-модель совместного потребления и экономику по требованию и взял на абордаж целый мир. Дестабилизация традиционного рынка такси не мешает Uber позиционировать себя, прежде всего, как технологическую, а не транспортную компанию. И это вполне оправданно – образцовый сервис и эффективные технические решения – именно то, что привело компанию к оглушительному успеху. …
  • Как увеличить вовлеченность в мобильных приложениях: 6 полезных советов
    Как увеличить вовлеченность в мобильных приложениях: 6 полезных советов
    Что заставит пользователей возвращаться в ваше приложение снова и снова? Как запустить работу приложения на полную мощность и сделать его незаменимым для всех и каждого? Десяток, а может и два десятка установленных на смартфон приложений, но пользуетесь в реальности всего несколькими из них? Совсем не хочется, чтобы ваше приложение попало в список “однажды открою, вдруг …