ISO / IEC / IEEE 12207 Системная и программная инженерия. Процессы жизненного цикла программного обеспечения - это международный стандарт для процессов жизненного цикла программного обеспечения. Впервые представленный в 1995 году, он призван стать основным стандартом, определяющим все процессы, необходимые для разработки и обслуживания программных систем, включая результаты и / или действия каждого процесса.
ISO / IEC / IEEE 12207: 2017 - новейшая версия, опубликованная в ноябре 2017 г. Компьютерное общество IEEE напрямую присоединилось к Международной организации по стандартизации (ISO) в процессе редактирования этой версии. Существенным изменением является то, что он использует модель процесса, идентичную модели процесса ISO / IEC / IEEE 15288 : 2015 (есть одно изменение названия, процесс 15288 «Определение требований к системе» переименован в «Система / Процесс «Определение требований к программному обеспечению»). Эта гармонизация двух стандартов привела к удалению отдельных процессов разработки программного обеспечения и повторного использования программного обеспечения, в результате чего общее количество 12207 процессов с 43 до 30 процессов, определенных в 15288. Это также вызвало изменения в управлении качеством и обеспечение качества деятельности и результатов процесса. Кроме того, было обновлено определение «аудит » и связанные с ним аудиторские мероприятия. Приложение I к ISO / IEC / IEEE 12207: 2017 обеспечивает отображение процессов между версией 2017 года и предыдущей версией, включая согласование основных процессов между двумя версиями; это предназначено для обеспечения возможности отслеживания и облегчения перехода для пользователей предыдущей версии.
Предыдущие версии включают:
До того, как IEEE Computer Society официально присоединилось к редактированию В процессе (став основной заинтересованной стороной) для выпуска 2017 года IEEE поддерживал свои собственные версии ISO / IEC 12207, первоначально с изменениями, внесенными совместно с Electronic Industries Alliance (EIA). С обновлением 2008 года пришла «общая стратегия ISO / IEC JTC 1 / SC 7 и IEEE по гармонизации их соответствующих сборников стандартов», в результате чего стандарты были идентичны, но с немного разными названиями. Эти версии IEEE включали:
Стоит также отметить, что стандарт IEEE / EIA 12207 официально заменил MIL-STD-498 (выпущенный в декабре 1994 г.) для разработка программных систем DoD 27 мая 1998 г.
Стандарт устанавливает набор процессов для управления жизненным циклом программного обеспечения. Стандарт «не предписывает конкретную модель жизненного цикла программного обеспечения, методологию разработки, метод, подход к моделированию или технику.». Вместо этого стандарт (а также ISO / IEC / IEEE 15288) различает «стадию» и «процесс» следующим образом:
Стадии (иначе говоря, фазы) - это не то же самое, что процессы, и этот стандарт определяет только определенные процессы - он не определяет никаких конкретных стадий. Вместо этого в стандарте признается, что жизненные циклы программного обеспечения различаются и могут быть разделены на этапы (также называемые фазами), которые представляют основные периоды жизненного цикла и приводят к основным параметрам принятия решений. Никакой конкретный набор этапов не является нормативным, но в нем упоминаются два примера:
Процессы жизненного цикла, определенные стандартом, не привязаны к какой-либо конкретной стадии жизненного цикла программного обеспечения. Действительно, процессы жизненного цикла, которые включают планирование, выполнение и оценку, «следует рассматривать для использования на каждом этапе». На практике процессы происходят всякий раз, когда они необходимы на любом этапе.
ISO / IEC / IEEE 12207: 2017 делит процессы жизненного цикла программного обеспечения на четыре основные группы процессов: согласование, организационное обеспечение проекта, технический менеджмент и технические процессы. В каждой из этих четырех групп процессов есть множество подкатегорий, включая основные виды деятельности: приобретение и поставка (договор); конфигурация (технический менеджмент); и эксплуатация, техническое обслуживание и утилизация (технические).
Здесь ISO / IEC / IEEE 12207: 2017 включает процессы приобретения и поставки, которые являются действиями связанные с заключением соглашения между поставщиком и покупателем. Приобретение охватывает все действия, связанные с запуском проекта. Фаза приобретения может быть разделена на различные действия и результаты, которые завершаются в хронологическом порядке. На этапе поставки разрабатывается план управления проектом . Этот план содержит информацию о проекте, например о различных этапах, которые необходимо достичь.
Подробно описаны управление моделью жизненного цикла, управление инфраструктурой, управление портфелем, управление человеческими ресурсами, управление качеством и процессы управления знаниями. Эти процессы помогают бизнесу или организации включать, контролировать и поддерживать жизненный цикл системы и связанные проекты. Управление моделью жизненного цикла помогает обеспечить поддержку усилий по приобретению и поставке, в то время как управление инфраструктурой и портфелем поддерживает бизнес-инициативы и инициативы, относящиеся к конкретным проектам, на протяжении всего жизненного цикла системы. Остальные обеспечивают наличие необходимых ресурсов и средств контроля качества для поддержки бизнес-проектов и системных усилий. Если в организации нет соответствующего набора организационных процессов, проект, выполняемый организацией, может вместо этого применить эти процессы непосредственно к проекту.
ISO / IEC / IEEE 12207 : 2017 размещает здесь восемь различных процессов:
Эти процессы касаются с планированием, оценкой и контролем программного обеспечения и других проектов в течение жизненного цикла, обеспечивая качество на всем пути.
Технические процессы ISO / IEC / IEEE 12207: 2017 охватывают 14 различных процессов, некоторые из которых возникли из старых процессов, связанных с программным обеспечением, которые были постепенно исключены из версии 2008 года..
Полный список включает:
Эти процессы включают техническая деятельность и персонал (информационные технологии, специалисты по устранению неполадок, специалисты по программному обеспечению и т. д.) во время до, после и во время работы. Процессы анализа и определения на ранней стадии создают основу для реализации программного обеспечения и проектов. Дополнительные процессы интеграции, проверки, перехода и валидации помогают обеспечить качество и готовность. Этапы эксплуатации и обслуживания происходят одновременно, причем этап эксплуатации состоит из таких действий, как помощь пользователям в работе с внедренным программным продуктом, а этап обслуживания состоит из задач обслуживания, направленных на поддержание продукта в рабочем состоянии. В процессе удаления описывается, как система / проект будет выведена из эксплуатации и при необходимости очищена.
В разделе 4 описывается предполагаемое использование документа и требования соответствия. Ожидается, что для конкретных проектов «может не потребоваться использовать все процессы, предусмотренные в этом документе». На практике соответствие этому стандарту обычно включает выбор и объявление набора подходящих процессов. Это может быть сделано посредством «полного соответствия» или «индивидуального соответствия».
«Полное соответствие» может быть заявлено одним из двух способов. «Полное соответствие задачам» может быть заявлено при соблюдении всех требований заявленных процессов и задач. «Полное соответствие результатам» может быть заявлено, если все требуемые результаты заявленных процессов достигнуты. Последний допускает больше вариаций.
«Специальное соответствие» может быть объявлено, когда конкретные пункты выбираются или изменяются посредством процесса адаптации, также определенного в документе.