8 что такое профиль стандартов. Профили стандартов жизненного цикла систем и программных средств в программной инженерии. Типовая структура описания ISP включает


Компания АстроСофт разрабатывает свой компилятор языков программирования C/C++ с 1999 года. К проекту привлекаются исключительно российские специалисты, на разработку потрачено в общей сложности более 170 человеколет. За это время созданы несколько пакетов средств разработки на базе компилятора UCC, которые используются в производственных процессах крупных промышленных компаний.

За счет архитектуры адаптация компилятора к новой платформе занимает около 2 месяцев в зависимости от сложности процессора и методов низкоуровневой оптимизации. Адаптация включает в себя настройку правил кодогенерации, в то время как основной исходный код компилятора остается неизменным.

Сферы применения:

  • оборонно-промышленный комплекс
  • системы безопасности и связи
  • авионика
  • приборо- и станкостроение
  • компьютерная периферия


Первая фаза компиляции – Frontend позволяет произвести первичное преобразование программы в ее высокоуровневое древовидное представление. Одним из основных предназначений данного этапа компиляции является лексический и синтаксический разбор исходного кода и его абстрагирование от конкретного языка программирования. Компилятор поддерживает два Frontend: C и C++.

На следующем этапе проводится первичная оптимизация промежуточного представления.

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

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

В финале список ассемблерных инструкций преобразуется в ассемблерный файл, который передается на трансляцию целевому ассемблеру.



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

Для этого в компилятор введено понятие промежуточного высокоуровневого представления программы, состоящего из узлов: команд и атрибутов «псевдопроцессора». Этот процессор содержит универсальный набор команд, бесконечное количество регистров и памяти.



1999 - 2000
Разработка первой версии мультиплатформенного компилятора C.

2006-2010

Разработка и оптимизация модели процессора южнокорейской компании, предназначенного для медиаприложений.

Разработка новых специализированных методов высокоуровневой и низкоуровневой оптимизации.

2000-2001

Разработка C++ Frontend для мультиплатформенного компилятора.

2008-2010
Разработка и оптимизация модели процессора южнокорейской компании, предназначенного для смарт-карт.
2001-2002
Разработка модели для 32-битного стекового процессора шведской компании.
2011-2014
Поддержка и постоянные улучшения кодогенерационных моделей вышеуказанных процессоров.
2002-2003
Полный рефакторинг компилятора –
обновление платформы и алгоритмов.
Разработка и поддержка.
2012-2013
Разработка кодогенерационной модели для узкоспециализированного 32-битного RISC-процессора для контроллеров SSD-дисков крупнейшего в мире производителя чипов.
2004-2005
кодогенерационной модели для узкоспециализированного многоядерного процессора PRIME (задачи печати) для южнокорейской компании.
Настоящее время
Поддержка обновлённых стандартов языка и реализация новых оптимизаций кода.

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

Стартовав в 2000 году как исследовательский проект Университета Иллинойса, на сегодняшний день LLVM де-факто является стандартом в качестве платформы для создания новых компиляторов и продолжает активно развиваться.

В отличие от компилятора GCC, LLVM не требует раскрытия исходных кодов создаваемых на его основе продуктов, что стимулирует его использование в коммерческих проектах.

АстроСофт обладает соответствующими компетенциями, имея опыт разработки специфических LLVM оптимизаций, а в 2017 году ведет несколько проектов по разработке полных LLVM-компиляторов.



LLVM не является компилятором сам по себе, а скорее предоставляет инфраструктуру для его создания. Используя эту инфраструктуру, был создан компилятор Clang, на данный момент неотрывно связанный с LLVM и развивающийся параллельно. Сегодня, когда мы говорим LLVM, подразумеваем Clang, и наоборот. А разработка нового компилятора на базе LLVM обычно означает портирование на новую платформу компилятора Clang.

Clang создавался с целью замены GCC, который изначально рассматривался в качестве единственного фронт-энда для LLVM. Однако GCC по разным причинам оказался неудобен для некоторых разработчиков. Одной из веских причин стали лицензионные ограничения GCC, которые с появлением Clang были преодолены. Заинтересованность в проекте выразили такие известные компании, как Apple, ARM, Google, Microsoft, Intel и др.

Сам компилятор Clang (как и LLVM) разработан на языке С++, а поддерживаемыми языками стали C, C++, Objective-C, Objective-C++, OpenMP, OpenCL, CUDA.




Как мы уже выяснили, LLVM, по сути, является бек-эндом компилятора, фронт-эндом которого выступает Clang. Как правило, у разработчиков компиляторов на основе Clang/LLVM не возникает потребности модифицировать «ядро», и необходимыми знаниями в этом случае становятся:
  • общее понимание архитектуры LLVM;
  • владение языком внутреннего представления (LLVM IR, LLVM intermediate representation);
  • понимание организации мультиступенчатой оптимизации.

Разработка компилятора на базе Clang/LLVM – хороший вариант для компаний, если ожидаемая выгода от постоянного развития «ядра» компилятора и широкий спектр поддерживаемых «из коробки» технологий перевешивают потенциальный риск, связанный с зависимостью от зарубежных решений и невозможностью влиять на направление развития базового функционала. АстроСофт предлагает свои компетенции в создании таких компиляторов. Если же потенциальные риски «перевешивают», мы предлагаем полностью российскую разработку – универсальный компилятор UCC .



В качестве базы для проекта использовалась собственная разработка АстроСофт - продукт Universal C Compiler (UCC). В нем существует механизм разработки компилятора для новой платформы: реализовано построение кодогенерационной модели, которая настраивает внутренние алгоритмы генерации кода и позволяет конвертировать абстрактное внутреннее представление программы в ассемблерные инструкции целевой машины. С целью сокращения издержек было принято решение портировать ассемблер, линкер и симулятор заказчика на новую платформу.

