Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по Разработка САПР / 7.лекц_профиль и стандарты качества.doc
Скачиваний:
377
Добавлен:
20.05.2014
Размер:
902.66 Кб
Скачать

3. СТАНДАРТИЗАЦИЯ И ОБЕСПЕЧЕНИЕ КАЧЕСТВА СЛОЖНЫХ ПРОГРАММНЫХ СРЕДСТВ ПРИ СИСТЕМНОМ ПРОЕКТИРОВАНИИ

3.1. Основы стандартизации при системном проектировании программных средств

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

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

- несколько сотен разработанных за рубежом международных и национальных стандартов не полностью и неравномерно покрывают потребности в стандартизации объектов и процессов создания и применения сложных ИС и их компонент;

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

- стандарты современных ИС должны учитывать необходимость построения ПС как открытых систем и обеспечивать:

* их расширяемость при наращивании или изменении выполняемых функций;

* переносимость прикладного программного обеспечения между разными аппаратно-программными платформами;

* возможность взаимодействия с другими информационными системами той же проблемно-ориентированной сферы;

- в области ИС стандартами поддержаны и регламентированы функционально наиболее простые объекты и рутинные, массовые процессы, такие, как телекоммуникация, программирование, документи­рование программ и данных и т.п.;

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

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

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

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

Основными целями применения стандартов и нормативных документов при создании ИС являются:

- снижение трудоемкости, длительности, стоимости и улучшение других технико-экономических показателей проектов ИС;

- повышение качества разрабатываемых или применяемых покуп­ных компонент и ИС в целом при их разработке, приобретении, эксплуатации и сопровождении;

- обеспечение расширяемости ИС по набору прикладных функций и масштабируемости в зависимости от размерности решаемых задач;

- поддержка функциональной интеграции в ИС задач, ранее решавшихся раздельно;

- обеспечение переносимости прикладных программ и данных между разными аппаратно-программными платформами.

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

- руководители проекта ПС и его основных крупных компонент;

- системные аналитики, создатели пилотных проектов компонент и алгоритмов решения функциональных задач;

- программисты - разработчики программ и структур данных;

- интеграторы функциональных программных компонент, тестиру­ющие и отлаживающие крупные функциональные компоненты и ПС в целом;

- испытатели и сертификаторы комплексов программ;

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

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

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

В России создание и испытания автоматизированных систем (АС), которые включают, в частности, ПС и БД, регламентированы:

1. ГОСТ 28195-89. Оценка качества программных средств. Общие положения.

2. ГОСТ 28806-90. Качество программных средств. Термины и определения.

3. ГОСТ 34.601-90. Информационная технология. Автоматизи­рованные системы. Стадии создания.

4. ГОСТ 34.201-89. Информационная технология. Виды, комп­лектность и обозначение документов при создании автоматизированных систем.

5. ГОСТ 34.602-89. Информационная технология. Техническое задание на создание автоматизированных систем.

6. ГОСТ 34.603-92. Информационная технология. Виды испытаний автоматизированных систем.

7. РД 50-34.698-90 - Методические указания. Информационная технология. Автоматизированные системы. Требования к содержанию документов.

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

Наибольшие достижения в регламентировании требований к объ­ектам и процессам ЖЦ ПС и их реализации сосредоточены в стандартах Министерства обороны США, которые должны обеспечивать высокое качество и безопасность функционирования критических военных систем. Стандарт МО США - M1L-STD-498 представляет собой

комплект из трех документов, общим объемом около 600 страниц, куда входят:

- собственно стандарт - Разработка и документирование прог­раммного обеспечения - MIL-STD-498 - Software Development and Do­cumentation;

- руководство - Обзор и адаптация (подготовка к применению) -Overview and Tailoring;

- руководство - Применение и рекомендации - Application and Reference.

Создание ПС рассматривается как часть полного процесса разработки специальных информационных систем военного назначения. Отмечается, что этот стандарт базируется на процессах и документах, представленных в международном стандарте ISO/IEC 12207:1995 -Процессы жизненного цикла программных средств, а также в стандарте по обеспечению качества продукции - ISO 9001 и предшествовавших во­енных стандартах. Начальные этапы проектирования и заключительные этапы испытаний и сдачи заказчику объединены в совместный анализ программных и аппаратных средств целостной информационной системы, полностью решающей требуемые потребителем функцио­нальные задачи. Стандарт унифицирует требования к проектированию, разработке, модификации и документированию ПС. Проведено разделе­ние требований к объектам и процессам жизненного цикла ПС.

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

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

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

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

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

