![](/user_photo/2706_HbeT2.jpg)
- •Восточно-сибирский государственный технологический университет
- •Метрология программного обеспечения
- •220400 «Программное обеспечение вычислительной техники и автоматизированных систем»
- •Введение
- •1. Роль стандартизации в развитии разработок в области информационных технологий.
- •1.1. Нормативно-методическая база стандартизации по
- •1.2. Основные направления стандартизации процессов разработки программных средств.
- •2. Стандартизация информационных технологий: состояние и перспективы развития.
- •2.1. Современное состояние стандартизации в мире
- •2.2. Состояние и проблемы стандартизации в России
- •3. Система показателей качественных и количественных характеристик программного продукта
- •3.1. Стандартизация характеристик качества
- •3.2. Выбор показателей качества
- •3.3. Оценки качества по
- •4. Модели и метрики оценки качества по
- •4.1. Оценка сопровождаемости программ.
- •4.2. Корректность
- •4.3. Метрики сложности программ
- •4.3.1. Метрики размера программ
- •4.3.2. Метрики сложности потока управления программ.
- •3.4.3. Метрики сложности потока данных
- •4.4. Модели надежности программ
- •4.4.1. Модели надежности по по структуре времени
- •4.4.2. Методы оценки числа оставшихся в по ошибок, основанные на метриках Холстеда
- •4.4.3. Методы оценки показателей надежности по, основанные на моделях «посева» и разметки ошибок и на моделях структуры входных данных.
- •4.4.4. Методы оценки, основанные на моделях структуры входных данных
- •4.4.5. Текстовые модели надежности по
- •4.5. Метрики стилистики и понятности программ
- •4.6. Метрика изменения длины программной документации.
- •4.7. Методы проведения контроля за качеством по
- •5. Сертификация программного обеспечения
- •5.1. Понятие сертификации
- •5.2. Виды сертификации программного обеспечения
- •5.3. Органы сертификации программного обеспечения в Российской Федерации
- •Список используемой литературы
5. Сертификация программного обеспечения
5.1. Понятие сертификации
ПО применяется в областях, в которых ошибки или недостаточное качество программ могут нанести ущерб, значительно превышающий положительный эффект от их использования. Таким образом, возникает необходимость контроля за качеством программ и удостоверения их соответствия, достаточного для применения программ по назначению и для эксплуатации. Для этого должны организовываться и соответствующим образом документироваться испытания ПО.
Сертификация является испытанием программ, но в более жестких условиях тестирования, коллективом специалистов, имеющим право на официальный государственный или ведомственный контроль функций, средств и качества ПС и гарантирующим его соответствие стандартам и другим нормативным документам, а также безопасность его применения [14].
Правила по проведению сертификации в Российской Федерации, утвержденные Постановлением Госстандарта России от 16 февраля 1994 г. N3, устанавливают цели, принципы, общие правила и рекомендации по проведению сертификации в Российской Федерации.
Правила применяются при организации и проведении работ по обязательной и добровольной сертификации и распространяются на сертификацию продукции, услуг и иных объектов (иными объектами могут быть процессы, работы, системы качеств и др.) как отечественных, так и импортируемых.
Правила по проведению сертификации в Российской Федерации устанавливают:
основные цели и принципы сертификации;
участников сертификации;
правила проведения работ в области сертификации;
системы сертификации однородной продукции.
При проведении испытаний ПО, специалисты имеют право на моделирование условий их проведения, создание различных критических ситуаций, при прохождении которых ПО должно обеспечивать качество и безопасность результатов решения заданных задач. Если все испытания проходят успешно, то на соответствующую версию ПО оформляется специальный документ — сертификат соответствия. Этот документ официально подтверждает соответствие стандартам функций и характеристик, а также допустимость ПО для определенной области его применения. Он документально утверждает право на использование знаков соответствия требованиям сертификации, гарантирует безопасность применения ПО, а также юридически допускает его к эксплуатации и использованию по прямому назначению. Работы по сертификации объединяются в технологический процесс, на каждом этапе которого регистрируются документы, отражающие состояние и качество результатов разработки ПО [10].
Необходимость сертификации программ широкого класса привела к появлению ряда научных и методических задач, тесно связанных с процессами разработки программных средств (ПС) [9]:
для каждого вида ПС необходимо научиться определять его категорию критичности, требуемую достоверность измерения показателей качества и уровень категории аттестации или сертификации;
в соответствии с требованиями к достоверности показателей качества должны определяться и минимизироваться содержание и объемы испытаний версий ПС;
для обеспечения юридической ответственности за результаты испытаний должны быть разработаны эффективные методы и нормативные документы аттестации и сертификации различных видов ПС;
типовой технологический процесс измерения качества ПС и его компонент должен быть поддержан достаточно эффективными средствами его автоматизации и определения достоверности измеряемых характеристик;
исследование и обобщение опыта аттестации и сертификации ПС должны привести к минимизации затрат на такие испытания, а также улучшить технологические процессы разработки программ, гарантирующие достижение требуемых показателей качества для различных видов программ.
При оценке целесообразности сертификации необходимо учитывать возможные потери не только от кратковременного однократного неудачного применения ПО, но и возможный суммарный потенциальный ущерб от искажений и сбоев при длительной эксплуатации большого тиража версий ПО. Таким образом, в категории ПО, подлежащего сертификации, могут попадать широко тиражируемые, длительно и активно применяемые программы. Такими компонентами являются стандартизированные операционные системы, компиляторы и т. п. В этих случаях испытания могут проводить также специализированные организации, которые своим авторитетом и соответствующим документом утверждают высокое качество программ для многочисленных пользователей [9].
Для каждого этапа испытаний при сертификации должны быть подготовлены [14, 15]:
критерии и четко определенные значения показателей качества, которые должны быть достигнуты для выдачи в последующем сертификата соответствия;
значения исходных и результирующих данных, в пределах которых должны удовлетворяться заданные показатели качества;
стандарты и методики точных и воспроизводимых измерений показателей качества программ, а также исходные и результирующие данные, обязательные для проведения сертификации;
аттестованные средства автоматизации измерения показателей качества, которым должны удовлетворять сертифицируемое ПС и его компоненты;
коллектив специалистов, способных проводить испытания и измерения, необходимые для достоверного определения качества программ.
Трудно, а чаще всего невозможно создать высококачественные изделия из комплектующих компонент низкого качества. Поэтому в процессе сертификации большое значение придается испытаниям и определению качества программных компонент и модулей. Для этого используются и обобщаются данные тестирования программных модулей (ПМ), выполненных в процессе их отладки. В результате для каждого ПМ создается паспорт испытаний и достигнутого качества, отражающий полноту проведенного тестирования, содержание которого может быть следующим [9, 19, 20]:
число маршрутов исполнения программы, выявляемых по простейшему и более сложным критериям:
степень покрытия тестами маршрутов исполнения программы по разным критериям;
относительное число тестов, использованных для проверки процессов обработки входных переменных;
формально точное описание функций ПМ и диапазонов изменения исходных и результирующих данных, для которых гарантируется выполнение предписанных функций;
оценка полноты проверки функций программного модуля и соответствия его требованиям спецификаций.
Результаты испытаний программных модулей, оформленные документально, подтверждают возможность многократного использования в различных версиях ПС. Документирование результатов последующих испытаний после завершения основных стадий отладки функциональных групп программ, функций и качества их выполнения позволяет рассматривать их как самостоятельный программный продукт. Документы предшествующих этапов испытаний и документы, подтверждающие соблюдение технологий при разработке программ на всех этапах, являются основанием для выдачи сертификата соответствия на проверенные программы [9].