Проект был разделен на две итерации: разработка и оптимизация. В ходе первой итерации был получен полностью работоспособный комплект разработки на основе существующих решений, в ходе второй итерации добавлены оптимизации, специфичные для новой платформы.



Разработаны: компилятор С для нового узконаправленного процессора, а также ассемблер, линкер и симулятор для новой платформы.

Компилятор интегрирован и активно применяется заказчиком. Готов к использованию при разработке Flash и SSD-накопителей.

Основное средство разработки - Универсальный компилятор C (UCC). Сборка компилятора осуществлялась при помощи MSVC 2010 и модифицированным Yacc. В качестве базы для других инструментальных средств использовались: ассемблер, линкер, симулятор компании-клиента. Для тестирования использовалась собственная система тестирования компиляторов АстроСофт - TestSuite (насчитывает более 25 тысяч тестов и синтезирует в себе признанные сторонние решения с наборами, разработанными сотрудниками компании).

Иногда просто необходимо иметь быстрый доступ к компилятору какого-либо языка. Скачивать нужную программу долго, но как же тогда быть? Представляем 5 онлайн компиляторов, которые выручат в такие моменты. Интересно, что многие программисты даже не подозревают о существовании различных онлайн компиляторов и для компиляции небольшого отрезка кода им приходится скачивать десктопные IDE , которые потом приходится еще и удалять.

В этой подборке вы узнаете про 5 компиляторов, которые наверняка смогут облегчить вам жизнь, так как выполняют свою работу на отлично!

PHPFiddle и SandBox

Эти два компилятора SandBox и PHPFiddle являются очень простыми, но в этом их достоинство. Вы просто заходите на сайт и получаете готовый скомпилированный код всего в пару кликов.

Единственные отличия в этих компиляторах заключаются в нескольких деталях. Дело в том, что сайт PHPFiddle имеет красивый современный дизайн и может выполнять код вместе с HTML разметкой, что порой очень кстати. SandBox таким похвастаться не может, но зато у него есть возможность выбрать версию PHP, которая вам нужна в данный момент. Поэтому вам придется добавить оба эти сайта в закладки:)

CodePad

CodePad является компилятор намного более функциональным нежели предыдущие два. Он может выполнять код не только на языке PHP, но и на многих других языках программирования.


Благодаря простому дизайну, а также хорошему компилятору сайт грузится быстро даже если у вас очень плохой интернет. Это безусловно плюс, так как вы сможете воспользоваться сервисом практически откуда угодно.

Koding

Сервис Koding нельзя назвать онлайн компилятором. Это полноценная виртуальная машина, которую вы можете запустить онлайн на удаленном компьютере.


Зайдя на сайт вы можете зарегистрироваться и в облаке создать одну или несколько полноценных виртуальных машин под управлением Ubuntu 14.04 . Понятное дело, что на таких виртуальных машинах вы уже сможете компилировать все что угодно. Такое решение является отличным, но все же вам не удасться настроить все за 5-10 минут.

GCC GodBolt

На самом деле, GCC GodBolt обладает достаточно простыми характеристиками, но все же он заслуживает свое место в этом ТОПе. На этом сайте вы сможете скомпилировать только код написанный на C++. При этом вы сможете добавить какие-только угодно настройки к компиляции проекта. Те, кто часто работают с C++ смогут оценить все достоинства этого компилятора.


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


Цели применения стандартов. Целями стандартизации являются: повышение уровня безопасности жизни и здоровья граждан, имущества физических и юридических лиц, государственного и муниципального имущества, объектов с учётом риска возникновения чрезвычайных ситуаций природного и техногенного характера, повышение уровня экологической безопасности, безопасности жизни и здоровья животных и растений; обеспечение конкурентоспособности и качества продукции (работ, услуг), единства измерений, рационального использования ресурсов, взаимозаменяемости технических средств (машин и оборудования, их составных частей, комплектующих изделий и материалов), технической и информационной совместимости, сопоставимости результатов исследований (испытаний) и измерений, технических и экономико-статистических данных, проведения анализа характеристик продукции (работ, услуг), исполнения государственных заказов, добровольного подтверждения соответствия продукции (работ, услуг); содействие соблюдению требований технических регламентов; создание систем классификации и кодирования технико-экономической и социальной информации, систем каталогизации продукции (работ, услуг), систем обеспечения качества продукции (работ, услуг), систем поиска и передачи данных, содействие проведению работ по унификации.


Категории профилей стандартов. В зависимости от специфики объекта стандартизации, а также от содержания разрабатываемых и предъявляемых к нему требований все стандарты подразделяются на следующие виды: стандарты основополагающие; стандарты на продукцию, услуги; стандарты на процессы; стандарты на методы контроля, испытаний, измерений, анализа;


Категории профилей стандартов. Государственный стандарт Государственный стандарт Российской Федерации (ГОСТ Р) стандарт, принятый Государственным комитетом Российской Федерации по стандартизации и метрологии (Госстандартом России). Государственные стандарты содержат требования к продукции, работам и услугам, потребности в которых имеют отраслевой характер. Эти стандарты принимает Госстандарт России, а если они относятся к области строительства, архитектуры, промышленности строительных материалов - Госстрой России. В государственных стандартах содержатся обязательные и рекомендательные требования. К обязательным требованиям относятся: безопасность продукта, услуги, процесса для здоровья человека, окружающей среды, имущества, а также производственная безопасность и санитарные нормы техническая и информационная совместимость и взаимозаменяемость изделий единство методов контроля и единство маркировки. К рекомендательным требованиям относятся: основные потребительские характеристики продукции и методы их контроля; требования к упаковке, транспортировке, хранению и утилизации продукта; правила и нормы, касающиеся разработки производства и эксплуатации; правила оформления технической документации.


