Решетневские чтения. 2017
УДК 004.414.38
АВТОМАТИЗАЦИЯ ПОВТОРНОГО ТЕСТИРОВАНИЯ БОРТОВОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ КОСМИЧЕСКИХ АППАРАТОВ
В. А. Ларионова*, А. Б. Дьяченко, А. А. Колташев
АО «Информационные спутниковые системы» имени академика М. Ф. Решетнева» Российская Федерация, 662972, г. Железногорск Красноярского края, ул. Ленина, 52 *E-mail: [email protected]
Рассмотрено текущее состояние и направление развития средств автоматизации повторного тестирования бортового программного обеспечения космических аппаратов связи, навигации и геодезии в аспекте его долговременного сопровождения.
Ключевые слова: бортовое программное обеспечение, сопровождение программного обеспечения, повторное тестирование, автоматизация.
ONBOARD SPACECRAFT SOFTWARE RE-TESTING AUTOMATION
V. A. Larionova*, A. B. D'yachenko, A. A. Koltashev
JSC Academician M. F. Reshetnev Information Satellite Systems 52, Lenin Str., Zheleznogorsk, Krasnoyarsk region, 662972, Russian Federation
*E-mail: [email protected]
The article considers current status and development trend of onboard software re-testing automation tools of communication, navigation and geodesy spacecraft in the context of long-term software maintenance.
Keywords: onboard software, software maintenance, re-testing, automation.
Развитие современных систем космической связи и навигации требует широкомасштабного создания спутниковых группировок долговременного функционирования. В свою очередь долговременность функционирования спутников на требуемом уровне качества, оперативность их создания, восстановления и восполнения во многом обеспечивается качеством бортового программного обеспечения КА (БПО), технологией его создания и сопровождения, возможностями инструментальных средств разработки и сопровождения [1].
Процесс сопровождения необходим вследствие подверженности программных продуктов изменениям на протяжении их жизненного цикла [2].
Одним из составляющих эффективной технологии разработки компонент БПО является повторное тестирование [3], которое выполняется в рамках сопровождения БПО [4].
При проведении любого тестирования участвуют три составляющих - объект тестирования, средства тестирования и тесты. Повторное тестирование - это тестирование, проводимое после изменения любой из этих составляющих. Основной целью проведения повторного тестирования является обнаружение регрессии, т. е. выявление отклонений от требуемого поведения в месте, не связанном с изменениями.
В случае АО «ИСС» составляющими повторного тестирования будут являться БПО, средства системного тестирования на основе программной модели КА -наземный отладочный комплекс (НОК) и циклограммы тестов. Полное повторное тестирование БПО прово-
дится путем последовательного ручного запуска всех циклограмм тестов и анализа их результатов специалистом. БПО КА связи, навигации и геодезии образуется совокупностью ПО систем КА, поэтому проведение анализа требует привлечения специалистов всех систем и занимает достаточно много времени (~2-3 недели).
Учитывая длительность полного повторного тестирования, в настоящее время при проведении изменений в БПО проводится тестирование только измененной части, а полное повторное тестирование БПО проводится только в ключевых точках - завершение этапов, подготовка к выдаче прошивки и т. д.
Следствием такого подхода является более позднее обнаружение регрессий, что в большинстве случаев существенно увеличивает время, необходимое на разбор выявленной ситуации. Многократно проводимые исследования показали, что чем раньше обнаруживаются те или иные несоответствия или ошибки, тем больше вероятность их правильного исправления и ниже его стоимость [5].
Дополнительная автоматизация повторного тестирования БПО позволит проводить полное повторное тестирование после каждого изменения, и, следовательно, раньше обнаруживать регрессии, что позволит упростить поиск причины регрессии и ее устранение.
При создании системы автоматизированного повторного тестирования БПО, которая будет предназначена для проведения тестирования, сбора и анализа результатов, их хранения и представления к ним доступа, необходимо реализовать следующие уровни автоматизации:
Программные средства и информационные технологии
0. Без автоматизации - выдача управляющих воздействий, оценка реакции и заключение о результате, как отдельного теста, так и всего тестирования производится специалистом, т. е. тестирование проходит полностью в ручном режиме.
1. Автоматизация выдачи управляющих воздействий - выдача управляющих воздействий производится системой согласно заранее заданной последовательности (циклограмме), а оценка реакции и заключение о результате, как отдельного теста, так и всего тестирования производится оператором.
2. Автоматизация выдачи управляющих воздействий и оценки реакции - выдача управляющих воздействий и оценка реакции производится системой согласно заранее заданной последовательности (циклограмме), а заключение о результате, как отдельного теста, так и всего тестирования производится оператором.
3. Полная автоматизация - выдача управляющих воздействий, оценка реакции и заключение о результате производится системой.
В настоящее время в АО «ИСС» при тестировании БПО с использованием существующих средств автоматизации достигается 2 уровень автоматизации. Система автоматизированного повторного тестирования БПО должна позволить достичь 3 уровня автоматизации. Для достижения этого уровня в системе должны быть реализованы следующие требования:
1. Язык описания тестовых последовательностей должен содержать следующие возможности:
- выдача управляющих воздействий;
- оценка реакции на выданные управляющие воздействия;
- выдача заключения о результате теста.
2. Поддержка иерархии тестов, со следующими уровнями:
- тест - отдельная последовательность действий (циклограмма);
- пакет тестов - состоит из одного и более тестов, предназначенных для выполнения в определенном режиме НОК - особенность НОКа и этапов разработки БПО в АО «ИСС»;
- тест ПО системы - состоит из одного и более пакетов тестов - особенность разработки БПО в АО «ИСС», как набора ПО систем;
- тест БПО - состоит из всех тестов - для управления версиями тестов.
3. Запуск тестов - как в рамках одного сеанса НОК, так и в нескольких сеансах НОК, в том числе в разных режимах НОК.
4. Сбор результатов выполнения тестов и оформление отчета.
Внедрение такой системы дополнительно потребует:
1. Создание архива тестов, который будет хранить все версии тестов.
2. Создание архива результатов тестирования, который будет хранить все версии результатов тестов.
3. Доработка тестов - анализ реакции на выданные управляющие воздействия, выдача результатов тестов в систему автоматизированного проведения повторного тестирования БПО.
4. Доработка организационных процедур - запуск повторного тестирования БПО после изменения версии любой из составляющих - версии БПО, версии НОК или версии теста БПО.
Внедрение системы автоматизированного повторного тестирования БПО позволит ускорить выявление регрессионных ошибок и редко проявляющихся ошибок (за счет большого количества прогонов тестов) и сократить стоимость работ по разработке и сопровождению БПО.
Библиографические ссылки
1. Антамошкин А. Н., Колташев А. А. Технологические аспекты создания бортового программного обеспечения спутников связи // Вестник СибГАУ. 2006, № 3. С. 93-95.
2. Колташев А. А. Эффективная технология управления циклом жизни бортового программного обеспечения спутников связи и навигации // Авиакосмическое приборостроение. 2006, № 12. С. 20-25.
3. ГОСТ Р ИСО/МЭК 14764-2002. Информационная технология. Сопровождение программных средств. М. : Изд-во стандартов, 2002. 28 с.
4. Обеспечение бортовое программное. Управление проектированием, изготовлением и сопровождением : СТП 154-123-2014. Железногорск : АО «ИСС», 2014. 72 с.
5. Иванова Г. С. Технология программирования. М. : КноРус, 2011. 336 с.
References
1. Antamoshkin A. N., Koltashev A. A. [Onboard software creation technology features of communication satellites]. Vestnik SibSAU. 2006, no. 3. P. 93-95. (In Russ.)
2. Koltashev A. A. [The effective control technology of the on-board software life cycle of the communication and navigation satellites]. Aviakosmicheskoe priboro-stroenie. 2006, No. 12. P. 20-25. (In Russ.)
3. GOST R ISO/MJeK 14764-2002. Informacionnaya tehnologiya. Soprovozhdenie programmnyh sredstv [Information technology. Software maintenance]. M. : Standart Publ., 2002. 28 p.
4. Obespechenie bortovoe programmnoe. Upravlenie proektirovaniem, izgotovleniem i soprovozhdeniem [Onboard software. Design, production and maintenance management], in STP 154-123-2014, Zheleznogorsk : JSC "ISS", 2014. 72 p.
5. Ivanova G. S. Tehnologiya programmirovaniya [Programming technology]. M. : KnoRus, 2011. 336 p.
© Ларионова В. А., Дьяченко А. Б., Колташев А. А., 2017