Сравнительный анализ стандартов ISO/IEC 12207-95 и ISO/IEC 12207-2008
Введение
В настоящее время программное обеспечение является важной составной частью многих технических устройств и систем. Эти устройства очень разнообразны как по назначению, так и по требованию к надежности их работы. К таким устройствам могут быть отнесены как mp3-плейеры, сотовые телефоны, стиральные машинки, так и бортовые системы управления летательных аппаратов, системы управления и контроля атомных электростанций, информационные системы государственного управления. Надежность работы таких систем во многом зависит от надежности работы программного обеспечения. Надежность самого программного обеспечения определяется теми технологиями, в соответствии с которыми разрабатывается программное обеспечение. Отраслевые и международные стандарты в сфере информационных технологий являются суммой опыта, накопленного экспертами в инженерии программного обеспечения (ПО) на основе огромного количества проектов, проводившихся в рамках коммерческих структур США, Европы и в рамках военных контрактов. Большая часть стандартов создавалась как набор критериев для отбора поставщиков программного обеспечения для Министерства обороны США, и эту задачу они решают достаточно успешно. Стандарты содержат описание выработанных на основе реальных проектов подходов к построению сложных программных систем. Для корректного рассмотрения вопросов создания сложных программных систем необходимо, чтобы процесс разработки включал не только собственно процедуру разработки(кодирования), но и такие процедуры жизненного цикла программных систем, как подготовка к разработке (анализ предметной области, определение требований, выработка решений),проектирование, документирование, тестирование, внедрение, эксплуатация, сопровождение, управление изменениями, прекращение использования [1].
Стандарты ISO/IEC 12207 (Международная организация стандартизации) и IEC (международная электротехническая комиссия) образуют специализированную систему мировой стандартизации. Национальные органы, являющиеся членами ISO или IEC, участвуют в разработке международных стандартов при помощи технических комитетов, образованных соответствующими организациями, чтобы рассматривать отдельные разделы технической деятельности. Технические комитеты ISO и IEC сотрудничают в областях, затрагивающих взаимные интересы. Остальные международные организации, государственные и негосударственные, совместно с ISO и IEC, также принимают участие в работе. В области информационной технологии ISO и IEC образовали объединенный технический комитет ISO/IEC JTC 1(Объединенный технический комитет №1). Проекты международных стандартов, принятые объединенным техническим комитетом, рассылаются национальным органам с целью их принятия. Публикация в качестве международного стандарта требует подтверждения от не менее чем 75% национальных органов, принимавших участие в принятии решения. Международный стандарт ISO/IEC 12207 был подготовлен объединенным техническим комитетом ISO/IEC JTC1,"Информационные технологии, подкомитет SC7, проектирование программного обеспечения"[2]. ISO/IEC 12207 - Information Technology - Software Life Cycle Processes - Процессы жизненного цикла программных средств. Стандарт содержит определения основных понятий программной инженерии (в частности программного продукта и жизненного цикла программного продукта), структуры жизненного цикла как совокупности процессов, детальное описание процессов жизненного цикла.
2 Стандарт ISO/IEC 12207-95
В 1990 году началось планирование всеобъемлющих международных стандартов, в основу которых легли концепции и взгляды стандарта IEEE Std 1074 и результатов работы образованной в 1987 году совместной комиссии ISO/IEC JTC 1**. В 1995 году группа этой комиссии SC7 “Software Engineering” выпустила первую версию международного стандарта ISO/IEC 12207 “Software Lifecycle Processes”. Этот стандарт стал первым опытом создания единого общего взгляда на программную инженерию[3].
ISO/IEC 12207-95 определяет модель жизненного цикла процессов разработки программного обеспечения. Данная модель жизненного цикла ПО определяет на верхнем уровне фундаментальные цели, которые являются существенными для разработки высокоэффективного и надежного программного обеспечения. Цели верхнего уровня описывают то, что должно быть достигнуто, а не как их достигнуть. Жизненный цикл, определенный данным стандартом, применим в любой software-организации, желающей утвердить, а в последствии и улучшить возможности по поставке, разработке, эксплуатации, развитии и поддержке программного обеспечения. Модель не предполагает использование специфических организационных структур, философии управления, технологии или методологии разработки ПО [4]. Архитектура данной модели организует процессы для помощи персоналу организации в их понимании и их использования для непрерывного усовершенствования процессов разработки программного обеспечения. Процессы, определенные в стандарте, образуют всеобъемлющий набор процессов. Организация, в зависимости от своих целей и для их реализации, может выбрать соответствующий поднабор. Поэтому стандарт разработан так, чтобы быть приспособленным как для отдельной организации, так и для конкретного проекта или приложения. Кроме того, он может использоваться в случаях, когда программное обеспечение является самостоятельной сущностью, встраивается или является составной частью общей системы. Особенности стандарта Стандарт не предписывает конкретную модель жизненного цикла или метод разработки ПО. Он определяет, что стороны-участники использования стандарта ответственны за: 1. Выбор модели ЖЦ для проекта ПО 2. Адаптацию процессов и задач стандарта к этой модели . Выбор и применение методов разработки ПО . Выполнение действий и задач, подходящих для проекта ПО.
Стандарт определяет общую структуру жизненного цикла ПО в виде 3-х ступенчатой модели, состоящей из: 1. процессов 2. видов деятельности . задач Стандарт не определяет метрики, по которым можно было бы отслеживать ход работ и их результативность. Самыми крупными элементами являются процессы жизненного цикла ПО. Всего выделено 18 процессов, которые объединены в 3 группы: 1. Основные процессы 2. Поддерживающие процессы . Организационные процессы . Процесс адаптации. Основные процессы ЖЦ ) Процесс приобретения - его задача определить действия предприятия-покупателя, которое приобретает автоматизированную систему, программный продукт или сервис ПО: 1. Инициация приобретения 2. Подготовка запроса предложений . Подготовка контракта . Анализ поставщиков . Получение ПО. 2) Процесс передачи (поставки) определяет действия предприятия-поставщика, которое снабжает покупателя системой, программным продуктом или сервисом ПО. ) Процесс разработки - его задача определить действия предприятия-разработчика, которое создает программный продукт. Включает следующие работы: 1. Развертывание процесса разработки 2. Анализ системных требований . Проектирование (программно-аппаратной) системы в целом . Анализ требований к ПО . Проектирование архитектуры ПО . Детальное проектирование . Кодирование . Отладочное тестирование . Интеграцию ПО . Квалификационное тестирование ПО . Системную интеграцию . Квалификационное тестирование системы . Развертывание (установку или инсталляцию) ПО. 4) Процесс эксплуатации определяет действия предприятия-оператора, которое обеспечивает обслуживание системы в процессе ее функционирования в интересах пользователей. Включает такие работы, как: 1. Консультирование пользователей 2. Получение обратной связи и др. 5) Процесс поддержки ПО определяет действия персонала сопровождения, который обеспечивает: 1. Инсталляцию и удаление программного изделия на вычислительной системе
2. Анализ возникающих проблем . Внесение изменений . Экспертизу и передачу измененного ПО . Перенос с одной платформы на другую . Изъятие ПО из эксплуатации. Этот стандарт был необходим для представление терминов, понятий и составных элементов жизненного цикла ПО. Этот стандарт был принят ISO в 1995 году. Следует отметить, что работы по нему были начаты в 1987 году и стандарт формировался взаимными усилиями 125 стран - участниц ISO. В России этот стандарт принят в 2000 году под названием «ГОСТ Р ИСО/МЭК 12207 Процессы жизненного цикла программных средств» [4].
Стандарт ISO/IEC 12207-2008
ISO/IEC 12207-2008 «System and software engineering - Software life cycle processes» - стандарт ISO, описывающий процессы жизненного цикла ПО. Стандарт разработан подкомитетом ПК 7 «Системная и программная инженерия» (англ. SC 7 System and Software Engineering) Совместного технического комитета №1 ИСО/МЭК «Информационные технологии». Стандарт был выпущен взамен стандарту ISO/IEC 12207-95[5]. Стандарт ISO/IEC 12207-2008 взаимосвязан со стандартами IEEE, такими как: · IEEE Std 730 - 2002 - Процесс обеспечения гарантии качества программных средств · IEEE Std 1012 - 2004 - Процесс верификации и валидации программных средств · IEEE Std 828 - 2005 - Процесс менеджемента конфигурации программных средств · IEEE Std 829 - 1998 - Процесс квалификационного тестирования программных средств и др. Данный стандарт, используя устоявшуюся терминологию, устанавливает общую структуру процессов жизненного цикла программных средств, на которую можно ориентироваться в программной индустрии. Стандарт определяет процессы, виды деятельности и задачи, которые используются при приобретении программного продукта или услуги, а также при поставке, разработке, применении по назначению, сопровождении и прекращении применения программных продуктов [6]. Стандарт определяет общую структуру жизненного цикла ПО в виде трехуровневой модели, элементами которой являются процессы, виды деятельности, задачи. Процессы объединены в четыре группы: 1. Основные процессы 2. Поддерживающие процессы . Организационные процессы . Адаптация. Процессы состоят из отдельных видов деятельности. Например, процесс разработки ПО включает такие виды деятельности, как анализ системных требований, проектирование программно-аппаратной части системы в целом, анализ требований к ПО, проектирование архитектуры ПО, кодирование, тестирование и т.д. Каждый вид деятельности направлен на решение одной или нескольких задач. Например, такой вид деятельности, как развертывание процесса разработки, должен решить следующие задачи: определение структуры жизненного цикла ПО, определение модели собственно фазы разработки ПО, выбор используемых стандартов, формирование набора нормативно-методических документов, определение среды разработки, функционирование и т.д.
Процессы жизненного цикла Группы процессов жизненного цикла включают в себя: · процессы соглашения - 2; · процессы организационного обеспечения проекта - 5; · процессы проекта - 7; · технические процессы - 11; · процессы реализации программных средств - 7; · процессы поддержки программных средств - 8; · процессы повторного применения программных средств - 3. Процессы соглашения · Поставка · Приобретение Процессы организационного обеспечения проекта · Процесс менеджмента модели жизненного цикла; · Процесс менеджмента инфраструктуры; · Процесс менеджмента портфеля проектов; · Процесс менеджмента людских ресурсов; · Процесс менеджмента качества. Процессы проекта · Процессы менеджмента проекта · процесс планирования проекта; · процесс управления и оценки проекта. · Процессы поддержки проекта · процесс менеджмента решений; · процесс менеджмента рисков; · процесс менеджмента конфигурации; · процесс менеджмента информации; · процесс измерений. Технические процессы · Определение требований правообладателей · Анализ системных требований · Проектирование архитектуры системы · Процесс реализации · Процесс комплексирования системы · Процесс квалификационного тестирования системы · Процесс инсталляции программных средств · Процесс поддержки приемки программных средств · Процесс функционирования программных средств · Процесс сопровождения программных средств · Процесс изъятия из обращения программных средств Процессы реализации программных средств · Процесс анализа требований к программным средствам; · Процесс проектирования архитектуры программных средств; · Процесс детального проектирования программных средств; · Процесс конструирования программных средств; · Процесс комплексирования программных средств; · Процесс квалификационного тестирования программных средств Процессы поддержки программных средств · Процесс менеджмента документации программных средств; · Процесс менеджмента конфигурации программных средств; · Процесс обеспечения гарантии качества программных средств; · Процесс верификации программных средств; · Процесс валидации программных средств; · Процесс ревизии программных средств; · Процесс аудита программных средств; · Процесс решения проблем в программных средствах. Процессы повторного применения программных средств · Процесс проектирования доменов; · Процесс менеджмента повторного применения активов; · Процесс менеджмента повторного применения программ. Настоящий стандарт является результатом гармонизации четырех исходных документов (рис.1), таких как ИСО/МЭК 12207-95, ИСО/МЭК 12207-2010, ИСО/МЭК 15288-2002 и ИСО/МЭК 15288-2007. Несмотря на то, что в ИСО/МЭК 12207:1995 рассматривались процессы жизненного цикла программных средств в системном контексте, было очевидно, что аналогичный стандарт был необходим также и в системной области. ИСО/МЭК 15288, опубликованный в ноябре 2002 года, полностью удовлетворил эту потребность. Разработчики стандарта извлекли пользу из опыта, полученного при разработке дополненного стандарта ИСО/МЭК 12207 и понимания потребностей, выраженных в ИСО/МЭК 15504. Таким образом, процессы в ИСО/МЭК 15288 излагались в терминах целей и выходов с описанием видов деятельности, необходимых для достижения этих выходов. Развернутая по стадиям разработка изменений к ИСО/МЭК 12207 вместе с ИСО/МЭК 15288 и изначально иная ориентация ИСО/МЭК 12207 привели к некоторым затруднениям в применении дополненного стандарта ИСО/МЭК 12207 так же, как и в совместном применении стандартов жизненного цикла систем и программных средств. Гармонизация проекта в рамках Подкомитета 7 "Системная и программная инженерия" Совместного технического комитета N 1 ИСО/МЭК - СТК 1 "Информационные технологии" (ISO/IEC JTC 1/SC 7) являлась первым большим шагом к объединенному комплекту стандартов, описывающих жизненный цикл систем и программных средств, а ее суть заключалась в параллельно проведенном и тщательно контролируемом пересмотре ИСО/МЭК 12207, ИСО/МЭК 15288 и разработке технического отчета ИСО/МЭК 24748, представляющего собой руководящие указания для обоих международных стандартов.
Сравнительный анализ стандартов ISO/IEC 12207-95 и ISO/IEC 12207-2008
Сравнивая, эти два стандарта видно, что стандарт ISO/IEC 12207-2008 наиболее подробный, точный. Если в стандарте 1995 года описаны только применение и процессы ЖЦ программных средств, то в стандарте 2008 года уже описаны не только программные средства, но и процессы ЖЦ систем. Если раньше какие-то процессы были отдельными пунктами в старом стандарте, то сейчас это всего лишь подпроцессы процессов, которые так же включают в себя и новые пункты. Отношения между конструкциями процессов в исходных документах показаны на рисунке 1.
Рисунок 1
Не смотря на то, что у этих двух стандартов столько различий, у них так же есть и общее, например: назначение более позднего стандарта осталось тем же, то есть настоящий стандарт, используя устоявшуюся терминологию, устанавливает общую структуру процессов жизненного цикла программных средств, на которую можно ориентироваться в программной индустрии. Настоящий стандарт определяет процессы, виды деятельности и задачи, которые используются при приобретении программного продукта или услуги, а также при поставке, разработке, применении по назначению, сопровождении и прекращении применения программных продуктов.
Заключение
Сравнивая, стандарты ISO/IEC 12207-95 и ISO/IEC 12207-2008, нельзя не заметить, что стандарт 2008 года более наполненный и применим в настоящее время, так же он взаимосвязан со многими другими стандартами. Можно сделать вывод, что современное представление жизненного цикла ПО отражено в проекте стандарта ISO/IEC 12207, представляющий жизненного цикла не только как процесса разработки ПО, но и как эксплуатации и сопровождения ПО. Поэтому используя стандарты описания жизненного цикла программных средств и систем, мы можем сделать наш продукт на высоком уровне, который будет удовлетворять все требования нынешнего рынка. международный стандарт прикладной технический
Воспользуйтесь поиском по сайту: ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|