Категории профилей стандартов. Отраслевые стандарты. Отраслевые стандарты разрабатываются применительно к продукции определенной отрасли. Их требования не должны противоречить обязательным требованиям государственных стандартов, а также правилам и нормам безопасности, установленным для отрасли. Данные стандарты принимаются государственными органами управления, которые несут ответственность за соответствие отраслевых стандартов требованиям государственных. Отраслевые стандарты регламентируют: продукцию, процессы и услуги, применяемые в отрасли; правила, касающиеся организации работ по отраслевой стандартизации; типовые конструкции изделий отраслевого применения; правила метрологического обеспечения в отрасли.


Категории профилей стандартов. Стандарты предприятий. Стандарты предприятий разрабатываются и применяются самим предприятием. Стандарты предприятий регламентируют: деятельность составляющих частей организации; управление производством; качество производимой продукции; общие технологические нормы процесса производства продукции.


Категории профилей стандартов. Стандарты общественных объединений. Стандарты общественных объединений (научно-технических обществ, инженерных обществ и т.д.) разрабатываются на принципиально новую продукцию, процессы или услуги, передовые методы испытаний, нетрадиционные технологии и способы управления производством. Стандарты научно-технических, инженерных обществ и других общественных объединений разрабатываются и принимаются этими общественными объединениями для динамичного распространения и использования полученных в различных областях знаний результатов исследований и разработок. Необходимость применения этих стандартов субъекты хозяйственной деятельности определяют самостоятельно.


Заключение Таким образом, стандартизация – это деятельность, направленная на разработку и установление требований, норм, правил, характеристик как обязательных для выполнения, так и рекомендуемых, обеспечивающая право потребителя на приобретение товаров надлежащего качества за приемлемую цену, а также право на безопасность и комфортность труда. Цель применения стандартов – достижение оптимальной степени упорядочения в той или иной области посредством широкого и многократного использования установленных положений, требований, норм для решения реально существующих, планируемых или потенциальных задач. Основными результатами деятельности по стандартизации должны быть повышение степени соответствия продукта (услуг), процессов их функциональному назначению, устранению технических барьеров в международном товарообмене, содействия научно-техническому прогрессу и сотрудничество в различных областях. Действующая система стандартизации смещает приоритеты к оценке качества объектов стандартизации и методам их испытаний, что также согласуется с мировым опытом стандартизации и необходимы для обеспечения взаимопонимания между партнёрами как в сфере техники и технологий, так и в конечном итоге в торгово-экономических связях.

Обширная программа систем REHAU способна удовлетворить пожелания даже самого взыскательного заказчика. На сегодняшний день Завод Стандарт и компания REHAU готовы предложить Вам широкий выбор систем оконных профилей: EURO/BLITZ, SIB, DELIGHT, BRILLIANT.

REHAU EURO/BLITZ: КАЧЕСТВО, ДОСТУПНОЕ ВСЕМ

Оконная система REHAU EURO/BLITZ прекрасно впишется как в классическую, так и в современную обстановку. Она обладает элегантным внешним видом благодаря 15° скосам на лицевых поверхностях профиля. Форма окон из профилей REHAU EURO/BLITZ может варьироваться в соответствии с Вашим архитектурным замыслом.

  • Системная глубина/число камер: 60 мм/3 камеры.
  • Теплоизоляция: Rопр =0,63м2°С/Вт.
  • Воздухо- и водонепроницаемость: надежная защита от сквозняков, пыли и воды благодаря двум контурам уплотнений (нахлест уплотнений по 8 мм снаружи и внутри).

Преимущества:

Среди основных преимуществ системы – стабильное высокое качество, хорошие показатели по теплотехнике, позволяющие в сочетании с традиционным двухкамерным стеклопакетом изготавливать конструкции с требуемым сопротивлением теплопередаче, сравнительно невысокая себестоимость. Все это позволяет успешно использовать REHAU EURO/BLITZ для работы на объектном рынке.

Область применения:

REHAU EURO/BLITZ – Ваш оптимальный выбор, как для объектного, так и частного строительства. Она прекрасно подходит для строительства новых и реконструкции существующих жилых и общественных зданий со стандартными требованиями к установке как белых окон, так и кашированных в различные цвета, в т.ч. повторяющих цвет и структуру поверхности дерева. Система REHAU EURO/BLITZ применяется для изготовления окон и балконных дверей.

REHAU SIB: НА ЗАЩИТЕ ТЕПЛА

Многокамерная система SIB-Design создана специально для российских климатических условий. Исключительность теплозащитных свойств окна из профилей REHAU SIB-Design подтверждена экспериментально. Испытания, проведенные специалистами ведущего отраслевого института НИИ Строительной Физики РААСН, показали неизменность рабочих характеристик системы под воздействием экстремально низких температур. В специальной камере были смоделированы суровые климатические условияСибири: с внешней стороны окна температура опускалась до –42°С, внутри поддерживалась температура +20°С, при повышенной относительной влажности ≈55%. Оконный блок с использованием системы REHAU SIB-Design с честью выдержал перепад температур более 60°С. Окно не промерзло и не «потекло» (выпадения конденсата на профиле не произошло). Коэффициент приведенного сопротивления теплопередаче окна составил 0,8 м2°C/Вт, что превышает сегодняшние максимальные требования к оконнымблокам, эксплуатируемым на территории РФ в соответствии со СНиП №23–02–2003 «ТЕПЛОВАЯ ЗАЩИТА ЗДАНИЙ»

