ГЛАВА 1. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ СРЕДСТВ ИЗМЕРЕНИЙ И ЕГО
* ОСОБЕННОСТИ. СОСТОЯНИЕ ПРОБЛЕМЫ.
1.1 Программное обеспечение средств измерений. Анализ особенностей
1.2 Исследование основных источников ошибок программного обеспечения 9 средств измерений и риски, связанные с его использованием.
1.2.1 Ошибки, связанные с погрешностью, вносимой программным обеспечени- 9 ем при обработке данных
1.2.2 Ошибки, связанные с искажением ПО и данных. Риски, связанные с ис- 15 пользование программного обеспечения.
1.3 Исследование особенностей разработки программного обеспечения метроло- 16 гического назначения
1.4 Анализ состояния вопроса в области регламентации требований и методоло- 18 гни аттестации программного обеспечения средств измерений.
1.4.1 Международные и отечественные нормативные документы
ф. 1.4.2 Национальные рекомендательные документы
1.4.3 Стандарты ИСО в области качества ПО
1.4.4 Руководства и рекомендации международных и региональных метрологи- 21 ческих организаций
Выводы по главе 1
ГЛАВА 2. РАЗРАБОТКА КЛАССИФИКАЦИИ ПРОГРАММНОГО ОБЕСПЕ
ЧЕПИЯ СРЕДСТВ ИЗМЕРЕНИЙ
2.1 Анализ существующих подходов к классификации программного обеспече- 26 ния средств измерений
2.2 Разработка классификации программного обеспечения средств измерений
2.3 Разработка рекомендаций по применению разработанной классификации 33 программного обеспечения средств измерений при назначении уровней требо-
*>■ ваний к нему
Выводы по главе 2
ГЛАВА 3. РАЗРАБОТКА ТРЕБОВАНИЙ К ПРОГРАММНОМУ ОБЕСПЕЧЕ
НИЮ СРЕДСТВ ИЗМЕРЕНИЙ
3.1 Установление критериев требований к программному обеспечению
3.2 Разработка общих требований к программного обеспечения средств измере
Выводы по главе 3
ГЛАВА 4. ИССЛЕДОВАНИЕ И РАЗРАБОТКА МЕТОДИКИ МЕТРОЛОГИЧЕ- 48 СКОЙ АТТЕСТАЦИИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ СРЕДСТВ ИЗМЕРЕНИЙ.
4.1 Метрологическая аттестация программного обеспечения. Общая методоло- 49 гия аттестации.
4.2. Исследование методов тестирования программного обеспечения средств
измерений
4.2.1 Общие методы тестирования ПО СИ (функциональное тестирование)
4.2.2 Исследование методов оценки погрешности, вносимой программным 57 обеспечением при обработке данных
4.2.3 Методы защиты программного обеспечения
4.3 Разработка методики метрологической аттестации программного обеспече- 73 ния средств измерений и порядка ее проведения
4.3.1 Разработка порядка проведения метрологической аттестации ПО СИ уд
4.3.2 Разработка методики метрологической аттестации ПО СИ уд
Выводы по главе 4
ГЛАВА 5. ПРАКТИКА МЕТРОЛОГИЧЕСКОЙ АТТЕСТАЦИИ ПРОГРАММ
НОГО ОБЕСПЕЧЕНИЯ СРЕДСТВ ИЗМЕРЕНИЙ
5.1 Эталонные данные. Источники и методы получения
5.1.1.1 Библиотека эталонных данных и алгоритмов ПФЛ
5.1.1.2 Библиотека эталонных данных НИСТ
5.2 Генерация эталонных наборов данных методом нуль-пространства
5.2.1 Разработка программной реализации алгоритмов генерации эталонных на
боров данных.
5.3 Практика проведения работ по метрологической аттестации программного 106 обеспечения средств измерений
Выводы по главе 5
ЗАКЛЮЧЕНИЕ
Список литературы
В большинстве современных средств измерений (СИ) применяется соответствующее программное обеспечение (ПО). При этом под ПО СИ понимается компьютерная программа или совокупность программ, реализующие алгоритмы сбора, передачи, * обработки, хранения и представления измерительной информации, а также программные документы, необходимые для применения этих программ. Для решения указанных задач ПО может применяться как совместно с СИ, так и автономно.
Использование ПО при измерениях или при обработке их результатов, обеспечивает функции управления и обработки данных в удобной и эффективной форме. Более того, многие СИ не могут функционировать без наличия соответствующего ПО. Это привело к тому, что объемы и масштабы использования ПО для самых разнообразных функций, а также для автоматизированной обработки измерительной информации в последнее время стремительно возрастали и продолжают возрастать. Вместе с тем, предоставляя большие возможности и преимущества, использование ПО может привести к появлению ошибок, погрешностей, связанных с самим ПО.
Как известно, СИ, с целью обеспечения единства измерений в стране проходят метрологический контроль на соответствие определенным требованиям либо в виде испытаний для утверждения их типа и поверки, если они используются в сфере действия государственного метрологического контроля и надзора, либо в виде калибровки, если они в этой сфере не используются. ПО, входящее в их состав, не аттестуется отдельно, а проходит аттестацию в составе СИ, т.е. в процессе аттестации не учитываются характеристики надежности и погрешности самого ПО. Кроме того, ПО не входящее ф в состав СИ, а используемое автономно для обработки измерительных данных, в большинстве случаев не аттестуется вообще.
Учитывая все возрастающую надежность механических, электрических и электронных компонентов средств измерений (СИ) можно сделать вывод, что качество измерений все в большей степени определяется правильной работой программного обеспечения (ПО).
Например, в случаях когда на вход СИ поступают данные, подчиняющиеся случайному процессу распределения и определяемые некоторым интегральным значением (автокорреляционная функция, спектральная плотность и другие статистические характеристики), результат измерений существенно может зависеть от времени наблюдения или частоты и стабильности интервала дискретизации и т.д. При поверке, как правило, осуществляется подача на вход постоянного сигнала и при этом невозможно оценить работу СИ при условии, что сигнал постоянным не будет. Во многих случаях технически сложно проимитировать сигнал близкий к реальному на входе или невозможно вообще, а в то время как программным образом сделать это возможно и, таким образом, провести испытания ПО СИ в реальных условиях функционирования.
В качестве другого примера можно привести открытые системы теплоснабжения. % При установке теплосчетчика в открытую систему он содержит два или более расходомера, которые оценивают количество поступающего на объект и возвращающегося от объекта тепла и не менее 2 датчиков температуры и тепловычислитель, производящий расчет потребляемого тепла. Поверка при этом осуществляется поэлементно - отдельно датчики, расходомеры и т.д. После поверки и установки системы на объекте допускается возможность корректировки некоторых констант, используемых при оценке количества теплоты, после чего нет оснований доверять показаниям прибора. Поставщики подобных СИ часто модифицируют ПО не подвергая его дополнительным исследованиям и не внося изменений в описание типа.
Таким образом, перед метрологической аттестацией ПО СИ по сути стоит задача продолжения цикла тестирования ПО с целью выявления тех специфических ошибок, которые не были проверены разработчиками. Кроме этого необходимо установить соответствие специальным требованиям, предъявляемым к ПО СИ. И в первую очередь, это, конечно же ошибки обработки данных, т.е. точность вычислений. А в соответствии
* с современными требованиями также и вопросы соответствия и защищенности ПО.
Методология метрологической аттестации ПО СИ можно описать следующими основными этапами:
- Разработка тестовых заданий
- Проведение тестирования с применением разработанных тестовых заданий
- Обработка результатов тестирования
Разработка (проектирование') тестовых заданий ('тестов')
На данном этапе разрабатывают тестовые задания. При этом каждое требование к ПО СИ определяет необходимость тестирования ПО на соответствие этому требованию и, следовательно, тестовое задание, в котором может быть как один тест, так и серия тестов, в зависимости от количества выполняемых ПО функций, которые затрагивает требование.
В тестовых заданиях определяются контролируемые свойства, функции, параметры и характеристики ПО, необходимые исходные (тестируемые, модельные) данные, другие программные продукты, последовательность и методика выполнения тестового задания, а также эталонные результаты/критерии, позволяющие производить оценку
* характеристик тестируемого ПО. Эталонный результат - это такой результат выполнения, функционирования программы, который определен как результат его работы функциональной спецификацией ПО, его документацией и непосредственно требованиями о наличии и/или определенном способе функционирования ПО.
Наборы исходных (модельных) данных должны обеспечивать проверку всех продекларированных в программной документации функций. Если имеется возможность рассчитать значения эталонных выходных данных с помощью альтернативных средств вычисления требуемой точности, то для каждого набора входных данных ставятся в соответствие рассчитанные эталонные значения выходных данных.
Таким образом, при построении перечня тестов рекомендуется действовать следующим образом:
1) установление требований, на соответствие которым будет проводиться аттестация, в том числе установление уровня жесткости для всех требований;
2) составление перечня выполняемых функций, подлежащих тестированию (в соответствии с определенными требованиями), с указанием спецификации указанных функций;
3) определение прямых тестовых заданий, с указанием перечней контроли-
* руемых параметров, исходных и эталонных данных;
4) разработка и/или моделирование наборов конкретных тестовых значений и
соответствующих им эталонных значений, поведения программы;
5) определение/разработка методики выполнения теста.
Для оптимизации набора тестов, т.е. для подготовки такого набора тестов, который позволял бы при заданном их числе (или при заданном интервале времени, отведенном на тестирование) обнаруживать большее число ошибок в ПО, необходимо использовать рациональную стратегию проектирования тестов. Возможны разные подхо-