Основные свойства этого программного обеспечения присущи сегодня многим системам, применяющим программное обеспечение, и не являются уникальными. Просто перечислим их для того, чтобы понять решаемые проблемы.
Программное обеспечение станций, работающих в сети телекоммуникаций, имеет следующие характерные свойства.
Это означает, что:
Кроме того, для таких программ характерен промышленный подход, основными признаками которого являются:
Эти понятия подразумевают возможность установки, дополнения, коррекции и замены компонентов и в целом программного обеспечения без привлечения его создателей;
Эта задача подразумевает наличие средств контроля действий программного обеспечения и окружающей среды. Она также касается создания дружественного интерфейса.
Повторяем, что эти свойства характерны не только для задач телекоммуникации, но принадлежат системам, использующим "промышленное программное обеспечение".
В задачу этого раздела не входит рассмотрение или тем более критика различных систем программирования. Как заметил один из создателей теоретического подхода к программированию Э. Дейкстра [25]: "Растет Вавилонская башня языков, и каждый последующий претендует на роль ее венца". В задачу этого раздела также не входит оценка тех или иных программных решений. Сегодня ясно одно, что "нет лучше того языка, который знаешь".
Предлагаемый в этом разделе подход был создан для разработки отечественных систем телекоммуникаций с программным управлением. Он отображен в книгах и многих статьях (например, [9, 13, 44, 45]). Это подход был развит в 1970-х годах, и в настоящее он может быть отнесен к классу объектно-ориентированных систем программирования.
Не претендуя на обзор систем, принадлежащих классу объектноориентированных, приведем основные определения объектно-ориентированного подхода. Заметим, что потом он не раз встретится в этом курсе, например при рассмотрении вопросов эксплуатации и управления сетями связи [29, 52].
После рассмотрения общих вопросов перейдем к отечественному методу.
Основу этого подхода составляют следующие понятия.
Для построения программного обеспечения, его разработки и эксплуатации во многих приложениях применяется CORBA (Common Object Request Broker Architecture) — Общая архитектура с передачей запросов к объекту через посредника. Основные сведения об этой архитектуре можно узнать в [18, 29, 52, 68]. Часто она классифицируется как система работы с распределенными вычислительными ресурсами. Ее свойства во многом соответствуют перечисленным в начале этого раздела требованиям к разработке и эксплуатации программного обеспечения станций в сетях телекоммуникаций.
Часть архитектуры CORBA, необходимая для дальнейшего рассмотрения, показана на рис. 4.1.
Согласно современной классификации указанная архитектура принадлежит классу архитектуры "клиент-сервер". Как можно видеть на рис. 4.1, имеется два типа сетевых устройств:
Работа осуществляется сервером по запросу клиента на услугу.
Основной особенностью архитектуры CORBA является наличие программной шины ORB (Object Request Broker). ORB "отвечает" за распределение запросов клиента по соответствующими серверам, а также является транспортной средой для взаимодействия в процессе выполнения задачи. Детали этого взаимодействия скрыты от пользователя и существуют как часть реализации "программной шины".
Обычно скрытыми являются следующие элементы взаимодействия [18].
Эти особенности ORB дают возможность разработчикам приложений сконцентрировать внимание на приложениях и не беспокоиться о проблемах распределенного системного программирования нижнего уровня.
Такой подход упрощает модернизацию, поиск сбоев и отклонений от нормального функционирования и другие действия при эксплуатации станции.
Рассмотрим еще один метод, который соответствует изложенным свойствам объектно-ориентированного подхода и распределенных систем программирования. Он использовался при создании отечественных систем коммутации.
Этот подход отражен во многих статьях и книгах. Для начального изучения можно рекомендовать [7, 12, 13, 40, 44, 45].