Сейчас объясним все простыми словами.
Программы создаются годами и даже десятилетиями. Чтобы команда могла эффективно работать над продуктом, отличать недавно созданное ПО от годами совершенствуемого программного обеспечения и ориентироваться в версионности. В среде разработки появилась целая система работы и такое понятие, как жизненный цикл выпускаемого ПО.
Жизненный цикл выпуска программного обеспечения - это процесс разработки, тестирования и распространения программного продукта. Обычно он состоит из нескольких этапов, таких как
Пре-альфа
Предварительная альфа-версия — ранняя стадия разработки, на ней продукт видит только команда, которая его создает. Он не готов для использования.
Эта версия позволяет оценить жизнеспособность выбранного подхода и архитектуры понять все ли идет по плану. В преальфе много чего не работает и/или ждет доработок.
Альфа-версия
Альфа – версия в которой уже добавили основной функционал, и она работает. Именно эту версию передают на тестирование для выявления всевозможных ошибок.
Конечно, это не финальный вариант, но часто бывает так, что программа в версии альфа годами находиться в разработке или даже предоставляется для использования.
Бета-версия
Бета-версия — это уже продукт, в котором исправлено большинство критических ошибок, он работает и им уже могут пользоваться потребители. Этап бета-тестирования может включать тестирование удобства использования. После бета-тестирования программное обеспечение может пройти один или несколько этапов-кандидатов на выпуск, на которых оно дорабатывается и тестируется далее, прежде чем будет выпущена окончательная версия.
Релиз-кандидат
После бета-тестирования программа переходит в стадию релиз-кандидата. Если на всех предыдущих этапах команды разработки и тестирования сработали хорошо, то релиз-кандидат — это будет та же самая программа, что и в релизе. Просто этот этап длинной в 1-3 месяца от стадии релиз кандидата, до релиза, необходим разработчикам чтобы убедиться, что программа работает стабильно и без сбоев.
Релиз
Релиз — это готовая программа, доступная для всех пользователей без всяких оговорок и нюансов.
У одной программы может быть множество релизов, каждый из которых чуть лучше предыдущего (добавляется новый функционал, латаются дыры в безопасности, исправляются баги и т.д.)
Релизом может быть и крупное обновление - новая версия или обновление старой версии.
А вы когда-нибудь пользовались бета версией программы?