Основные системные характеристики:

  • Системная глубина / число камер: 70 мм / многокамерная.
  • Теплоизоляция: Rопр=0,71 м2 ◦С/Вт.
  • Взломобезопасность: установка усиленных приборов запирания благодаря смещению оси приборного паза 13 мм.
  • Воздухо- и водонепроницаемость: надежная защита от сквозняков, пыли и воды благодаря двум контурам уплотнений (нахлест уплотнений 7/8 мм внутри).
  • Поверхность: высококачественная, идеально гладкая, удобная для ухода

Преимущества:

В основе разработки REHAU Sib-Design лежат составляющие, которые позволяют обеспечить высокие энергоэффективные характеристики окна: это глубина 70 мм, дополнительная изолирующая воздушная камера между армированием и внутренней стенкой профиля «Thermo-Block» и возможность установки стеклопакета толщиной до 41 мм. Результатом является исключительно высокое сопротивление теплопередачи: 0,71 м2°С/Вт.
С окнами REHAU SIB-Design становятся возможными различные архитектурные изыски.
15 мм радиусы на видимых лицевых поверхностях придадут окнам из профилей REHAU SIB-Design элегантный внешний вид.
Профили REHAU SIB-Design позволяют изготавливать окна различных форм: от прямоугольного до изогнутого или круглого.

Область применения:

Система REHAU SIB-Design успешно применяется в индивидуальном и объектном строительстве, в том числе в северных регионах РФ. Оптимально подходит для нового строительства и реконструкции с использованием окон белого цвета и окон, кашированных в различные цвета, в т.ч. Повторяющих цвет и структуру дерева. Система используется для изготовления окон и балконных дверей.

REHAU DELIGHT: ГАРМОНИЯ СВЕТА И СТИЛЯ

Ноу-хау технического решения REHAU DELIGHT позволяет сократить раму коробки и створки и впустить в дом на 10% больше света, по сравнению с традиционными системами. Помимо этого, система REHAU DELIGHT дает прекрасную возможность для импровизации и удовлетворения Ваших индивидуальных пожеланий по дизайну окна. Дизайнерскую створку отличают благородные пропорции, округлость форм и изящная рельефность декоративного штапика.

Основные системные характеристики:

  • Системная глубина / число камер: 70 мм/ 5 камер.
  • Исключительно высокое значение теплоизоляции: rопр=0,8м2 с/вт.
  • Взломобезопасность: установка усиленных приборов запирания благодаря смещению оси приборного паза 13 мм.
  • Поверхность: высококачественная, идеально гладкая, удобная для ухода.

Преимущества:

Увеличение площади светопрозрачного заполнения оконной конструкции из профилей REHAU DELIGHT не идет в ущерб другим ее функциональным характеристикам. Глубина 70 мм, пятикамерное строение профиля и возможность установки стеклопакета толщиной до 41 мм надежно удерживают тепло внутри дома.
НА 10% БОЛЬШЕ СВЕТА
Окна из профильной системы REHAU DELIGHT пользуются все большим спросом на рынке частного заказчика, за счет особой изысканности, эстетической привлекательности и возможности сделать помещение более светлым. Они отвечают общей тенденции к увеличению светопрозрачной части окна: в нашей климатической полосе с небольшим количеством солнечных дней люди хотят по максимуму заполнить свой дом светом.

Область применения:

Окна из профилей REHAU DELIGHT применяются в высотном и частном загородном строительстве. Они подходят для строительства новых зданий и реконструкции существующих.
Оконная система REHAU DELIGHT позволяет удовлетворить высокие требования по теплоизоляции, дизайну и естественному освещению.

REHAU BRILLIANT: СТРАСТЬ К ОСОБЕННОМУ

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

Основные системные характеристики:

  • Системная глубина/ число камер: 70 (80мм)/5 (6) камер.
  • Теплоизоляция: R опр. = 0,79м2°С/Вт.
  • Взломобезопасность: установка усиленных приборов запирания благодаря смещению оси приборного паза на 13 мм.
  • Воздухо- и водонепроницаемость: надежная защита от сквозняков, пыли и воды благодаря двум контурам уплотнений (нахлест уплотнений по 7/8 мм снаружи / внутри).
  • Поверхность: высококачественная, идеально гладкая, удобная для ухода.

Преимущества:

Многогранны, как современная архитектура. Окна из профилей REHAU BRILLANT придадут особое благородство внешнему облику дома и украсят любой интерьер. Чтобы подчеркнуть индивидуальность вашего дизайнерского решения, REHAU предлагает оконные створки в трех различных вариантах: элегантно закругленные, мягко скошенные или характерно смещенные. Окна из профилей REHAU BRILLANT это:

  • Абсолютно гладкая и блестящая поверхность профилей.
  • Классическая смещенная поверхность створки или створка со скосами на лицевой поверхности.
  • Закругленные профили створки глубиной 70 мм и коробки глубиной 80 мм.
  • Элегантные 20 градусные скосы на видимых внешних поверхностях.

Высокая теплоизоляция Rопр=0,79 м2 с/вт. Отличная теплоизоляция окон из профилей REHAU BRILLANT способствует созданию благоприятного микроклимата даже в холодное время года.

  • Системная глубина 70 мм, а также два контура уплотнений окон из профилей REHAU BRILLANT не пропускают холод, сквозняк, задерживают пыль и влагу.
  • Пять воздушных камер действуют как изолирующие барьеры между низкой наружной температурой воздуха и температурой в теплом помещении.

