Методы разработки новых продуктов

Методы разработки программных продуктов

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

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

V-Model – основная идея сводится к validation and verification с тестированием корректности работы программы на каждой стадии, что уменьшает риск ошибок в архитектуре. Но минус в том, что если ошибка все-таки найдется, исправление ее будет стоить компании дорого.

  • Incremental Model – инкрементная, по частям (параллельная разными командами). Цель – получить жизнеспособное приложение при сильно ограниченных сроках и бюджете. Это преимущество, равно как и возможность оперативной оценки рисков – в зависимости от реакции пользователей (оценки эффективности) можно вкладывать деньги в доработку или прекратить финансирование.

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

  • Agile – общее название подхода, в котором нет четких формулировок и планирования. Его можно рассмотреть на примере Extreme Programming (XP). Основные тезисы – взаимодействие между участниками команды важнее инструментов, рабочее ПО важнее спецификаций. А договоренности с заказчиком превыше условий контракта.
  • Iterative Model – итеративная, не требующая составления полной спецификации.  Сначала реализуется ограниченный набор функций, который будет многократно дополняться, улучшаться.

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

  • Spiral Model – спиральная модель, с элементами итеративности, позволяющая оценивать риски, влияющие на жизненный цикл ПО. 

Из преимуществ – проработка рисков. Из минусов – растянутые сроки с риском застрять на совершенствовании первого цикла и высокие расходы.

Выбор метода разработки продукта программирования зависит от проекта. Например для ПО, требующего высокой надежности (для отслеживания показателей пациентов в клиниках, например) чаще применяют V-Model. "Водопад" – для относительно небольших приложений, с детально прописанными формулировками технического задания.

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

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

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

Дизайн-процесс

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

Что до этапов самого процесса, то выглядят они примерно так:

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

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

Уровни новизны ПО

Инновации классифицируются по 12 признакам и двум десяткам критериев. Один из которых – новизна для рынка. Программное обеспечение может быть новым:

  • в мире – аналогов в конкретной отрасли ни в какой другой стране нет;
  • в стране – без привязки к аналогичному софту других компаний, в других странах;
  • на конкретном предприятии.

При этом основа инновации – это и свежие научные открытия, и переосмысление существующих технологий, которые привели к получению инновационного способа, примененного к открытым явлениям.

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

17.07.2023НавыкиБизнес
Смотрите также
Навыки
Как справиться с выгоранием
Эмоциональное выгорание — актуальная проблема в современном обществе. Чаще всего с ней сталкиваются успешные люди, которые живут в условиях высокой нагрузки, повышенных требований и постоянного стресса.
Навыки
Что такое синдром самозванца
«У тебя синдром самозванца» – слышали такое утверждение или вопрос? Чувствуете, что не совсем знаете, что этот термин означает, но где-то внутри вас отзывается чувством досады, обиды, отчаяния? Что такое синдром самозванца, можно предположить, и не зная определения: вы занимаете не свое место, что успех – случаен и зависит от внешних обстоятельств. Эта субъективная оценка может быть далека от правды.
ТехнологииБизнесКарьера
Влияние искусственного интеллекта на рынок труда в 2023 году
Как искусственному интеллекту удаётся оказывать такое сильное влияние на рынок труда? Почему люди видят угрозу в технологиях и автоматизации? Узнайте причину прямо сейчас. Читайте статью.
Будущее
Видеть тренды
В современном мире, где технологии и социокультурные изменения происходят со скоростью света, успешным бизнесам необходимо быть на переднем крае инноваций. Именно здесь трендвотчинг, мощный инструмент аналитики будущего, приходит на помощь. Разберем, что такое трендвотчинг, как он работает и почему сегодня нужно уметь видеть тренды.