- детализировать и задокументировать основные требования стандарта к ПС для их формализации в контракте с заказчиком;

- определить форматы и расписания выходных данных приобре­таемого или создаваемого ПС;

- провести структурный анализ вариантов ПС и базы данных на соответствие требованиям контракта;

- разработать и представить потребителям (заказчику) план разработки и развития проекта ПС;

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

Формирование проектов профилей стандартов при системном проектировании. При создании и развитии сложных, распределенных, тиражируемых ИС требуется гибкое формирование и применение гармонизированных совокупностей базовых стандартов и нормативных документов разного уровня, выделение в них требований и рекомен­даций, необходимых для реализации заданных функций ИС. Для унифи­кации и регламентирования реализации заданных функций ИС такие совокупности базовых стандартов должны адаптироваться и конкрети­зироваться применительно к определенным классам проектов, функций, процессов и компонент ИС. В связи с этим выделилось и сформиро­валось понятие профилей ИС, как основного инструмента функцио­нальной стандартизации [21, 45, 46].

Профиль - это совокупность нескольких (или подмножество одного) базовых стандартов (и других нормативных документов) с

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

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

Целесообразно рассматривать две группы профилей ИС:

- профили, регламентирующие архитектуру и структуру ИС и ее компонент (функции, интерфейсы и протоколы взаимодействия, форматы данных и т.д.);

- профили, регламентирующие процессы проектирования, разра­ботки, применения, сопровождения и развития ИС и их компонент.

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

ристики ИС определяются заказчиками и разработчиками творчески, без учета положений нормативных документов.

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

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

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

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

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

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

- идентифицировать стандарты и нормативные документы, вариан­ты их применения и параметры, которые необходимо включить в профиль;

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

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

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

- системный анализ объекта информатизации и создание концеп­ции ИС, когда производится первичный выбор исходного комплекта стандартов, которым должна соответствовать ИС; выявляется необходи­мость разработки и состав дополнительных нормативных документов;

оформляется содержание и параметры комплектов документов предпо­лагаемых профилей;

- детальное проектирование ИС, когда определяется ее архитек­тура и структура и соответственно уточняются положения, параметры и адаптируются стандарты комплекта профилей; они дополняются ведомственными нормативными документами; оформляются проекты документов и методических руководств по применению рабочей вер­сии каждого профиля;

- разработка или приобретение готовых компонент ИС, при этом утверждаются и применяются все положения профиля; производится контроль, тестирование и испытания компонент ИС на соответствие требованиям и нормативным документам конкретного профиля;

- сопровождение, актуализация и развитие ИС, когда анализи­руются положения, параметры и результаты адаптации применяемой версии каждого профиля; выявляются и устраняются ее дефекты;

производится модернизация профиля, с учетом появления более совер­шенных технических и программных средств и новых стандартов

при необходимости осуществляется формирование, документирование и внедрение новой уточненной версии соответствующего профиля.

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

- определение целей, которые предполагается достичь примене­нием данного профиля;

- точное перечисление функций объекта или процесса стандарти­зации, определяемого данным профилем;

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

- сводку требований к ИС и к ее компонентам, определяющих их соответствие профилю и требований к методам тестирования соответст­вия;

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

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

- процессов жизненного цикла ИС и ее компонент;

- объектов ИС, подготовленных и рекомендуемых для эксплуата­ции и сопровождения.

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

нению должна учитывать реальное состояние проекта ИС. При этом возможны следующие варианты:

- планируется создание новой ИС в условиях отсутствие задела по системе и компонентам данного проекта;

- имеется типовой проект ИС, и предстоит его адаптация и реализация;

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

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

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

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

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

- регламентировать структуру и состав этапов, работ и документов

жцпс;

- обеспечивать адаптацию профилей к характеристикам конкрет­ного объекта или процесса проектирования, внешней и операционной среды;

- поддерживать и регламентировать процессы организации и планирования работ по конкретному проекту ПС;

- формализовать выполнение и документирование конкретных работ при проектировании, разработке и сопровождении ПС.

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

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

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

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

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