Результат: исключительно высокое значение теплоизоляции Rопр=0,79 м2 с/вт.
Окна из профилей REHAU BRILLANT примут активное участие в общем стилевом решении дома благодаря широчайшему спектру цветовых оттенков и декоративных исполнений. Мы вам предлагаем:

  • Классический белый или любой цвет по шкале RAL.
  • Красивые эффекты глянцевых поверхностей.
  • Декоративные покрытия с имитацией структуры дерева.

Область применения:

Окна из профилей REHAU BRILLANT станут прекрасным выбором для нового строительства зданий класса «премиум», реконструируемых объектов, а также для домов с минимальным потреблением энергии. Они дают возможность эксклюзивного дизайна с использованием широчайшего выбора цветов и форм.
Система REHAU BRILLANT используется для изготовления окон и балконных дверей.

УЛЬТРАОКНО

PAGE 16

Лекция 2. Профили стандартов жизненного цикла систем и пр о граммных средств в программной инженерии

2.1. Назначение профилей стандартов жизненного цикла в програм м ной инженерии

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

Профиль стандартов  это совокупность нескольких (или подмнож е ство о д ного) базовых стандартов (и других нормативных документов) с четко определенными и гармонизированными подмножествами обяз а тельных и факультативных возможностей, предназначенная для реализ а ции заданной функции или группы функций. Функциональная характер и стика (заданный набор функций) объекта стандартизации является исхо д ной для фо р мирования и применения профиля этого объекта или процесса. В профиле выделяются и устанавливаются допустимые факультативные возможности и значения параметров каждого базового стандарта и/или нормативного документа, входящего в профиль. Профиль не может пр о тиворечить и с пользованным в нем базовым стандартам и нормативным документам. Он должен использовать факультативные возможности и значения параметров в пределах допустимых, выбранные из альтернати в ных в а риантов. На базе одной и той же совокупности базовых стандартов могут формироваться и утверждаться различные профили для разных пр о ектов и сфер применения. Эти ограничения базовых документов пр о филя и их гармонизация, проведенная разработчиками профиля, должны обесп е чивать качество, совместимость и корректное взаимодействие компоне н тов системы, соответствующих профилю, в заданной области его прим е нения.

Основными целями применения профилей стандартов при создании и применении ПС являются:

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

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

  • несколько сотен разработанных международных и национальных ста н дартов не полностью и неравномерно покрывают потребности в станда р тизации объектов и процессов создания и применения сло ж ных систем, программных средств и их компонентов;
  • большая длительность разработки, согласования и утверждения межд у народных и национальных стандартов (3-5 лет) приводит к их консерв а тизму, а также к хроническому отставанию требований и рек о мендаций этих документов от современного состояния техники и от текущих п о требностей практики и технологии создания сло ж ных систем;
  • стандарты современных ПС должны: учитывать необходимость их построения как открытых систем; обеспечивать расширяемость при нар а щивании или изменении выполняемых функций; переносимость пр о граммных средств и данных систем между разными аппара т но-программными платформами; возможность взаимодействия с другими информационными системами той же проблемно-ориентированной сф е ры;
  • наиболее сложные и творческие процессы создания и развития кру п ных распределенных ПС (системный анализ и проектирование, интегр а ция компонентов и систем, испытания и сертификация) почти не подде р жаны требованиями и рекомендациями стандартов, вследствие трудн о сти их формализации, унификации и ра з нообразия содержания;
  • чем сложнее объекты или процессы, подлежащие стандартизации, тем больше необходимо использовать и формулировать предварительных у с ловий, учитываемых в требованиях и рекомендациях ста н дарта, которые следует адаптировать и конкретизировать для ко р ректного их применения в определенном проекте;
    - пробелы и задержки в подготовке и издании стандартов высок
    о го ранга и текущая потребность унификации и регламентирования современных объектов и процессов в области программной инженерии приводят к со з данию и практическому применению многочисленных нормативных и м е тодических документов отраслевого, ведомственного или фирменного уро в ня.

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

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

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

  • регламентации организации и порядка проведения работ;
  • автоматизации этапов и операций;
  • рационального разделения труда между специалистами разной квал и фикации и проблемной ориентации.

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

Для корректного применения описания профилей стандартов дол ж ны содержать :

  • определение целей, которые предполагается достичь прим е нением данного профиля стандартов;
    • перечисление функций продукта или процесса стандартизации, опред е ляемого данным профилем;
    • формализованные сценарии применения базовых стандартов и спец и фикаций, включенных в данный профиль;
    • сводку требований к системе или к её компонентам, определя ю щих их соответствие профилю и требований к методам тестирования соотве т ствия;
    • ссылки на конкретный набор стандартов и других нормативных док у ментов, составляющих профиль, с точным указанием используемых пол о жений, редакций и ограничений, способных оказать влияние на достиж е ние корректного взаимодействия объектов стандартизации при использ о вании данного профиля;
    • информационные ссылки на спецификации тестов проверки соответс т вия профилю.

В зависимости от области распространения профилей они могут иметь разные статусы утвержд е ния :

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

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

  • выделить объединенные единой логической связью проблемно-ориентированные области функционирования систем, где могут использ о ваться стандарты, общие для одной организации или группы предприятий;
  • идентифицировать стандарты и нормативные документы, варианты их применения и параметры, которые необходимо включить в профиль ста н дартов;
  • документально зафиксировать участки конкретного профиля, где тр е буется создание новых стандартов или нормативных документов, и иде н тифицировать характеристики, которые могут оказаться ва ж ными для разработки недостающих стандартов и нормативных д о кументов этого профиля;
  • формализовать профиль в соответствии с его категорией, включая стандарты, различные варианты нормативных документов и дополн и тельные параметры, которые непосредственно связаны с проф и лем;
  • опубликовать профиль и/или продвигать его по формальным инста н циям для дальнейшего распространения на предприятии или в отрасли.

