Найти тему
QA Tips

Процессы разработки ПО

Оглавление

Agile методология

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

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

Артефакты Agile методологии

Как и в любом Agile проекте, в разработке ПО используются User stories или пользовательские истории. Это краткое описание того, что должен уметь делать продукт или какую проблему он должен решать для конкретного пользователя. User stories служат основой для планирования спринтов и разработки функционала продукта. Каждый спринт включает в себя несколько user stories, что в совокупности составляет релизную версию продукта. Рассмотрим все существующие сущности связанные с пользовательскими историями:

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

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

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

Релизные версии ПО

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

Рассмотрим существующие стадии продукта:

  • Альфа-версия - начальная версия продукта, предназначенная для внутреннего тестирования (иногда альфа версию продукта могут выпустить и для конечного пользователя). Как правило, альфа версией считают минимально жизнеспособный продукт (MVP).
  • Бета-версия - это ранняя версия продукта, которая выпускается для тестирования среди ограниченной группы пользователей и может содержать ошибки и недоработки.
  • Кандидат на релиз (RC) - это последняя стадия бета-тестирования, когда продукт считается готовым к релизу, но все еще может содержать некоторые ошибки.
  • Окончательный релиз (RTM) - это первый окончательный релиз продукта, который выпускается для общественного использования или продажи. Он обычно содержит минимальное количество ошибок и должен быть стабильным в использовании.

Каждая стадия в свою очередь может содержать несколько релизных версий продукта. Рассмотрим существующие версии:

Минорный(Minor) - это релиз, который содержит новые функции и исправления ошибок. Это может быть номер версии с дополнительным нулем в конце, например, 1.1, 1.2 и т.д. Минорный релиз обычно содержит небольшое количество изменений и новых функций, и он не содержит каких-либо существенных изменений в системе.

Мажорный(Majior) - релиз, который содержит значительные изменения и новую функциональность. Как правило мажорный релиз инкриментирует предыдущий номер версии, т.е. предыдущий релиз 1.5 изменяется на 2.0.

Так же выделяют Hotfix - это релиз с тремя и более знаками, например 1.0.1. Hotfix содержит исправления разработанного ранее функционала. Например, когда продукт был выпущен с ошибками и нужно срочно исправить неработающий функционал.

~Resume:

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

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

Тинькофф: 2200700450607428

BTC: 19ccJXj1nvZ24hticGfKhv2nQWp89U36mE

TON: UQBO5i-liuCOMTQ5j1dKUSomFXjtqQmEYCxSMgOMhZe-SBAV