Интегральные процессы поддержки разработки программных средств
6.1. Документирование программного средства. Осуществляется поэтапное документирование объектов в процессе разработки для производства и распространения, а также при сопровождении (см. процедуру 6.2).
6.2. Конфигурационное управление версиями программного средства. Проверяется и идентифицируется функциональная и физическая полнота очередной конфигурации, осуществляются управление конфигурацией, ревизия и отчетность о ее состоянии, обеспечивается сохранность конфигурацийПС.
6.3. Формальные отчеты о состоянии программного средства, требованиях, тестировании и испытаниях. Формализуются и документируются стадии и типы тестирования и испытаний, методики и ресурсы, системы тестов. Система отчетов поддерживает и формализует все этапы процессов разработки (процесс2),использования (процесс 3) и сопровождения (процесс 4).
6.4. Организация и поддержка проведения изменений в программном средстве. Подготавливаются категории и классы ошибок и предложения на изменения, формализуются условия их выявления, методики и отчетность по внесению изменений в программы и данные.
6.5. Процессы независимой оценки и утверждения программного средства. Планируются, организуются и проводятся проверки состояния, полноты и качества: требований к ПС, проекта, реализованных программ и описаний данных, а также всей системы в течение процесса разработки.
6.6. Обучение пользователей взаимодействию с программным средством. Система обучения и консультаций заказчика и пользователей обеспечивает освоение отчетных материалов в процессе разработки, а также документациипоэксплуатации и поддержке модификации ПС.
Приложение 1.2. Стандарты качества
По функциональному содержанию стандарты, регламентирующие качество программ, можно разделить на четыре группы.
· Стандарты формализуют номенклатуру, понятия и содержание показателей качества различных классов компьютерных программ.
ISO/IEC 9126. Оценка программного продукта. Характеристики и качество программных средств, и руководство по их использованию.
ANSI/IEEE 729–1983. Глоссарий стандартизированных терминов по технике разработки программного обеспечения. Приведены определения около 520 терминов, позволяющих унифицировать и сделать более ясной лексику, используемую специалистами, соприкасающимися с областью разработки программ.
ANSI/IEEE 1061–198х. Система показателей качества программного обеспечения. Документ содержит понятия, описания методов измерения и взаимосвязи факторов, критериев и метрик показателей качества сложных программных средств различных классов.
ANSI/IEEE 1044–198х. Стандартная классификация программных ошибок, отказов и сбоев. Представлен общий подход к классификации аномалий, выявляемых при отладке и эксплуатации в программах и документации, а также характеристики таких аномалий для их предотвращения и корректировки.
ANSI/IEEE 1045–198х. Система показателей производительности программного обеспечения. В документе раскрываются понятия и методы измерения степени соответствия производительности комплекса программ и реализующего его компьютера.
ANSI/IEEE 982–198х. Измерение надежности программного обеспечения. В стандарте определяются 39 показателей, связанных с надежностью программных средств и процессов их разработки, тестирования и сопровождения.
Отечественные стандарты
ГОСТ 28195–89. Оценка качества программных средств. Общие положения определяют иерархическую структуру, номенклатуру и содержание понятий качества ПС. На верхнем (первом) уровне выделено шесть показателей-факторов качества: надежность, корректность, удобство применения, эффективность, универсальность и сопровождаемость. Эти факторы детализируются в совокупности девятнадцатью критериями качества на втором уровне. Дальнейшая детализация показателей качества представлена метриками и оценочными элементами, которых насчитывается около 240. Каждый из них рекомендуется экспертно оценивать в пределах от 0 до 1. Состав факторов, критериев и метрик предлагается выбирать в зависимости от назначения, функций и этапов жизненного цикла ПС.
ГОСТ 28806–90. Качество программных средств. Термины и определения. В документе формализуются общие понятия программы, программного средства, программного продукта и их качества. Даются определения восемнадцати наиболее употребляемых терминов, связанных с оценкой характеристик программ. Уточнены понятия базовых показателей качества, приведенных в стандарте 28195–89.
· Стандарты, регламентирующие методы, технологию и документацию для планирования и управления обеспечением качества в жизненном цикле ПС.ANSI/IEEE 730–1984. Планы обеспечения качества программных средств. Ориентирован на разработчиков и пользователей, имеющих дело с критическими ПС, помогает подготовить и оценить планы гарантирования качества ПС, обеспечивает единообразие минимально приемлемых требований к подготовке, структуре и содержанию таких планов.
ANSI/IEEE 983–1986. Руководство по планированию обеспечения качества программных средств. В нем подробно регламентируется система действий по обеспечению качества ПС на базе составления, оценки и контроля выполнения плана гарантий качества.
ISO/IEC 687. Управление конфигурацией программного обеспечения. В документе отражены наиболее общие положения конфигурационного учета, планирования и управления версиями сложных программных комплексов.
· Стандарты, поддерживающие весь процесс создания ПС и отдельные этапы жизненного цикла программ.
ANSI/IEEE 830–1984. Руководство по составлению технических условий на программные средства. В документе содержатся сведения об объеме, структуре и характерных особенностях правильно составленных технических условий (ТУ) на ПС. Приводятся образцы ТУ и содержания его разделов.
ANSI/IEEE 829–1983. Стандарт на документацию тестирования компьютерных программ. В нем приводятся общее описание документов, отражающих планирование тестирования, спецификация тестов и отчеты о результатах тестирования программ. Детально раскрыта структура документов, описывающих объекты тестирования, проверяемые характеристики, задания на тестирование, персонал, ответственный за каждую процедуру.
ANSI/IEEE 1008–1987. Тестирование компонент (модулей) программного обеспечения. Целью стандарта является унификация методики и технологии тестирования программных компонент для обеспечения заданного и контролируемого их качества. Он регламентирует процедуры проверок, контроля и испытания компонент, входящих в сложные ПС.
ANSI/IEEE 1012–1986. Тестирование программных средств и проверка их достоверности. В стандарте оговорены единые, минимальные требования к методикам проверки достоверности характеристик и качества на каждой фазе разработки критического ПС, встроенного в систему более высокого уровня или операционную среду.
· Стандарты, регламентирующие безопасность ПС
ГОСТ Р ИСО/МЭК 15408–1–2002. Информационная технология. Методы и средства обеспечения безопасности. Критерии оценки безопасности информационных технологий. Введение и общая модель.
ГОСТ Р ИСО/МЭК 15408–2–2002. Информационная технология. Методы и средства обеспечения безопасности. Критерии оценки безопасности информационных технологий. Функциональные требования безопасности.
ГОСТ Р ИСО/МЭК 15408–3–2002. Информационная технология. Методы и средства обеспечения безопасности. Критерии оценки безопасности информационных технологий. Требования к безопасности.
ГОСТ Р МЭК 60950–2002. Безопасность оборудования информационных технологий.
Приложение 1.3. Стандарты по тестированию программ
ANSI/IEEE 1008–1986. Тестирование программных модулей и компонент ПС. Рассмотрена методика отладки отдельных модулей и небольших групп программ. Рекомендуется при тестировании выделять фазы работ с определенными целями: планирование тестирования; определение объекта и доступных ресурсов; разработка тестов; реализация процедур тестирования; контроль полноты проведенной отладки и достигнутого качества программ. Для каждой фазы описаны рекомендуемый состав исходных данных, решаемые задачи и целесообразные методы, содержание результатов и отчетных документов.
ANSI/IEEE 1012–1986. Планирование проверки и подтверждения достоверности программных средств.Представлено систематическое, поэтапное тестирование компонент разного уровня интеграции в течение всего жизненного цикла сложных, критических ПС. В технологическом процессе разработки выделены пять этапов, на которых производится тестирование: разработка требований, проектирование, разработка программ, отладка программ и их опытная эксплуатация. Система тестов разделена на четыре группы: тесты отладки компонент, комплексные тесты ПС, тесты отладки всей системы и тесты приемо‑сдаточных испытаний. Для каждой группы тестов рекомендуется методика, включающая: планирование тестирования, проектирование тестов и имитаторов, формирование тестовых вариантов, определение тестовых процедур, реализацию тестирования и оформление отчетов о результатах. Подробно описаны цели и задачи каждого вида тестов, необходимые исходные данные для тестирования и содержание отчетных документов о результатах.
ANSI/IEEE 829–1983. Документация при тестировании программ. Предлагается четкая система документирования процессов и результатов тестирования. Она охватывает планирование тестов, их спецификацию и отчеты о результатах тестирования. В плане тестирования рекомендуется описывать цели, объекты, этапы и графики тестирования, состав привлекаемых специалистов и вычислительных ресурсов, номенклатуру оформляемых документов, а также взаимодействие с планами обеспечения качества и управления конфигурацией. В спецификации тестов должны быть отражены контролируемые характеристики, процедуры тестирования и критерии оценки качества результатов. Должны быть описаны контрольные примеры и эталонные значения, а также среда исполнения процедур проверки. В отчетах о результатах тестирования рекомендуется представлять журнал процессов тестирования, отчет о выявленных аномалиях и итоговый отчет о принятых мерах для их устранения. Для всех документов предложены их структура и расшифровка содержания компонент. Приводятся примеры комплектов документов тестирования в конкретных проектах.
ГОСТ Р ИСО 10303–32–2002. Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Методология и основы аттестационного тестирования. Требования к испытательным лабораториям и клиентам.
ГОСТ Р ИСО 10303–22–2002.Системы автоматизации производства и их интеграция.Представление данных об изделии и обмен этими данными. Методы реализации. Стандартный интерфейс доступа к данным.
ГОСТ Р ИСО 10303–31–2002. Системы автоматизации производства и их интеграция.Представление данных об изделии и обмен этими данными. Методология и основы аттестационного тестирования. Общие положения.
Приложение 1.4. Государственные стандарты РФ
В РФ действует ряд стандартов в части документирования ПС, разработанных на основе прямого применения международных стандартов ИСО.
ГОСТ Р ИСО/МЭК 9294–93. Информационная технология. Руководство по управлению документированием программного обеспечения. Стандарт полностью соответствует международному стандарту ИСО/МЭК ТО 9294:1990 и устанавливает рекомендации по эффективному управлению документированием ПС для руководителей, отвечающих за их создание. Целью стандарта является оказание помощи в определении стратегии документирования ПС, выборе стандартов по документированию, выборе процедур документирования, определении необходимых ресурсов, составлении планов документирования.
ГОСТ Р ИСО/МЭК 9126–93. Информационная технология. Оценка программной продукции. Характеристики качества и руководства по их применению. Стандарт полностью соответствует международному стандарту ИСО/МЭК 9126:1991. В его контексте под характеристикой качества понимается «набор свойств (атрибутов) программной продукции, по которым ее качество описывается и оценивается». Стандарт определяет шесть комплексных характеристик, которые с минимальным дублированием описывают качество ПС (ПО, программной продукции): функциональные возможности; надежность; практичность; эффективность; сопровождаемость; мобильность. Эти характеристики образуют основу для дальнейшего уточнения и описания качества ПС.
ГОСТ Р ИСО 9127–94. Системы обработки информации. Документация пользователя и информация на упаковке для потребительских программных пакетов. Стандарт соответствует международному стандарту ИСО 9127:1989. В контексте настоящего стандарта под потребительским программным пакетом (ПП) понимается «программная продукция, спроектированная и продаваемая для выполнения определенных функций; программа и соответствующая ей документация, упакованные для продажи как единое целое». Под документацией пользователя понимается документация, которая обеспечивает конечного пользователя информацией по установке и эксплуатации ПП. Под информацией на упаковке понимают информацию, воспроизводимую на внешней упаковке ПП. Ее целью является предоставление потенциальным покупателям первичных сведений о ПП.
ГОСТ Р ИСО/МЭК 8631–94. Информационная технология. Программные конструктивы и условные обозначения для их представления. Описывает представление процедурных алгоритмов.
ГОСТ Р ИСО/МЭК ТО 15271–2002. Информационная технология. Руководство по применению ГОСТ Р ИСО/МЭК 12207 (Процессы жизненного цикла программных средств).
ГОСТ Р ИСО/МЭК ТО 16326–2002. Программная инженерия. Руководство по применению ГОСТ Р ИСО/МЭК 12207 при управлении проектом.
ГОСТ Р ИСО/МЭК ТО 12182–2002. Информационная технология. Классификация программных средств.
ГОСТ Р ИСО/МЭК 15026–2002. Информационная технология. Уровни целостности систем и программных средств.