Жизненный цикл выпуска программного обеспечения
Эта статья нуждается в дополнительных цитатах для проверки . ( апрель 2023 г. ) |
Жизненный цикл выпуска программного обеспечения — это процесс разработки, тестирования и распространения программного продукта (например, операционной системы ). Обычно он состоит из нескольких этапов, таких как пре-альфа, альфа, бета-версия и кандидат на выпуск, прежде чем окончательная версия, или «золотая», будет опубликована для общественности.
Пре-альфа относится к ранним стадиям разработки, когда программное обеспечение еще разрабатывается и создается. Альфа-тестирование — это первый этап формального тестирования, в ходе которого программное обеспечение тестируется внутри компании с использованием методов «белого ящика» . Бета-тестирование — это следующий этап, на котором программное обеспечение тестируется большей группой пользователей, обычно за пределами организации, которая его разработала. Бета-фаза ориентирована на снижение воздействия на пользователей и может включать тестирование удобства использования.
После бета-тестирования программное обеспечение может пройти одну или несколько фаз-кандидатов на выпуск, в ходе которых оно дорабатывается и тестируется, прежде чем будет выпущена окончательная версия.
Некоторое программное обеспечение, особенно в сфере Интернета и высоких технологий, выпускается в состоянии постоянной бета-версии, что означает, что оно постоянно обновляется и совершенствуется, и никогда не считается полностью завершенным продуктом. Такой подход обеспечивает более гибкий процесс разработки и позволяет выпускать программное обеспечение и использовать его пользователям на более ранних этапах цикла разработки.
Этапы развития
[ редактировать ]Пре-альфа
[ редактировать ]Предварительная альфа-версия относится ко всем действиям, выполняемым во время программного проекта до официального тестирования. Эти действия могут включать анализ требований , проектирование программного обеспечения , разработку программного обеспечения и модульное тестирование . В типичной разработке с открытым исходным кодом существует несколько типов пре-альфа-версий. Версии Milestone включают в себя определенные наборы функций и выпускаются сразу после завершения реализации этой функции. [ нужна ссылка ]
Альфа
[ редактировать ]Альфа-фаза жизненного цикла выпуска — это первая фаза тестирования программного обеспечения (альфа — первая буква греческого алфавита , используемая как цифра 1). На этом этапе разработчики обычно тестируют программное обеспечение, используя методы «белого ящика» . выполняет дополнительную проверку с использованием методов «черного» или «серого ящика» Затем другая группа тестирования . Переход к тестированию «черного ящика» внутри организации известен как альфа-релиз . [1] [2]
Программное обеспечение Alpha не проходит тщательную проверку разработчиком перед выпуском клиентам. Программное обеспечение Alpha может содержать серьезные ошибки, и любая возникающая в результате нестабильность может привести к сбоям или потере данных. [3] Программное обеспечение Alpha может не содержать всех функций, запланированных для окончательной версии. [4] В целом, внешняя доступность альфа-версии нетипична для проприетарного программного обеспечения , в то время как программное обеспечение с открытым исходным кодом часто имеет общедоступные альфа-версии. Альфа-фаза обычно заканчивается заморозкой функций , что означает, что в программное обеспечение больше не будет добавлено никаких функций. На данный момент программное обеспечение считается полнофункциональным . Бета-тестирование проводится после приемочного тестирования на площадке поставщика (альфа-тест) и непосредственно перед общим выпуском программного обеспечения как продукта. [5]
Полный набор функций
[ редактировать ]( В полнофункциональной FC) версии программного обеспечения реализованы все запланированные или основные функции , но она еще не является окончательной из-за ошибок , проблем с производительностью или стабильностью . [6] Это происходит в конце альфа-тестирования в разработке .
Обычно полнофункциональное программное обеспечение все еще должно пройти бета-тестирование и исправление ошибок , а также повышение производительности или стабильности, прежде чем оно сможет перейти к статусу кандидата на выпуск и, наконец, к золотому статусу.
Бета
[ редактировать ]Бета, названная в честь второй буквы греческого алфавита , представляет собой этап разработки программного обеспечения, следующий за альфа-версией. Бета-фаза обычно начинается, когда программное обеспечение полностью функционально, но может содержать несколько известных или неизвестных ошибок. [7] Программное обеспечение, находящееся на этапе бета-тестирования, обычно содержит гораздо больше ошибок, чем готовое программное обеспечение, а также проблем со скоростью или производительностью, и все равно может вызывать сбои или потерю данных. Целью бета-тестирования является снижение воздействия на пользователей, часто включающее тестирование удобства использования . Процесс доставки бета-версии пользователям называется бета-версией и обычно представляет собой первый раз, когда программное обеспечение становится доступным за пределами организации, которая его разработала. Бета-версии программного обеспечения могут быть открытыми или закрытыми , в зависимости от того, доступны ли они открыто или доступны только ограниченной аудитории. Бета-версия программного обеспечения часто бывает полезна для демонстраций и предварительных просмотров внутри организации и для потенциальных клиентов. Некоторые разработчики называют этот этап предварительным просмотром , предварительным выпуском , прототипом , техническим предварительным просмотром или предварительным просмотром технологии ( TP ). [8] или ранний доступ .
Бета-тестеры — это люди, которые активно сообщают о проблемах с бета-версией программного обеспечения. Обычно это клиенты или представители потенциальных клиентов организации, разрабатывающей программное обеспечение. Бета-тестеры, как правило, добровольно предоставляют свои услуги бесплатно, но часто получают версии тестируемого продукта, скидки на релизную версию или другие стимулы. [9] [10]
Бессрочная бета-версия
[ редактировать ]Некоторое программное обеспечение хранится в так называемой постоянной бета-версии , когда в программное обеспечение постоянно добавляются новые функции без создания окончательной «стабильной» версии. Поскольку Интернет облегчил быстрое и недорогое распространение программного обеспечения, компании начали более свободно подходить к использованию слова «бета» . [11]
Открытое и закрытое бета-тестирование
[ редактировать ]Разработчики могут выпустить закрытую или открытую бета-версию ; закрытые бета-версии предоставляются ограниченной группе лиц для пользовательского тестирования по приглашению, в то время как открытые бета-тестеры представляют собой более широкую группу или всех заинтересованных лиц. Частная бета-версия может подойти для программного обеспечения, которое способно принести пользу, но не готово к использованию всеми либо из-за проблем с масштабированием, отсутствия документации, либо из-за отсутствия жизненно важных функций. Тестировщики сообщают обо всех обнаруженных ошибках и иногда предлагают дополнительные функции, которые, по их мнению, должны быть доступны в финальной версии.
Открытые бета-версии служат двойной цели: продемонстрировать продукт потенциальным потребителям, а тестирование среди широкой базы пользователей, скорее всего, выявит неясные ошибки, которые может не обнаружить гораздо меньшая группа тестировщиков.
Кандидат на выпуск
[ редактировать ]Кандидат на выпуск ( RC ), также известный как гамма-тестирование или «серебро», представляет собой бета-версию с потенциалом стать стабильным продуктом, который готов к выпуску, если не возникнут серьезные ошибки . На этом этапе стабилизации продукта все функции продукта были разработаны, закодированы и протестированы в течение одного или нескольких циклов бета-тестирования без каких-либо известных ошибок класса showtopper. Релиз называется завершенным с кодом , если команда разработчиков соглашается с тем, что в этот релиз не будет добавляться совершенно новый исходный код. Могут быть изменения исходного кода для исправления дефектов, изменения в документации и файлах данных, а также периферийный код для тестовых примеров или утилит. Бета-тестерам, если они выбраны частным образом, часто приписывают использование кандидата на выпуск, как если бы это был готовый продукт. Бета-тестирование проводится на территории клиента или заказчика и предназначено для тестирования программного обеспечения с точки зрения пользователя. [ нужна ссылка ]
Стабильная версия
[ редактировать ]также называемая производственной версией , Стабильная версия , — это последний кандидат на выпуск ( RC ), прошедший все этапы проверки и тестирования. Любые известные оставшиеся ошибки считаются приемлемыми. Этот выпуск поступает в производство .
Некоторые программные продукты (например, дистрибутивы Linux ) также имеют выпуски с долгосрочной поддержкой ( LTS ), которые основаны на полных выпусках, которые уже были опробованы и протестированы и получают только обновления безопасности. Это позволяет разработчикам уделять больше времени разработке продукта вместо обновления кода или поиска и исправления вновь появившихся ошибок из-за устаревших предположений об используемой системе, языке или базовых библиотеках. [ нужна ссылка ]
Выпускать
[ редактировать ]После выпуска программное обеспечение обычно называют «стабильной версией». Формальный термин часто зависит от способа выпуска: физический носитель, онлайн-выпуск или веб-приложение. [12]
Выпуск в производство (RTM)
[ редактировать ]Термин «выпуск в производство» (RTM), также известный как «золотой выпуск», — это термин, используемый, когда программный продукт готов к поставке. Эта сборка может иметь цифровую подпись, что позволяет конечному пользователю проверить целостность и подлинность приобретенного программного обеспечения. Копия сборки RTM, известная как « золотой мастер » или GM. [13] отправляется на массовое тиражирование или репликацию диска, если это применимо. Терминология взята из индустрии звукозаписи, а именно процесса мастеринга . RTM предшествует общедоступности (GA), когда продукт публикуется. Золотая основная сборка (GM) обычно представляет собой окончательную сборку программного обеспечения, находящегося на стадии бета-тестирования для разработчиков. Обычно для iOS это финальная сборка перед основным выпуском, однако было несколько исключений.
RTM обычно используется в определенных контекстах розничного массового производства программного обеспечения — в отличие от специализированного производства программного обеспечения или проекта в коммерческом или государственном производстве и распространении — когда программное обеспечение продается как часть пакета при продаже соответствующего компьютерного оборудования и обычно там, где программное обеспечение и соответствующее оборудование в конечном итоге должны быть доступны и продаваться массово/публично в розничных магазинах, чтобы указать, что программное обеспечение соответствует определенному уровню качества и готово к массовому розничному распространению. В других контекстах RTM может также означать, что программное обеспечение было доставлено или выпущено клиенту для установки или распространения на соответствующие компьютеры или машины конечных пользователей соответствующего оборудования. Этот термин не определяет механизм или объем доставки; там лишь говорится, что качество достаточно для массового распространения. Результат инженерной организации часто представляет собой «золотой мастер-носитель», используемый для копирования или создания изображения для Интернета.
Общая доступность (GA)
[ редактировать ]Общая доступность ( GA ) — это маркетинговый этап, на котором все необходимые действия по коммерциализации завершены и программный продукт доступен для покупки, однако в зависимости от языка, региона и доступности электронных средств или средств массовой информации. [14] Мероприятия по коммерциализации могут включать в себя тесты на безопасность и соответствие требованиям, а также локализацию и доступность по всему миру. Прежде чем будет объявлен общедоступный выпуск, между RTM и GA может пройти от нескольких дней до месяцев, поскольку это время необходимо для завершения всех мероприятий по коммерциализации, требуемых GA. На этом этапе программное обеспечение «запущено в эксплуатацию».
Выпуск в Интернет (RTW)
[ редактировать ]Выпуск в Интернет ( RTW ) или веб-выпуск — это средство доставки программного обеспечения, которое использует Интернет для распространения. Производитель не производит физические носители с механизмом выпуска этого типа. Веб-релизы стали более распространенными по мере роста использования Интернета. [ нужна ссылка ]
Поддерживать
[ редактировать ]В течение поддерживаемого срока службы на программное обеспечение иногда выпускаются служебные выпуски, исправления или пакеты обновлений , которые иногда также называются «промежуточными выпусками» или «сопровождающими выпусками» (MR). Например, Microsoft выпустила три основных пакета обновлений для 32-разрядных выпусков Windows XP и два пакета обновлений для 64-разрядных выпусков. [15] Такие выпуски служб содержат набор обновлений, исправлений и улучшений, поставляемых в виде одного устанавливаемого пакета. Они также могут реализовывать новые функции. Некоторое программное обеспечение выпускается с расчетом на регулярную поддержку. Классы программного обеспечения, для которых обычно требуется длительная поддержка, включают антивирусные пакеты и многопользовательские онлайн-игры . Продолжая этот пример с Windows XP, Microsoft предлагала платные обновления еще в течение пяти лет после окончания расширенной поддержки. Это означает, что поддержка закончилась 8 апреля 2019 года. [16]
Конец жизни
[ редактировать ]Когда программное обеспечение больше не продается и не поддерживается, считается, что продукт подошел к концу, был снят с производства, выведен из эксплуатации, устарел, заброшен или устарел, но лояльность пользователей может продолжать свое существование в течение некоторого времени, даже спустя долгое время после его выпуска. платформа устарела — например, Common Desktop Environment [17] и Синклер ZX Spectrum . [18]
После даты окончания срока действия разработчик обычно не будет внедрять какие-либо новые функции, исправлять существующие дефекты, ошибки или уязвимости (независимо от того, известны ли они до этой даты или нет) или предоставлять какую-либо поддержку продукта. Если разработчик пожелает, он может выпустить исходный код, чтобы платформа снова заработала и обслуживалась добровольцами, а если нет, ее можно будет реконструировать позже, когда она станет заброшенной .
История
[ редактировать ]Использование терминологии «альфа/бета»-тестирования зародилось в IBM . [ нужна ссылка ] Подобная терминология для разработки программного обеспечения IBM использовалась людьми, связанными с IBM, по крайней мере, с 1950-х годов (а, возможно, и раньше). Тест «А» представлял собой проверку нового продукта перед его публичным анонсом. Тест «B» представлял собой проверку перед выпуском продукта в производство. Тест «C» был последним испытанием перед поступлением продукта в продажу. Поскольку программное обеспечение стало значительной частью предложений IBM, терминология альфа-тестирования использовалась для обозначения теста перед объявлением, а бета-тестирование использовалось для демонстрации готовности продукта к общедоступной версии. Мартин Бельски, менеджер некоторых ранних программных проектов IBM, утверждал, что изобрел эту терминологию. IBM отказалась от терминологии альфа/бета в 1960-х годах, но к тому времени она получила довольно широкое внимание. Использование «бета-тестирования» для обозначения тестирования, проводимого клиентами, в IBM не проводилось. Скорее, IBM использовала термин «полевые испытания».
После этого были выпущены крупные общедоступные бета-версии: первые клиенты приобрели «новаторскую версию» текстового процессора WordVision для IBM PC за 49,95 долларов. В 1984 году Стивен Мейнс написал, что «в ходе блестящего маркетингового переворота издательству программы Брюса и Джеймса удалось заставить людей платить за привилегию тестирования продукта». [19] В сентябре 2000 года коробочная версия операционной системы Apple Mac OS X Public Beta . была выпущена [20] В период с сентября 2005 г. по май 2006 г. Microsoft выпустила предварительные версии технологий сообщества ( CTP ) для Windows Vista . [21] С 2009 по 2011 год Minecraft находился в стадии публичной бета-версии.
В феврале 2005 года ZDNet опубликовал статью о явлении бета-версии, которая часто остается годами и используется так, как если бы она находилась на уровне производства. [22] Он отметил, что Gmail и Google News , например, долгое время находились в стадии бета-тестирования, хотя и широко использовались; Google News вышла из бета-версии в январе 2006 года, а в июле 2009 года последовали Google Apps (теперь называемые Google Workspace ), включая Gmail. [12] С момента появления Windows 8 Microsoft называла предварительную версию программного обеспечения предварительной версией , а не бета-версией . Все предварительные сборки, выпущенные в рамках программы предварительной оценки Windows, запущенной в 2014 году, называются «сборками Insider Preview». «Бета» может также обозначать что-то вроде кандидата на выпуск , форму ограниченной по времени демонстрации или маркетинговый прием. [23]
См. также
[ редактировать ]- Управление жизненным циклом приложений
- Автоматизация выпуска приложений
- Прекращение применения приложения
- Разработка релиза
- Управление релизами
- Подвижный выпуск
- Развертывание программного обеспечения
- Управление версиями программного обеспечения
Ссылки
[ редактировать ]- ^ «Энциклопедия определения альфа-версии» . Журнал ПК . Архивировано из оригинала 27 апреля 2011 г. Проверено 12 января 2011 г.
- ^ «Что такое альфа-версия игры?» . Архивировано из оригинала 23 сентября 2022 г. Проверено 23 сентября 2022 г.
- ^ Инс, Даррел, изд. (2013). «Альфа-программное обеспечение». Словарь Интернета (3-е изд.) . Издательство Оксфордского университета. ISBN 978-0-19-174415-0 . Проверено 15 июля 2019 г.
- ^ «Лексикон следующего поколения 1996 года от А до Я». Следующее поколение . № 15. Imagine Media . Март 1996 г. с. 29.
Программное обеспечение Alpha обычно почти не работает, и в нем отсутствуют такие важные функции, как игровой процесс и полные уровни.
- ^ Словарь информатики (7-е изд.). Издательство Оксфордского университета. 2016. с. 44. ИСБН 978-0-19-968897-5 .
- ^ Кусумано, Майкл (1998). Секреты Microsoft: как самая мощная в мире компания-разработчик программного обеспечения создает технологии, формирует рынки и управляет людьми . Свободная пресса. стр. 202–203 . ISBN 978-0-684-85531-8 .
- ^ «Лексикон следующего поколения 1996 года от А до Я» . Следующее поколение . № 15. Imagine Media . Март 1996 г. с. 30.
- ^ «Объем поддержки функций предварительной версии технологии» . Красная шляпа . Проверено 18 марта 2015 г.
- ^ Амит Мехра, Раджиб Лочан Саха (19 июня 2017 г.). «Использование общедоступных бета-версий и бесплатных пробных версий для запуска программного продукта». Управление производством и эксплуатацией . Том. 27, нет. 11.
- ^ Мишель М. Ланг (17 мая 2004 г.). «Бета Войны». Новости дизайна . Том. 59, нет. 7.
- ^ «Ожидание с Beta'd Breath TidBITS № 328 (13 мая 1996 г.)» . 13 мая 1996 г. Архивировано из оригинала 15 мая 2006 г.
- ^ Перейти обратно: а б «Google Apps вышла из бета-версии (да, действительно)» . Гугл-блог . 07.07.2009. Архивировано из оригинала 21 января 2011 г. Проверено 12 января 2011 г.
- ^ «Что такое Золотой Мастер (GM)? — Определение из Техпедии» . Techopedia.com . 19 августа 2013 г.
- ^ Люксембург, Иван Филипп (20 мая 2013 г.). «200 лучших терминов SAM – глоссарий терминов управления программными активами» . Консультации по технологиям управления операциями . Архивировано из оригинала 10 августа 2013 г. Проверено 21 мая 2013 г.
- ^ «Каталог обновлений Microsoft» . www.catalog.update.microsoft.com . Проверено 3 мая 2024 г.
- ^ «Поиск жизненного цикла продуктов Microsoft» . 20 июля 2012 г. Архивировано из оригинала 20 июля 2012 г. Проверено 3 мая 2024 г.
- ^ «[cdesktopenv-devel] Выпущен CDE 2.2.1 | CDE — общая среда рабочего стола» . sourceforge.net . Проверено 3 мая 2024 г.
- ^ «ZX-Uno [Клон компьютера ZX Spectrum на основе FPGA]» . 05.01.2018. Архивировано из оригинала 05 января 2018 г. Проверено 3 мая 2024 г.
- ^ Манес, Стивен (3 апреля 1984 г.). «Азартная игра с Word Vision» . Журнал PC — независимое руководство по персональным компьютерам IBM . Том. 3, нет. 6. PC Communications Corp., стр. 211–221. ISSN 0745-2500 . Архивировано из оригинала 17 марта 2015 г. Проверено 15 февраля 2015 г.
- ^ «Apple выпускает публичную бета-версию Mac OS X» (пресс-релиз). Apple Inc., 13 сентября 2000 г. Проверено 28 января 2024 г.
- ^ «Информационный бюллетень по октябрьскому обзору технологий сообщества Microsoft Windows Vista» (пресс-релиз). Майкрософт. Октябрь 2005 г. Архивировано из оригинала 30 апреля 2011 г. Проверено 22 февраля 2011 г.
- ^ Феста, Пол (14 февраля 2005 г.). «Долгий извилистый путь выхода из бета-версии» . Технические новости на ZDNet . Архивировано из оригинала 14 февраля 2005 г. Проверено 28 апреля 2019 г.
- ^ Хоутон, Дэвид (17 мая 2010 г.). «Неудобная правда о бета-версиях» . Игровой радар . Архивировано из оригинала 30 апреля 2011 г.