2.2. Жизненный цикл профилей стандартов систем и программных средств

Профиль стандартов конкретной системы не является стати ч ным, он развивается и конкретизируется (возможно, во взаимодейс т вии с заказчиком) в процессе жизненного цикла и оформляется в составе документации системы. Разработка и применение профилей стандартов являются органической частью процессов жизненного цикла, разрабо т ки и развития систем . Проектированию системы предшествует обслед о вание объекта автоматизации, результатом которой являются его фун к циональная и информационная модели, определение целей создания си с темы и состава ее функций. Стандарты, важные с точки зрения заказчика, должны задаваться в спецификации требований на проектирование сист е мы и составлять её первичный профиль. То, что не задано в требованиях зака з чика, остается первоначально на усмотрение разработчика системы, кот о рый, руководствуясь требованиями спецификаций, может дополнять и развивать профили, которые согласуются с заказчиком. В профиль ко н кретной системы включаются спецификации стандартизации компоне н тов, разработанных в составе данного проекта, и спецификации испол ь зова н ных готовых программных и аппаратных средств, если эти средства не спец и фицированы соответствующими стандартами. После завершения проектирования и испытаний системы, в ходе которых проверяется ее с о ответс т вие профилю, профиль применяется как основной инструмент сопр о вождения системы при эксплуатации, модернизации и управлении конф и гурацией.

Целесообразно рассматривать две группы профилей систем (рис. 2.1):

  • функциональные профили , регламентирующие архитектуру и структ у ру объектов системы и ее компонентов; функции, интерфейсы и прот о колы взаимодействия, фо р маты данных;
  • технологические профили , регламентирующие процессы проектиров а ния, разработки, применения, сопровождения и развития систем и их ко м понентов.

На этапах жизненного цикла системы выбираются и затем применяю т ся общесистемные функциональные профили :

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

При применении функциональных профилей системы следует иметь в виду согласование (гармонизацию) этих профилей между собой. Необх о димость такого согласования возникает, в частности, при прим е нении стандарт и зированных интерфейсов, в том числе, интерфейсов ПС и БД со средой их функционирования, интерфейсов со средствами защиты инфо р мации. При согласовании функциональных профилей возмо ж ны также уточнения профиля внешней среды системы и профиля инструментал ь ных средств создания, сопровождения и развития пр о граммных средств.

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

  • выбор аппаратной и операционной среды системы определенного кла с са;
  • определение внешней и пользовательской среды функциониров а ния и применения сист е мы;
  • подготовку административного управления системой к а чества;
  • выбор готовых программных и аппаратных средств, соответству ю щих функциям и проф и лям системы;
  • проектирование и разработка программных средств и баз данных (фун к циональных частей системы) в соответствии с выбранными проф и лями, в частности в соответствии со стандартами на и н терфейсы;
  • разработка требований к методам тестирования компонентов сист е мы на соответствие функциональным профилям, выбор или разр а ботка тестов соответствия;
  • тестирование компонентов системы на соответствие профилям или пр о верка сертификатов соответствия для применяемых готовых програм м ных и аппаратных средств;
  • комплексирование компонентов в создаваемой системе на основе п о следовательного применения профилей и их квалификационного тестир о вания.

Применение функциональных профилей должны поддерживать о с новные, технологические профили (см. рис. 2.1):

  • жизненного цикла программных средств и баз данных;
  • обеспечения качества программных средств и информации баз да н ных;
  • верификации, тестирования и сертификации ПС и БД;
  • сопровождения и управления конфигурацией ПС и информацией БД;
  • документирования пр о граммных средств и информации баз данных.

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

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

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

Эта группа стандартов непосредственно определяет инструментальные средства решения соответствующих задач и в процессах жизненного ци к ла ПС обычно стабильны, не изменяются и не раскрываются ниже в проф и лях ЖЦ .

Учитывая динамику формирования и применения профилей жизненн о го цикла ПС, по мере детализации структуры системы и ее возможного развития, образуется жизненный цикл профилей стандартов . Жизне н ный цикл профилей ПС целесообразно рассматривать в составе технолог и ческих работ проекта отдельно от этапов и работ непосредственной разр а ботки и эксплуатации самих программных средств и баз данных. Созд а ние и применение профилей жизненного цикла ПС можно разделить на два крупных проце с са (рис. 2.2):

  • разработка, формирование и адаптация профилей стандартов ЖЦ ПС для использования в конкретном проекте системы;
  • непосредственное применение требований и рекомендаций кажд о го адаптированного профиля стандартов для регламентирования этапов, р а бот и д о кументов проекта ПС.

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

Процессы жизненного цикла, развития системы и её програм м ных компонентов должны быть поддержаны этапами развития и приме- нения комплекта профилей , к о торые включают:

  • системный анализ объекта информатизации и создания концепции си с темы, когда производится первичный выбор исходного комплекта ста н дартов, которым должна соответствовать система; выявляется необход и мость разработки и состав дополнительных нормативных документов; оформляется содержание и параметры комплектов документов предпол а гаемых проф и лей;
  • проектирование системы, когда определяются требования к её арх и тектуре и структуре и соответственно уточняются положения, пар а метры и адаптируются стандарты комплекта профилей; оформл я ются проекты документов и методических руководств по применению раб о чей версии каждого проф и ля стандартов;
  • разработку или приобретение готовых компонентов системы, при этом утверждаются и применяются все положения профиля; производится ко н троль, тестирование и испытания компонентов на соответствие требован и ям и документам конкретн о го профиля стандартов;
  • сопровождение, актуализацию и развитие системы, когда анализирую т ся положения, параметры и результаты адаптации применяемой ве р сии каждого профиля; выявляются и устраняются дефекты проф и лей;
  • модернизацию профиля, с учетом появления более совершенных те х нических и программных средств, а также новых стандартов; при необх о димости осуществляется формирование, документирование и внедр е ние новой модифицированной и уточненной версии соответствующего проф и ля.

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

