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

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

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

Шаг первый: выбор модели разработки программного обеспечения

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

Предположим, вы придерживаетесь гибкой методики (https://www.scnsoft.com/blog/what-is-agile-software-development-from-customers-perspective). В этом случае не требуется определять весь проект с самого начала целиком: можно добавлять новые компоненты по ходу работы и вносить изменения на любой стадии. Гибкая методика (Agile) — лучший выбор для длительного и сложного проекта, так как изменения в подобных проектах неизбежны.

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

Шаг второй: выбирайте функции на основе приоритетов

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

Определить приоритеты поможет метод анализа MoSCoW. Буквы аббревиатуры обозначают следующее:

  • Must have («Обязательные»);
  • Should have («Следовало бы иметь»);
  • Could have («Можно было бы иметь»);
  • Won't have this time («Не в этот раз»).

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

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

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

Шаг третий: составьте...

Это не вся статья. Полная версия доступна только подписчикам журнала. Пожалуйста, авторизуйтесь либо оформите подписку.
Купить номер с этой статьей в PDF