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

кандидата технических наук
Барков, Алексей Владимирович
город
Красноярск
год
2006
специальность ВАК РФ
05.13.06
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Методы построения программного обеспечения автоматизации испытаний космических аппаратов связи и навигации»

Автореферат диссертации по теме "Методы построения программного обеспечения автоматизации испытаний космических аппаратов связи и навигации"

На правах рукописи

Барков Алексей Владимирович

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

Специальность 05.13.06 — Автоматизация и управление технологическими процессами и производствами (промышленность)

Автореферат диссертации на соискание ученой степени кандидата технических наук

Красноярск - 2006

Работа выполнена в Сибирском государственном аэрокосмическом университете имени академика М.Ф. Рещетнева

Научный руководитель: доктор технических наук, доцент

Хартов Виктор Владимирович

Официальные оппоненты:

доктор технических наук, профессор У саков Владимир Иосифович

кандидат технических наук, доцент Казанцев Александр Викторович

Ведущая организация: ФГУП НПЦ Полюс, г. Томск

Защита состоится " 21." декабря 2006 г. в/¡'00 часов на заседании диссертационного совета Д 212.249.02 при Сибирском государственном аэрокосмическом университете по адресу: 660014, г. Красноярск, пр. им. газ. Красноярский рабочий, 31.

С диссертацией можно ознакомиться в библиотеке Сибирского государственного аэрокосмического университета.

Автореферат разослан "20 " ЦРД^рр 2006 г.

Ученый секретарь диссертационного совета

Е.С. Семенкин

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

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

В настоящее время системы автоматизированной подготовки и управления комплексными электрическими испытаниями широко применяются на практике. Ключевым компонентом таких систем является

специализированный программный комплекс, который в первом приближении состоит из: прикладного языка описания испытаний, редактора и интерпретатора этого языка. На НПО ПМ для комплексных испытаний применяется подобный программный комплекс ПРИС и язык испытаний Диполь-5К.

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

Таким образом, актуальной является задача исследования и разработки новых методов построения программного обеспечения (ПО) автоматизации испытаний спутников связи и навигации. Решение этой задачи позволит получить унифицированное, универсальное и расширяемое программное обеспечение, что повысит качество и эффективность данного этапа производства.

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

Задачи исследования состоят в следующем:

1. Провести анализ и формализовать процесс испытаний космических аппаратов связи и навигации.

2. Разработать метод построения универсального и модифицируемого программного обеспечения автоматизации испытаний.

3. Разработать метод построения унифицированного редактора циклограмм с эффективным представлением содержимого циклограмм.

4. Разработать метод построения интерпретатора циклограмм поддерживающего как параллельное, так и последовательное выполнение.

5. Разработать структуру и множество базовых понятий проблемно-ориентированного языка комплексных электрических испытаний.

6. Для подтверждения реализуемости программного обеспечения автоматизации испытаний построенного на основе разработанных методов, провести моделирование системы.

Методы исследования. В работе использован объектно-

ориентированный анализ, методы построения и анализа алгоритмов,

методы построения компиляторов и интерпретаторов, теории языков

программирования, методы моделирования в ЦМЬ.

Основные результаты:

1. Исследован и формализован процесс испыташ1Ё космических аппаратов. Показано, что процесс функционирования характеризуется совокупностью параметров и управляющих воздействий.

2. Для построения ПО автоматизации испытаний разработан метод разделения функциональностей действий испытаний.

3. Для системы подготовки и проведения испытаний космических аппаратов разработан метод построения структурного редактора циклограмм. Разработан метод представления содержимого циклограмм в древовидном виде.

4. Разработан метод построения интерпретатора циклограмм поддерживающего как параллельное, так и последовательное выполнение.

5. На основе применяемого в настоящее время языка испытаний (Диполь-5К), для новой автоматизированной системы испытаний разработан расширяемый и модифицируемый проблемно-ориентированный язык испытаний космических аппаратов связи и навигации - Диполь-б.

6. Для подтверждения реализуемости системы построенной на основе разработанных методов проведено ЦМЬ моделирование основных аспектов реализации ПО автоматизации испытаний.

Научная новизна. В работе получены следующие научные результаты, которые выносятся на защиту:

1. Разработан метод разделения функциональностей действий испытаний предназначенный для построения универсального и модифицируемого программного обеспечения автоматизации испытаний.

2. Разработан метод построения редактора циклограмм с новым методом представления листинга циклограмм в древовидном виде.

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

4. Разработана структура и базовые множества понятий проблемно-ориентированного языка испытаний космических аппаратов связи и навигации.

Значение для теории данной работы заключается в развитии методов построения программного обеспечения автоматизации испытаний КА связи и навигации.