На этапе системного анализа при планировании профиля технологической поддержки разработки ПС следует проанализировать набор базовых международных стандартов, связанных с регламентированием особенностей систем и программных средств. Для поддержки жизненного цикла разрабатываемых ПС необходимо из них выбрать предварительный набор стандартов, в наибольшей степени относящихся к ПС данного класса. Этот набор стандартов может быть дополнен возможными и целесообразными для применения стандартами де-факто и перечнем подлежащих разработке нормативных документов данного проекта. В результате формируется предварительный перечень стандартов и нормативных документов, который должен стать основой для профилей ЖЦ ПС. Этот перечень должен быть указан в спецификации требований или войти в состав системного проекта комплекса программ.

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

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

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

В уточненном плане реализации системы должны быть предста в лены ссылки на состав и содержание документов каждого профиля, в ы делены компоненты, параметры и ограничения, сформированные в пр о цессе адаптации профиля ЖЦ данного ПС. Для разработчиков и заказч и ков на этом этапе должен быть создан проект руководства применения профилей на последующих этапах ЖЦ. В результате на этом этапе фо р мируется проект адаптированного набора профилей . Необходимо пр о вести предварительное обучение разработчиков проекта применению проф и лей ЖЦ ПС и основным концепциям профилей для данной системы. Конкрет и зация обеспечения технологической поддержки последующей разработки ПС позволяет завершить и утвердить адаптированные пр о фили, поддерживающие ЖЦ ПС , а также руководства по их примен е нию. Результатом этого процесса является определение стандартов и в ы бор интерфе й сов, которые удовлетворяют требованиям, предъявляемым к системе в ц е лом.

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

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

Для обеспечения корректного применения каждого профиля должна быть разработана и утверждена методика проверки и тестирования для установления степени соответствия комплекса программ утвержденному профилю ЖЦ ПС и БД. Содержание и рекомендации профилей ЖЦ должны быть освоены специалистами, осуществляющими контроль их выполнения и тестирование создаваемого комплекса программ. Отдельные компоненты профиля подлежат тестированию, как с точки зрения соответствия необходимым стандартам, так и соответствия требованиям, сформулированным в терминах их характеристик качества. Тестирование на соответствие не гарантирует функциональной совместимости, оно представляет лишь тест на соответствие набору тестовых утверждений, содержащихся в стандарте. Поведение объекта отслеживается и сравнивается с ожидаемым результатом эталонной реализации.

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

При сопровождении программного продукта и создании его новых версий накапливается опыт применения каждого использованного профиля стандартов ЖЦ, проявляются его некоторые недостатки и появляются предложения по модернизации. На этой стадии профиль продолжает выполнять регламентирующую функцию в качестве инструмента для управления конфигурацией системы. На этапе сопровождения профиль превращается в документ, позволяющий установить план текущих и долгосрочных мероприятий по развитию инфраструктуры предприятия и внедрению новых систем. Кроме того, в течение времени эксплуатации созданной версии программного продукта возможно появление новых стандартов де-юре и де-факто, которые целесообразно учесть в конкретном профиле. Сопровождение и смена версий ПС может привести к необходимости корректировки и модернизации конкретного профиля ЖЦ системы. Такая модернизация профиля может отразиться не только на вновь создаваемых версиях ПС, но потребовать доработок уже эксплуатируемых версий.

Жизненный цикл профиля стандартов ПС при его сопровождении, может в некоторой степени повторять ЖЦ системы и/или ПС, созданных с его применением. Для этого следует разработать или выбрать и утве р дить Руководство по сопровождению, развитию и модификации пр о филя ЖЦ ПС , а также методики и план управления конфигурациями версий профиля, включа ю щие:

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

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

  • процессов жизненного цикла системы и основных компонентов ПС и БД;
  • продуктов и компонентов системы, подготовленных и рекоменду е мых для эксплуат а ции и сопровождения.

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

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

  • руководители – менеджеры крупного проекта системы и её основных, функциональных ко м понентов программного продукта;
  • менеджеры – системные аналитики, создатели спецификаций требов а ний, пилотных проектов компонентов и алгоритмов решения функци о нальных з а дач;
  • программисты-разработчики программных компонентов, структур и с о держания да н ных;
  • интеграторы функциональных программных компонентов, тестиру ю щие и отлаживающие крупные функциональные компоненты, или ПС в ц е лом;
  • специалисты сопровождения и управления конфигурацией версий пр о граммных продуктов;
  • испытатели и сертификаторы программных продуктов;
  • разработчики технологии, инструментальных средств, методических, руководящих и инструктивных документов, обеспечивающих реализацию профилей стандартов ЖЦ ПС.

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

  • содержание и описание выбранных положений и разделов стандартов и нормативных документов профиля с позиции его конкретного пользов а теля;
  • параметры адаптации разделов стандартов профиля и содержание д о полнительных нормативных документов;
  • методика и сценарии корректного применения всех обязательных и р е комендуемых положений профиля стандартов;
  • требования к содержанию отчетов о результатах контроля и тестир о вания компонентов системы на соответствие обязательным положен и ям проф и ля стандартов в процессе их жизненного цикла.

