Вредные советы о том, как добиться качества IT-продукта

Как команде IT-разработчиков уложиться в срок и бюджет – рассказываем в старом добром жанре вредных советов. В нашей подборке – 6 рискованных, однако распространенных ситуаций, которые выявляет и устраняет Служба качества SimbirSoft. Мы реализовали уже более 900 проектов для разных отраслей, как с нуля, так и подключаясь к командам заказчиков, и стремимся анализировать риски на ранних этапах работы. Делимся опытом, о котором мы ранее рассказали на нашей конференции «Технореволюция 2.0».

Вредные советы о том, как добиться качества IT-продукта

Внимание! Не пытайтесь повторить описанные кейсы – это опасно для здоровья вашего проекта!

Вредный совет №1

Не нужно выяснять ожидания заказчика и других заинтересованных сторон, что в итоге они хотят получить. Не стоит учитывать специфику бизнеса. Решать его индивидуальные проблемы – это лишняя трата времени. Можно разработать универсальный продукт, как делали для других клиентов, им же подошло. В этом случае сделаем точно также!

Заказчику не понравился результат? Он – не эксперт и не знает, как должно быть правильно!

Вредные советы о том, как добиться качества IT-продукта

На практике:

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

На старте проекта нужно обратить внимание на детали, которые в дальнейшем могут отразиться на результате:

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

Вредный совет №2

Старт проекта – это очень легко, взял ТЗ и делай! Вы уверены, что у вас в команде «сеньористые» сеньоры с кучей опыта! Команда профессионалов всегда сама во всем разберется, а если нет, то не судьба, найдем других заказчиков.

Вредные советы о том, как добиться качества IT-продукта

На практике:

На самом деле старт проекта – один из ключевых этапов его жизненного цикла. В определенном смысле его можно сравнить с запуском ракеты в космос: требуется четкость и слаженность действий.

Даже команда, состоящая из экспертов, нуждается в поддержке. Развитие проекта во многом зависит от того, насколько эффективно команде удастся поставить его на “рельсы” на старте.

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

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

Вредный совет №3

Продуманная архитектура? Требования по нагрузке? Об этом подумаем потом. Нужно скорее делать!

Вредные советы о том, как добиться качества IT-продукта

На практике:

Если вы знаете, ЧТО должна делать система, уже на старте нужно определить, КАК она это будет делать. Неопределенность в этом вопросе зачастую приводит к тому, что исправлять продукт в дальнейшем мучительно больно.

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

Вредный совет №4

О том, хорошо ли мы работаем, успеваем ли в сроки и в бюджет, мы узнаем в конце. Чего раньше времени переживать? Проект не нуждается в частом снятии метрик – это все бесполезная работа. Метрики ни на что не влияют. Главное, что в результате мы получим продукт, а уж как мы его разрабатывали – неважно.

Вредные советы о том, как добиться качества IT-продукта

На практике:

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

Так, для себя мы разработали дашборд «Здоровье проекта», который позволяет отслеживать общее состояние и значения целевых метрик: прогнозируемый и реальный план/факт, багофикс, эффективное время работы команды и т.д. Если метрика отклоняется от целевых показателей, то это позволяет нам оперативно среагировать и скорректировать ситуацию.

Мы собираем обратную связь от клиентов, которая тоже является метрикой. Проводим опросы среди специалистов, а также внутренний аудит проектов – Project Review. Например, анализируем причины, которые влияют на time-to-market: недочеты в планировании, несоответствие ожиданиям, наличие дефектов кода и прочее.

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

Вредный совет №5

Не стоит слушать специалистов, если они предлагают изменить процессы на проекте. Мы так всегда делали, и все было нормально. Все к этому привыкли!

Вредные советы о том, как добиться качества IT-продукта

На практике:

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

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

Например, первого космонавта Юрия Гагарина когда-то хотели отчислить из летного училища. Ему долго не удавалось правильно посадить самолет. Начальник училища предположил, что проблемы могут быть из-за невысокого роста курсанта, что искажает угол обзора. После того как Гагарину увеличили высоту сидения, посадка удалась на «отлично».

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

Вредный совет №6

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

Вредные советы о том, как добиться качества IT-продукта

На практике:

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

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

Как показывает практика, обмениваться опытом, содействовать специалистам в сертификации – один из действенных способов для наращивания экспертизы всей команды. Помимо профессиональных знаний, важны хобби и неформальное общение. Так, у нас уже более 40 клубов по интересам, большинство из которых так или иначе связаны с разработкой – «LevelUp», «Группа 51», «Инновационный центр», архитектурный комитет, клуб тимлидов, менторов и другие.

Вывод

В этой статье мы перечислили вредные советы, которые могут привести к серьезным проблемам на проекте. В основу рекомендаций лег наш многолетний опыт работы с более чем 700 клиентами. В завершение мы решили обобщить наши рекомендации и сформулировали несколько полезных советов «Как не загубить проект»:

  • Выявите ожидания всех заинтересованных сторон. Обязательно учитывайте специфику бизнеса и решайте конкретную проблему данного клиента, а не абстрактную.
  • Старт проекта – самая важная и энергозатратная фаза. Обращайте на нее самое пристальное внимание, даже если у вас в команде высококвалифицированные специалисты.
  • Сбор требований, аналитика и проработка архитектуры закладывают успех проекта в будущем. Нельзя «проглатывать» данную фазу и торопиться «пилить» фичи.
  • Метрики – неотъемлемая часть оперативного управления и основа для принятия управленческих решений. Выберите наиболее важные для реализации проекта и собирайте их на постоянной основе.
  • Слушайте свою команду. Иногда в случае затруднений даже маленькая корректировка способна изменить положение дел в лучшую сторону.
77
4 комментария

Очень интересная статья

Комментарий недоступен

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

Добрый день! Если архитектура не отвечает текущим требованиям, как правило, стоит начать с аудита и наметить несколько вариантов доработки. Готовы помочь, напишите нам в личные сообщения или на сайте) https://www.simbirsoft.com/help/it-architecture/