Значение для практики и реализация результатов работы. Разработанные методы внедрены в Федеральном государственном унитарном предприятии «Научно-производственное объединение прикладной механики имени академика М.Ф.Рещетнева» (НПО ПМ). Разработанные методы использованы в ходе создания для автоматизированной системы управления и информационно-телеметрического обеспечения (АСУИТО) «Раскат», системы подготовки и проведения испытаний состоящей из прикладного языка Диполь-6, редактора и интерпретатора циклограмм. Комплекс «(Раскат» предназначен

для проведения испытаний всех перспективных космических аппаратов разработки НПО ПМ. В частности для испытаний КА: «ГЛОНАСОМ», «ГЛОНАСС-К», «Луч-5А», «Экспресс-АТ» и др.

Кроме того, полученные в работе результаты используются в автоматизированной системе испытаний на ряде отдельных аппаратно-программных комплексов. В частности для испытаний КА «Гоцец-М» и ДР.

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

Апробация диссертации. Основные положепия диссертационной работы докладывались на VI Всероссийской научно-технической конференции молодых ученых и студентов «Современные проблемы радиоэлектроники» (Красноярск 2004), на тестой международной научно-технической конференции «Авиакосмические технологии» «АКТ-2005» (Воронеж 2005), на 4-й международной конференции «Авиация и космонавтика 2005» (Москва 2005), на IX международной научной конференции «Решетневские чтения», посвященной памяти генерального конструктора ракетно-космических систем академика М,Ф. Решетнева (Красноярск 2005), на второй всероссийской научно-практической

конференции творческой молодежи «Актуальные проблемы авиации и космонавтики» (Красноярск 2006), на XVII научно-технической конференции «Электронные и электромеханические системы и устройства» (Томск 2006).

Публикации. По теме диссертации опубликовано 10 работ, в том числе 3 свидетельства о регистрации программ для ЭВМ, одна статья и 6 работ в материалах всероссийских и международных научно-практических конференций.

Структура диссертации. Диссертация изложена на 145 страницах и состоит из введения, четырех глав, заключения и четырех приложений. Список литературы содержит 106 наименований. Рабата иллюстрирована 26 рисунками и содержит 18 таблиц.

СОДЕРЖАНИЕ РАБОТЫ

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

В первой главе проведено описание проблемной области. Показаны характерные особенности и свойства систем испытаний космических аппаратов,

В настоящее время, для проведения испытаний используется автоматизированный испытательный комплекс (АПК). Испытания проводятся путем выдачи управляющих воздействий на изделие и контроля состояния параметров космического аппарата. Структурно АПК представляет собой два уровня (рис.1). Верхний уровень АПК представляет собой ту часть программного комплекса, которая аппаратно и

8

программно независима от средств сопряжения с объектом контроля. Нижний уровень АИК представляет собой драйверы устройств согласования и ту часть программного обеспечения, которая должна находиться на одном ПК с драйверами.

Верхний Уровень АМК

Автоматизирования система управления

Нижний Уровень АИК

Г ч ( \ (— ^ С

модуль УХ* модуль МКО КПАКИС КПД

V. > 1 )

ОК

БЦВК

кис

ОК

О&ъвкт Контроля

Редактор цнхлограццг

Ж.

Исходные ДАЙН№0

Импрлретатор циклограмм ПОВУ

Г,ажурный ■оотропь

шг

ж

ССъегг «ОКТРЮЛР!

Рисунок 1. Пример структуры автоматизированного испытательного комплекса.

Рисунок 2. Упрощенная компонентная структура ПО автоматизации испытаний.

В состав аппаратно-программного испытательного комплекса входит специальное программное обеспечение, выполняющее функции автоматизации работы (рнс.2). В настоящее время в качестве основного программного комплекса автоматизированных испытаний в НПО ПМ используется комплекс ПРИС. Для описания испытаний применяется проблемно ориентированный язык Диполь-5К. Анализ эксплуатации комплекса ПРИС характеризуется рядом актуальных проблем, .

Кроме того, к автоматизации испытаний предъявляются новые требования:

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

Во-вторых, повышение эффективности анализа параметров функционирования ОК и упрощение выдачи управляющих воздействий, за счет усовершенствованной автоматизации этих функций.

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

В-четвертых, упрощение задачи сопровождения

автоматизированной системы испытаний, упрощение процессов подготовки и проведения испытаний.

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

Во второй главе проведено исследование и формализация процесса испытаний космических аппаратов. Разработаны методы проектирования ПО автоматизации испытаний.

1. Процесс функционирования характеризуется совокупностью параметров функционирования и управляющих воздействий. Задачей проведения испытаний является контроль условия нормального функционирования объекта контроля:

3. где -ГЧО.А^О- вектор текущего состояния ОК и скорость его изменения,

вектор управляющих

воздействий ОК и скорость его изменения, , <1 - множества

допустимых элементов соответствующих кортежей.

4. Необходимым условием проведения испытаний является нормальное функционирование системы проведения испытаний:

5- (Г(0,Г(0)€^ J.

О. где

JT'CO.Jf'CO- вектор текущего состояния системы и скорость его изменения, ^(O.^ÍO- вектор управляющих

воздействий системы и скорость его изменения, ^d , ^d - множества допустимых элементов соответствующих кортежей.

7, Разобьем процесс функционирования испытаний на отдельные кванты выполнения. Назовем эти отделъпые кванты — действиями испытаний, которые представляют собой элементарные, логически законченные, действия с точки зрения процесса функционирования:

s х

9. где * - i-e действие испытаний; 1 • - возможная

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

? t* * - временная задержка перед выполнением шага; '

реальное время выполнение шага, с подготовкой контекста выполнения

следующего шага.

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

системе действия испытания реализуются с помощью операций прикладного языка испытаний.

11.В этом контексте под функциональностью будем понимать пекую абстракцию предназначенную для выполнения конкретной задачи над действием испытания. Например, задача интерпретации конкретного действия испытания. Таким образом, в общем случае

„/л

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

приложений системы]\

12. - 1

/п

13.где - действие испытания функциональное, Рп^-функциональность конкретной задачи, (У =1,2...«) п- количество задач.

14, В общем случае, каждую операцию прикладного языка реализующую действие испытания можно представить как совокупность нескольких функцнональностей: оригинальной, функциональности редактирования и функциональности интерпретации. То есть,

16.где & - операция языка испытаний; Рпсг - оригинальная

функциональность; Рп^- функциональность редактирования; -функциональность интерпретации.

17. Оригинальная функциональность Рп^ описывает целевую задачу конкретной операции языка. Данная функциональность является базисом для построения реализации операции. Фупкцион альность

12

редактирования выполняет задачу редактирования (начальное

задание и изменение набора данных целевой функциональности) этой операции. Функциональность интерпретации Рп<„ выполняет задачу интерпретации целевой функциональности, этой операции.

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

19.м, )М2 ).Л/„,

20. где М„ - этап обработки операции языка.

21.С учетом метода разделения функциональностей разработан метод построения редактора циклограмм. Метод заключается в разделении отображения и редактирования циклограмм. Каждая операция языка редактируется с помощью специального пользовательского графического окна редактирования. В этом случае процесс написания циклограммы состоит из управления графическими элементами. Редактируя информацию в графических окнах, пользователь выполняет настройку каждой отдельной операции. Таким образом, область возможных синтаксических и семантических ошибок совершаемых пользователем минимизирована. Следовательно, отпадает необходимость в отдельном этапе синтаксического анализа и соответственно в синтаксическом анализаторе. Скорость работы в структурном редакторе для типичных действий пользователя постоянна. Скорость работы в текстовом редакторе зависит от длинны идентификатора редактируемого атрибута (рис. 3).

Рисунок 3. График зависимости скорости набора от количества символов в редактируемых идентификаторах в разных редакторах.

23. Для того чтобы повысить читабельность циклограмм, а также оптимально использовать пространство доступное для отображения листинга, разработал метод отображения циклограмм в виде древовидной структуры (рис.З). В этом случае каждая операция является отдельным узлом дерева. Конструкции языка при этом, естественным образом содержат вложенные операции.

Рисунок 4, Древовидное представление содержимого циклограммы.

25.Разработан метод построения интерпретатора циклограмм предназначенного для исполнения циклограмм испытаний.

26. Выполнение циклограмм происходит пооперациогшо:

27. ■•• ^ si ^ sM ^ ^>+2 ^ "-^J ,

28.где . i-e действие (операция) циклограммы, / — кол-во операций.

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

30.Рассмотрим уровень заявок. Заявкой является циклограмма времени выполнения. Под последовательным приоритетным выполнением заявок будем понимать работу, при которой сначала выполняется та заявка SC у которой наивысший приоритет рг, затем с таким же или с меньшим приоритетом:

32.где: prl >рг2>ргЗ> ... prl.

33.На уровне процессов управления под параллельным выполнением циклограмм будем понимать псевдопараллельную работу, при которой поочередно выполняются операции языка из заявок запущенных в параллельно работающих процессах управления:

34. ТС1 => ТС2 => ...ТСп j

35.где ТС,- i- процесс управления интерпретатора.

36.Таким образом, процесс управления инкапсулирует приоритетное выполнение загруженных в неё заявок. Интерпретатор поддерживает список подобных параллельных процессов управления.

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

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

Формирование языка испытаний основано на анализе проблемной области и принципах структурного программирования.

Можно выделить следующие функциональные возможности языка:

• анализ штатной и технологической телеметрической информации;

• выдача штатных и технологических команд и закладка массивов;

• чтение дампов памяти из бортовой цифровой вычислительной машины;

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

• выдача сообщений и директив испытателю.

• управление интерпретатором языка испытаний

Структура языка включает в себя: иерархию конструкций языка (рис.5), понятия языка, иерархическую структуру программных единиц, области действия переменных, механизм подпрограмм,, структуры управления и правила передачи параметров в циклограмму.

Рисунок 5.

Рисунок б.

В качестве понятий, используемых для сложных семантических конструкций языка выделим:

• операция языка испытаний

• телеметрический параметр объекта контроля

• команда управления объектом контроля

• переменные

• допуск (на параметр)

• реакция (па параметр)

• алгоритм дежурного контроля

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

В языке четко выделены несколько областей действия:- глобальная, процессная и локальная, показанные на рис. 7.

Для поддержания иерархической структуры разработан механизм подпрограмм. Этот механизм является многоуровневым. Он отличается в организации взаимодействия на следующих уровнях: между процессами управления, между процессом управления и заявками, и между заявками и нх дочерними циклограммами.

^Направпек^пропяианпгрдосуа I

Рисунок 7, Области действия переменных.

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

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

В = В°иВ5^>Вк^ВА , где В° - базовое множество операций языка, В^ - базовое множество

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

В четвертой главе проведено моделирование основных аспектов реализации программного обеспечения разработанного на основе предложенных методов. Обосновано использование ЦМЬ моделирования.

Разработаны диаграммы, которые моделируют ключевые аспекты реализации метода разделения функционапьностей действий испытаний. Диаграмма классов метода разделения функциопальностей показывает (см. рис.8), что сущности Действие испытания и Этап обработки являются абстрактными, они служат основой для построения системы использующей метод разделения функциопальностей действий. Показано что, Конкретное действие является конкретизацией Действия испытания, а Конкретный этап соответственно является конкретизацией Этапа обработки.

Рисунок 8. Диаграмма классов метола разделения функциопальностей.

Таким образом, Действие для этапа является конкретизацией базовой для него функциональности, применительно к данному Конкретному действию.

Разработка модели редактора циклограмм включает моделирование структурного аспекта взаимодействия его компонентов. Разработанная диаграмма классов редактора циклограмм, представляет его основные сущности и взаимодействие между ними. Объекты Действие Ред и Диспетчер Действий Ред. па рис. 9 инкапсулируют механизм поддержки действий редактирования, предназначенный для возможности отмены произведенных действий редактирования а их протоколирования. Фрейм представляет собой базовую абстракцию пользовательского графического интерфейса в части отображения и управления содержимым циклограммы. Фрейм Ред является конкретизацией Фрейма конкретно для этапа редактирования с реализацией необходимых методов.

Базовый параметр Цнхпотрашлл

-обидо данные общие де»*ы»

♦общие методы^ *общив метсюыО

Диспетчер Параметров

Действие Рва

+мещяы()

---Э

Диспетчер Действий Ред

■степЦМв

*(*иНО

Отображение

■атрибуты

•Рисовагсъо

Циклограмда Ред

*ГЧ«ытьО 'Добмтьр

Редактирований

------)-атрибуты

^редактирование^)

База Данных

*ПСЛ)№ТЬ0 ■»погикятьО