2.3. Модель профиля стандартов жизненного цикла сложных программных средств

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

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

  • процесс должен быть модульным, т. е. один процесс должен выполнять одну и только одну функцию в жизненном цикле, а интерфейсы между двумя любыми процессами должны быть минимизированы;
  • если функция вызвана более чем одним процессом, тогда функция сама становится процессом;
  • должна быть возможность верификации любой функции в модели жизненного цикла ПС;
  • каждый процесс должен иметь внутреннюю структуру, установленную в соответствии с тем, что должно им быть выполнено.

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

Общая структура и состав профиля стандартов жизненного цикла системы и крупного программного средства для управления проектом представлены на рис. 2.3. На этом рисунке выделены и отражена группа базовых стандартов управления проектами систем и основными процессами сложных программных средств, а также перечень совокупности стандартов детализирующих и поддерживающих процессы их жизненного цикла . Выделенные базовые стандарты образуют иерархическую группу и тесно связаны между собой концепциями, требованиями, процессам и ссылками. Основу профилей управления проектами составляют две группы: стандарты менеджмента качества процессов жизненного цикла систем – CMMI :2003 и менеджмента (административного управления) системой качества (требования) – ISO 9001:2000 . Так как эти стандарты имеют много общего и трудно выделить их преимущества, то при реальной разработке крупных проектов целесообразно уделять приоритет одной из групп в зависимости от особенностей конкретного проекта и предшествовавшего опыта специалистов предприятия.

Некоторым преимуществом применения стандарта ISO 9001 для управления проектами ПС, является его развитие и детализация требований в специальном руководстве ISO 90003:2004 для программных средств. В этом руководстве цитируются каждое требование ISO 9001 , оно комментируется и снабжается особенностями реализации процессов управления для конкретных проектов программных средств. Кроме того, при описании ряда процессов управления проектом для их уточнения и конкретизации делаются ссылки на основные стандарты, регламентирующие жизненный цикл ПС: ISO 12207, ISO 15504, ISO 9126 , а в приложении проводится сопоставление требований этого стандарта с процессам управления и с рекомендациями стандарта ISO 12207 .

Часто создание профилей стандартов крупных программных проектов начинается с определения жизненного цикла системы, процессы которого регламентируются стандартом ISO 15288:2002 . Положения этого стандарта коррелированны с рекомендациями стандарта ISO 12207 , которые детализируются в стандарте ISO 15504:1-9:1998 и в последующей большой группе стандартов (см. рис. 2.3).

Профиль жизненного цикла ПС и БД целесообразно определять на основе подмножества процессов, работ и задач стандарта ISO 12207 , в ы бирая их с учетом характеристик проекта конкре т ной системы. Возможно, что к выбранному подмножеству потребуется добавление д о полнительных процессов, работ, задач и нормативных документов, связанных со спец и фикой данной системы. Это рекомендуется в новых Приложениях 1 и 2 к этому стандарту, а также в ряде руководств детализирующих осно в ные процессы стандарта ISO 12207 . Ряд работ, особенно на наиболее творч е ских этапах создания программного средства, не регламентируется ста н дартами. Это не позволяет разрабатывать и применять профили ЖЦ ПС, основанные только на базе стандартов. Иногда целесообразно дополн и тельно регламентировать такие работы нормативными документами и сп е цификациями разработчиков проекта системы или ведомственными но р мативными д о кументами.

В стандарте ISO 12207 и Приложениях 1 и 2 к этому стандарту, изл о жены основы преобразования и адаптации базовой структуры проце с сов ЖЦ для профиля конкретного проекта ПС и БД . В них даны о б щие рекомендации по адаптации процессов ЖЦ, а также конкретные р е комендации по возможным изменениям ряда работ и результирующих д о кументов в зависимости от характеристик конкретного объекта и пр о цесса его разработки. В связи с возрастающей ролью качества сложных ПС, ц е лесообразно выделять профиль обеспечения качества ПС и БД конкре т ной системы, регламентирующий требования к качеству и меры по его обеспечению.

Модель профиля стандартов жизненного цикла сложных пр о граммных средств обычно формируется из 10 –12 базовых станда р тов . Их количество зависит от целей, сложности и особенностей проекта, от н а значения и области применения модели, а также от возможностей форм а лизации её компонентов. Для последующего изложения программной и н женерии при их выборе и формировании модели профиля стандартов уч и тывалось наличие международных стандартов (Приложение 1), к о торые могут использоваться при определении жизненного цикла ПС и объедин е нии их в профиль, пригодный для последующего использования в технол о гии создания и развития крупного проекта. Поэтому ряд не стандартизир о ванных – творческих процессов явно не отражен в рассматриваемой мод е ли, однако они сущ е ственны для реального жизненного цикла ПС.

Сформированный и используемый далее в лекциях профиль жизне н ного цикла ПС состоит из трех групп станда р тов – рис. 2.4:

  • группы стандартов управления жизненным циклом сложных проектов систем и программных средств, возглавляемой стандартами менеджмента – CMMI и ISO 9000 ;
  • группы стандартов проектирования, разработки, сопровождения и управления конфигурацией, регламентируемой базовыми стандартами жизненного цикла систем и программных средств – ISO 15288 и ISO 12207 ;
  • группы стандартов оценивания и обеспечения качества, безопасности и документирования в жизненном цикле программных средств, с головными стандартами – ISO 9126 и ISO 25000 .

Каждая выделенная группа профиля стандартов жизненного цикла (см. рис. 2.4) детализирована набором стандартов, которые представлены в Приложении 1. Эта схема далее рассматривается как базовая в программной инженерии, подлежащая конкретизации и адаптации в проектах в соответствии с особенностями развития профиля жизненного цикла программного средства (см. рис. 2.2). Большинство представленных стандартов изложено достаточно детально для практического применения в последующих лекциях.