К.т.н.Жарковский А.В., к.т.н
Лямкин А.А., к.т.н Микуленко Н.П.,
к.т.н Тревгода Т.Ф.
Санкт-Петербургский государственный электротехнический
университет «ЛЭТИ»
Метаязык описания сложных
технических систем
Цели
функционирования любых сложных технических систем (СТС), достигаются только
благодаря управлению. Алгоритмы управления реализуются в виде функционального
программного обеспечения (ФПО) комплексов управления. В конечном счете, ФПО определяет
сроки создания и эффективность функционирования СТС.
Разрабатываемые на стадии концептуального
проектирования технические задания на систему и ее компоненты, в том числе на ФПО,
формулируются Заказчиком на естественном языке в терминах конкретной предметной
области, а их реализация осуществляется Исполнителем. Вербальность Технических
заданий ведет к разному пониманию одних тех же задач Заказчиком и Исполнителем,
что, как известно, приводит к длительному и дорогостоящему процессу отладки
системы, а нередко и к провалу ее проекта.
Улучшить
качество проектов и сократить их длительность мола бы помочь автоматизация.
Наибольшие трудности автоматизации концептуального проектирования связаны с
формализацией описания предметной области на неком метаязыке, понятном как
Заказчику, так и Исполнителю. Таким промежуточным между вербальным языком и
языками программирования высокого уровня является предлагаемый ниже
объектно-признаковый язык, который может служить для формализации описания СТС
и процесса ее функционирования, а также
для формулирования технических заданий с целью однозначного их понимания
Заказчиком и Исполнителями.
Для понимания сути языка достаточно
рассмотреть лишь его синтаксис и семантику. Можно считать, что каждый
конкретный объект Х принадлежит к
определенному множеству (типу) объектов (Т.Х).
Любой объект этого множества характеризуется номером (именем конкретного
экземпляра) и целым набором признаков, которые перечисляются через запятую в
квадратных скобках после имени объекта
(Т.Х [...]). Объекты и их признаки и
обозначаются на латинице начальными буквами терминов языка предметной области и
в виде общепринятых физических величин.
Существуют признаки числовые (например, D – дистанция, S –
скорость, U – угол) и нечисловые (например,
ТС – тип цели). Если признак объекта характеризуется
только одним членом некоторого множества, то все члены множества перечисляется
в фигурных скобках (например, ТС:{C, W, R}, где C –
самолет, W – вертолет, R – ракета). Если признак объекта характеризуют все члены
множества, то они задаются кортежем в ломаных скобках (например, GR: <LX, LY, LZ>, где GR – геометрические размеры объекта вдоль осей его симметрии).
Признаки
бывают зависимыми и независимыми. Зависимость (функция) одного признака от
другого указывается в круглых скобках (например, Е(D) – энергия или мощность
E принимаемого
излучения зависит от дальности D до источника излучения). Описание типа любого объекта Х можно рассматривать как шапку таблицы Т.Х, где
в первом столбце указывается такой признак объекта как его имя, а проще, номер
(N_Т.X), а в
последующих столбцах – все остальные признаки.
Так, типовое
описание радиолокационного обнаружителя можно представить в виде:
Т.Z [N_T.Z, QM, DM, DH, SPZ, SPY, TD, TE],
где N_T.Z – имя обнаружителя; QM – максимальное число сопровождаемых целей; DM и DH – минимальная
и максимальная дистанции обнаружения цели; SPZ
и SPY – секторы поиска цели в
горизонтальной и вертикальной плоскостях; TD
и ТЕ – соответственно точности
измерения дистанций и угловых величин.
Для описания информационных связей между различными
компонентами СТС служат формуляры (F.), в расширении которых указывается обозначение
объекта, из которого выходит (I) или в который входит (U) данная информационная связь. Признаки формуляров в
отличие от признаков объектов являются величинами переменными (изменяющимися во
времени). Совокупность формуляров образует информационную модель системы.
Так, информирующий формуляр радиолокационного
обнаружителя имеет вид: F.ZI [LC, N_C, K, M, D ], где LC
– количество сопровождаемых целей; N_C – номер цели в нумерации данного
обнаружителя; K, M, D – измеряемые координаты целей (K – курсовой
укол, M – угол места, D – дальность).
В докладе также приводятся примеры
использования объектно-признакового языка для описания структуры иерархических
СТС, их взаимосвязей и пространственного размещения.
Процесс функционирования какого-либо
объекта Х можно представить как преобразование информации из
входного (входных) формуляра F.XU в выходной
F.XI в соответствие с
характеристиками объекта, задаваемыми
его типом Т.X:
Для описания отношений между объектами или
отдельными признаками, для записи вычислительных процедур могут использоваться
стандартные математические функции. Это позволяет использовать объектно-признаковый
язык для описания процессов (моделей) функционирования СТС и их компонентов с
использованием модифицированной формы структурограмм (диаграмм Нэсси–Шнайдермана).
Из приведенных примеров видно, что все
обозначения объекно-признакового языка составляются из аббревиатуры или
начальных букв соответствующих названий (терминов предметной области) на
латинице, которая принята для использования на компьютере и из-за общепринятых
стандартных обозначений физических величин. Это способствует быстрому запоминанию
обозначений и не является препятствием для программирования и создания
машинного языка высокого уровня.
Жарковский А.В., Лямкин А.А., Тревгода Т.Ф. Объекно-признаковый язык описания сложных технических систем //Программная инженерия, 2012, №2