Фрейм Фрейм Ред

3-

*методы(> 4рапатфОв&иив0

Рисунок 9. Диаграмма классов РЦГ.

Для рассмотрения структурного аспекта построения интерпретатора циклограмм разработана диаграмма классов, на которой показаны основные сущности интерпретатора и взаимодействие между ними, с точки зрения организации потоков управления, заявок и циклограмм.

Диспетчер ПУ

1 Заявке

«мчы*

■приоритет

♦методыО

Процесс управления

Диспетчер Заявок

Рисунок 10. Диаграмма классов интерпретатора циклограмм.

Как видно Циклограмма Инт является конкретизацией циклограммы для этапа интерпретации (является наследником от Интерпретации). Диспетчер ПУ организует параллельную работу Процессов управления и взаимодействует с Окружением интерпретатора. Каждый Процесс управления включает в себя (агрегирует) Диспетчер Заявок, который организует работу Заявок в соответствии с системой приоритетов. В свою очередь каждая Заявка содержит Стек ИТ. предпазпаченный для реализации механизма вызова дочерних циклограмм.

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

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

1. Исследован и формализован процесс испытаний космических аппаратов. Показано, что процесс функционировали характеризуется совокупностью параметров и управляющих воздействий. Ход выполнения испытаний может быть разбит на элементарные кванты выполнения — действия испытаний.

2. Разработан метод построения программного обеспечения автоматизации испытаний основанный на разделения функциопальпостей

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

3. Разработан метод построения структурного редактора циклограмм. Преимущества использования структурного редактора состоят в следующем: отсутствие этапа трансляции (соответственно нет необходимости разработки сложного синтаксического и семантического анализаторов); «мгновенная» готовность к интерпретации. Проведен сравнительный анализ спрогнозированной скорости работы, показывающий эффективность структурного редактора. Разработан метод представления листинга циклограмм в древовидном виде. Метод позволяет получить - полностью настраиваемое, управляемое пользователем, отображение листинга циклограмм.

4. Разработал метод построения интерпретатора циклограмм, реализующего псевдопараллельное выполнение циклограмм, а также поддерживающего последовательное приоритетное выполнение циклограмм испытаний. Кроме того, интерпретатор протоколирует выполнение операций. Возможно выполнение циклограммы с любой указанной операции с предварительной автоматизированной подготовкой коптекста выполнения.

5. На основе применяемого в настоящее время языка испытаний Диполь-5К, разработан универсальный проблемно-ориентированный язык испытаний космических аппаратов Диполь-б. Разработаны требования к прикладному языку испытаний космических аппаратов, которые позволяют создать язык с глубоким интегрированием в проблемную

область, и средствами структурного программирования, разработаны компоненты структуры языка: иерархия конструкций, окружение языка, типы данных, области действия, понятия, программные единицы, правила передачи параметров в циклограммы. Разработаны множества базовых понятий положенные в основу универсального языка. Основываясь на этом базисе возможно построение специализированных языков испытаний для различных аппаратно-программных комплексов, за счет расширения базового множества понятий языка.

6. Проведено ЦМЬ моделирование реализации ПО автоматизации испытаний на основе разработанных методов. Разработаны диаграммы для анализа структурной составляющей реализации метода разделения функциональносгей, которые формализуют структуру реализации, основные сущности и характер взаимодействия между ними. Разработаны модели базовых типовых действий языка испытаний, которые позволяют достаточно просто классифицировать, разрабатывать и сопровождать конкретные действия языка испытаний. Разработана модель редактора циклограмм состоящая из набора диаграмм наглядно характеризующих как структурный аспект реализации редактора циклограмм, так И динамический аспект его построения. Также разработана модель интерпретатора циклограмм.

По материалам диссертации опубликованы работы

1. Барков, А. В. Динсшь СЭП / А. В. Барков // Свидетельство об официальной регистрации программы для ЭВМ №2005612245 / Федеральная служба по интеллектуальной собственности, патентам н товарным знакам.- 01.09,2005

2. Барков, А. В. Интерпретатор циклограмм / А. В. Барков И Свидетельство об официальной регистрации программы для ЭВМ №2005612244 / Федеральная служба по интеллектуальной собственности, патентам и товарным энахам.- 01.09.2005

3. Барков, А. В. Метод построения системы «редактор-интерпретатор» прикладного языка / А. В. Барков // Решетневские чтения: Материалы IX международной науч.

конф. посвящ. 45 летию Сиб. гос. аэрокосм, ун-та имени акад. М.Ф. Решетнева / Сиб. гос. аэроксомич. ун-т -Красноярск, 2005. -с.314.

4. Барков, А. В. Методы построения программного обеспечения средств испытаний космических аппаратов / А. В. Барков // Авиакосмические технологии «АКТ-2005»: Труды шестой международной научно-технической конференции. 4.2, / Воронеж: Воронеж, гос. техн. ун-т., 2005. с.263-265.

5. Барков, А. В. Принципы построения прикладного языка испытаний космических аппаратов / А. В. Барков, В. В. Хартов И XVII научно-техническая конференция «Электронные и электромеханические системы и устройства» / ФГУП «Полюс» -Томск, 2006.

6. Барков, А. В. Разработка проблемно-ориентированного языка испытаний космических аппаратов / А. В. Барков, В. В. Хартов // Актуальные проблемы авиации и космонавтики: Труды второй всероссийской научно-практической конференции творческой молодежи / Сиб. гос. аэроксомич. ун-т — Красноярск, 2006.

7. Барков, А. В. Система подготовки и проведения испытаний космических аппаратов / А. В. Барков // 4-я международная конференция «Авиация и космонавтика -2005» / МАИ. — М.: Изд-во МАИ, 2005. - с.96.

8. Барков, А. В. Структура проблемно-ориентированного языка испытаний космических аппаратов [Текст] / А. В. Барков // Вестник Сибирского государственного аэрокосмического университета имени академика М,Ф. Решетнева / Под ред. проф. Г.П. Белякова, СибГАУ. — Спец. выпуск - Красноярск, 2006.-150 с.

9. Барков, А. В. Структурный редактор прикладного языка / А. В. Барков // Решетневские чтения: Материалы IX международной науч. конф. посвящ. 45 летию Сиб. гос. аэрокосм, ун-та имени акад. М.Ф. Решетнева / Сиб. гос. аэроксомич. ун-т —Красноярск, 2005.-c.291.

10. Барков, А. В. Циклон / А. В. Барков // Свидетельство об официальной регистрации программы для ЭВМ №2005612246 / Федеральная служба по интеллектуальной собственности, патентам и товарным знакам,- 01.09.2005

Тираж 100 экз. Заказ Да^УУ

Опечатано в типографии СибГАУ

660014, Красноярск, пр. им. газ. Красноярский рабочий, 31

Оглавление автор диссертации — кандидата технических наук Барков, Алексей Владимирович

ВВЕДЕНИЕ.

ГЛАВА 1 АНАЛИЗ СОВРЕМЕННОГО СОСТОЯНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ АВТОМАТИЗАЦИИ ИСПЫТАНИЙ КА СВЯЗИ И НАВИГАЦИИ.

1.1 Особенности автоматизации испытании КА связи и навигации.

1.2 Актуальность задачи исследования.

1.3 Постановка задачи исследования.

1.4 Выводы по главе.

ГЛАВА 2 ИССЛЕДОВАНИЕ И ФОРМАЛИЗАЦИЯ ПРОЦЕССА

• ИСПЫТАНИЙ, РАЗРАБОТКА МЕТОДОВ ПОСТРОЕНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ АВТОМАТИЗАЦИИ ИСПЫТАНИЙ КА СВЯЗИ И НАВИГАЦИИ.

2.1 Исследование и формализация процесса испытаний.

2.1.1 Параметры функционирования.

2.1.2 Управляющие воздействия.

2.1.3 Процесс функционирования.

2.2 Разработка методов построения ПО автоматизации испытаний КА связи и навигации.

2.2.1 Разработка метода построения программного обеспечения автоматизации испытаний.

2.2.2 Разработка метода построения структурного редактора.

2.2.3 Разработка метода построения интерпретатора циклограмм.

2.3 Выводы по главе. ц

ГЛАВА 3 РАЗРАБОТКА ПРОБЛЕМНО-ОРИЕНТИРОВАННОГО

ЯЗЫКА ИСПЫТАНИЙ.

3.1 Определение требований и разработка структуры языка.

3.1.1 Определение требований.

3.1.2 Синтаксис.

3.1.3 Структура языка.

3.1.4 Области действия и программные единицы.

3.1.5 Механизм подпрограмм.

3.1.6 Правила передачи параметров в циклограмму.

3.1.7 Структурные конструкции.

3.2 Разработка множеств базовых понятий языка.

3.2.1 Базовое множество операций языка.

3.2.2 Базовые множества реакций и алгоритмов дежурного контроля.

3.2.3 Базовое множество переменных.

3.3 Выводы по главе.

ГЛАВА 4 МОДЕЛИРОВАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ АВТОМАТИЗАЦИИ ИСПЫТАНИЙ.

4.1 Обоснование выбора моделирующего средства.

4.2 Моделирование программного обеспечения автоматизации испытаний.

4.2.1 Разработка модели метода разделения функционалыюстей.

4.2.2 Разработка модели функциональности редактирования.

4.2.3 Разработка модели функциональности интерпретации.

4.2.4 Разработка модели языка испытаний.

4.2.5 Разработка модели структурного редактора циклограмм.

4.2.6 Разработка модели интерпретатора циклограмм.

4.3 Выводы по главе.

Введение 2006 год, диссертация по информатике, вычислительной технике и управлению, Барков, Алексей Владимирович

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

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

В настоящее время системы автоматизированной подготовки и управления комплексными электрическими испытаниями широко применяются на практике. Ключевым компонентом таких систем является специализированный программный комплекс, который в первом приближении состоит из: прикладного языка описания испытаний, редактора и интерпретатора этого языка. На НПО ПМ для комплексных испытаний применяется подобный программный комплекс ПРИС и язык испытаний Диполь-5К.

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

Методы построения программного обеспечения (ПО) предназначенного для автоматизации испытаний К А связи и навигации должны обеспечивать:

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

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

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

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

Таким образом, актуальной является задача исследования и разработки новых методов построения программного обеспечения автоматизации испытаний спутников связи и навигации. Решение этой задачи позволит получить унифицированное, универсальное и расширяемое программное обеспечение, что повысит качество и эффективность данного этапа производства.

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

Задачи исследования состоят в следующем:

1. Провести анализ и формализовать процесс испытаний космических аппаратов связи и навигации.

2. Разработать метод построения универсального и модифицируемого программного обеспечения автоматизации испытаний.

3. Разработать метод построения унифицированного редактора циклограмм с эффективным представлением содержимого циклограмм.

4. Разработать метод построения интерпретатора циклограмм поддерживающего как параллельное, так и последовательное выполнение.

5. Разработать структуру и множество базовых понятий проблемно-ориентированного языка комплексных электрических испытаний.

6. Для подтверждения реализуемости программного обеспечения автоматизации испытаний построенного на основе разработанных методов, провести моделирование системы.

Методы исследования. В работе использован объектно-ориентированный анализ, методы построения и анализа алгоритмов, методы построения компиляторов и интерпретаторов, теории языков программирования, методы моделирования в UML.

Основные результаты:

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

2. Для построения ПО автоматизации испытаний разработан метод разделения функциональностей действий испытаний.

3. Для системы подготовки и проведения испытаний космических аппаратов разработан метод построения структурного редактора циклограмм. Разработан метод представления содержимого циклограмм в древовидном виде.

4. Разработан метод построения интерпретатора циклограмм поддерживающего как параллельное, так и последовательное выполнение.

5. На основе применяемого в настоящее время языка испытаний (Диполь-5К), для новой автоматизированной системы испытаний разработан расширяемый и модифицируемый проблемно-ориентированный язык испытаний космических аппаратов связи и навигации - Диполь-6.

6. Для подтверждения реализуемости системы построенной на основе разработанных методов проведено UML моделирование основных аспектов реализации ПО автоматизации испытаний.

Научная новизна. В работе получены следующие научные результаты, которые выносятся на защиту:

1. Разработан метод разделения функциональностей действий испытаний предназначенный для построения универсального и модифицируемого программного обеспечения автоматизации испытаний.

2. Разработан метод построения редактора циклограмм с новым методом представления листинга циклограмм в древовидном виде.

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

4. Разработана структура и базовые множества понятий проблемно-ориентированного языка испытаний космических аппаратов связи и навигации.

Значение для теории данной работы заключается в развитии методов проектирования программного обеспечения автоматизации испытаний КА связи и навигации.

Значение для практики и реализация результатов работы.

Разработанные методы внедрены в Федеральном государственном унитарном предприятии «Научно-производственное объединение прикладной механики имени академика М.Ф.Решетнева» (НПО ПМ). Разработанные методы использованы в ходе создания для автоматизированной системы управления и информационно-телеметрического обеспечения (АСУИТО) «Раскат», системы подготовки и проведения испытаний состоящей из прикладного языка Диполь-6, редактора и интерпретатора циклограмм. Комплекс «Раскат» предназначен для проведения испытаний всех перспективных космических аппаратов разработки НПО ПМ. В частности для испытаний КА: «ГЛОНАСС-М», «ГЛОНАСС-К», «Луч-5А», «Экспресс-АТ» и др.

Кроме того, полученные в работе результаты используются в автоматизированной системе испытаний на ряде отдельных аппаратно-программных комплексов. В частности для испытаний КА «Гонец-М» и др.

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

Апробация диссертации. Основные положения диссертационной работы докладывались на VI Всероссийской научно-технической конференции молодых ученых и студентов «Современные проблемы радиоэлектроники» (Красноярск 2004), на шестой международной научно-технической конференции «Авиакосмические технологии» «АКТ-2005» (Воронеж 2005), на 4-й международной конференции «Авиация и космонавтика 2005» (Москва 2005), на IX международной научной конференции «Решетневские чтения», посвященной памяти генерального конструктора ракетно-космических систем академика М.Ф. Решетнева (Красноярск 2005), на второй всероссийской научно-практической конференции творческой молодежи «Актуальные проблемы авиации и космонавтики» (Красноярск 2006), на XVII научно-технической конференции «Электронные и электромеханические системы и устройства» (Томск 2006).

Публикации. По теме диссертации опубликовано 10 работ, в том числе 3 свидетельства о регистрации программ для ЭВМ, одна статья и 6 работ в материалах всероссийских и международных научно-практических конференций.

Структура диссертации. Диссертация изложена на 145 страницах и состоит из введения, четырех глав, заключения и четырех приложений. Список литературы содержит 106 наименований. Работа иллюстрирована 26 рисунками и содержит 18 таблиц.

Заключение диссертация на тему "Методы построения программного обеспечения автоматизации испытаний космических аппаратов связи и навигации"

Основные результаты работы.

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

2. Разработан метод построения программного обеспечения автоматизации испытаний. В основу построения системы заложен разработанный метод разделения функциональностей. Предложенный метод разделения функциональностей позволяет оптимально и эффективно построить функциональные и структурные схемы редактора циклограмм и интерпретатора. Увеличить объем повторно используемого программного кода, что ускоряет разработку и упрощает сопровождение программных комплексов, повышает качество программного обеспечения. Модульное построение и метод разделения функциональности позволят упростить решение вопросов модернизации программного обеспечения, а также расширения ряда аппаратно-программных систем, где возможно использование данного программного комплекса.

3. Разработан метод построения структурного редактора циклограмм. Преимущества использования структурного редактора состоят в следующем: отсутствие этапа трансляции (соответственно нет необходимости разработки сложного синтаксического и семантического анализаторов); «мгновенная» готовность к интерпретации. Проведен сравнительный анализ спрогнозированной скорости работы, показывающий эффективность структурного редактора. Разработан метод представления листинга циклограмм в древовидном виде. Метод позволяет получить полностью настраиваемое, управляемое пользователем, отображение листинга циклограмм.

4. Разработан метод построения интерпретатора циклограмм, реализующего псевдопараллельное выполнение циклограмм, а также поддерживающего приоритетное выполнение циклограмм испытаний. Кроме того, интерпретатор протоколирует выполнение операций. Возможно выполнение циклограммы с любой указанной операции с предварительной подготовкой контекста выполнения.

5. На основе применяемого в настоящее время языка испытаний Диполь-5К, для новой автоматизированной системы испытаний разработан универсальный проблемно-ориентированный язык испытаний космических аппаратов Диполь-6. Разработаны требования к прикладному языку испытаний космических аппаратов. Главный принцип состоит в том, что формирование языка испытаний должно быть основано на анализе проблемной области и принципах структурного программирования. Разработанные требования позволяют создать прикладной язык испытаний космических аппаратов с глубоким интегрированием в проблемную область, и средствами структурного программирования. Использование существующего задела обеспечивает легкость перехода пользователей со старого на новый прикладной язык. Разработаны компоненты структуры языка: иерархия конструкций, окружение языка, лексемы, типы данных, области действия, понятия, программные единицы, механизм подпрограмм, правила передачи параметров в циклограммы. Разработаны множества базовых понятий положенные в основу универсального языка. Основываясь на этом базисе, имеем возможность построения специализированных языков испытаний, предназначенных для конкретных аппаратно-программных комплексов, за счет расширения множества функциональных операций языка, в рамках разработанной структуры языка и на основе формализованного процесса функционирования.

6. Проведено моделирование основных аспектов реализации ПО автоматизации испытаний построенного на основе разработанных методов. Разработаны диаграммы, которые моделируют ключевые аспекты реализации метода разделения функциональностей действий испытаний. Для этих моделирующих диаграмм разработаны ключевые сущности и отношения между ними. Диаграммы разработаны для анализа структурной составляющей реализации метода разделения функциональностей, они формализуют структуру реализации, его основные сущности и характер взаимодействия между ними. Разработаны модели базовых типовых действий языка испытаний, которые позволяют достаточно просто классифицировать, разрабатывать и сопровождать конкретные действия языка испытаний. Разработана модель редактора циклограмм состоящая из набора диаграмм наглядно характеризующих как структурный аспект реализации редактора циклограмм, так и динамический аспект его построения. Также разработана модель интерпретатора циклограмм состоящая из набора диаграмм характеризующих структурный аспект реализации и набора диаграмм описывающих динамический аспект построения системы.

Разработанные методы проектирования внедрены в Федеральном государственном унитарном предприятии «Научно-производственное объединение прикладной механики имени академика М.Ф.Решетнева» (НПО ПМ). Разработанные методы использованы в ходе создания для автоматизированной системы управления и информационно-телеметрического обеспечения (АСУИТО) «Раскат», системы подготовки и проведения испытаний состоящей из прикладного языка Диполь-6, редактора и интерпретатора циклограмм. Комплекс «Раскат» предназначен для проведения испытаний всех перспективных космических аппаратов разработки НПО ПМ. В частности для испытаний КА: «ГЛОНАСС-М», «ГЛОНАСС-К», «Луч-5А», «Экспресс-АТ» и др.

Кроме того, полученные в работе результаты используются в автоматизированной системе испытаний на ряде отдельных аппаратно-программных комплексов. В частности для испытаний КА «Гонец-М» и др.

Федеральной службой по интеллектуальной собственности, патентам и товарным знакам на структурный редактор циклограмм «Циклон», проблемно-ориентированный язык испытаний и интерпретатор циклограмм для аппаратно-программного комплекса испытаний системы электропитания Диполь-СЭП выданы свидетельства о регистрации программ для ЭВМ [12,13,21].

ЗАКЛЮЧЕНИЕ

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

Библиография Барков, Алексей Владимирович, диссертация по теме Автоматизация и управление технологическими процессами и производствами (по отраслям)

1. Анисимов, В.Д. Исследование и разработка метода автономного контроля и диагностики космических аппаратов связи. / В.Д. Анисимов. Дис. на соискание ученой степени кандидата тех. наук. Красноярск. 1980. -141 с.

2. Атре, Ш. Структурный подход к организации баз данных / Ш.

3. Атре. -М.: Финансы и статистика, 1983. 320 с.

4. Ахо, А. Построение и анализ вычислительных алгоритмов: Пер. сангл. / А. Ахо, Дж. Хопкрофт, Дж. Ульман. -М.:Мир, 1979.-536 с.

5. Ахо, А. Компиляторы: принципы, технологии и инструменты / А.

6. Ахо, Р. Сети, Дж. Ульман.- М.: Вильяме, 2001. —768 с.

7. Ахо, А. Теория синтаксического анализа, перевода и компиляции /

8. А. Ахо, Дж. Ульман.- Т.1,2.-М.:Мир,1978.

9. Ахо, А. Структуры данных и алгоритмы / А. Ахо, Дж. Хопкрофт, Дж. Ульман. М.: Вильяме, 2000.

10. Баас, JT. Архитектура программного обеспечения на практике / JI. Баас, П. Клементе, Р. Кацман. -2-е издание. СПб.: Питер, 2006. -575 с.:ил.

11. Барков, А. В. Циклон / А. В. Барков // Свидетельство об официальной регистрации программы для ЭВМ №2005612246 / Федеральная служба по интеллектуальной собственности, патентам и товарным знакам.- 01.09.2005

12. Бентли, Дж. Жемчужины программирования / Дж. Бентли. 2-е издание. - СПб.: Питер, 2002. - 272 с.:ил.

13. Брукс-мл., Ф. П. Мифический человеко-месяц, или как создаются программные системы / Ф. П. Брукс-мл. 2-е изд., СПб.: Символ-плюс, 1999, 304 с.

14. Бусленко, В. Н. Автоматизация имитационного моделирования сложных систем / В. Н. Бусленко. М.: Наука, 1977. - 240с.

15. Бусленко, Н. П. Лекции по теории сложных систем / Н. П. Бусленко. -М.: Советское радио, 1973. -438 с.

16. Буч, Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++ / Г. Буч. 2-е изд. Пер. с англ. -М.:

17. Издательство Бином», СПб.: «Невский диалект», 2001 -560с 27 Буч, Г. Язык UML. Руководство пользователя / Грейди Буч,

18. Джеймс Рамбо, Айвар Джекобсон: Пер. с англ. Слинкин А.А. 2-е изд., стер. -М.: ДМК Пресс; СПб.: Питер, 2004. - 432 с.:ил. -(Серия «Объектно-ориентированные технологии в программировании») 2g Вельбицкий, И. В. Технология программирования / И. В.

19. М.: Мир: Мир, 1985. 22 Вирт, Н. Алгоритмы и структуры данных: Пер. с англ. / Н. Вирт.