Рекомендация: Интерфейсы внешних систем
Введение в интерфейсы между системами.
Взаимосвязи
Основное описание

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

Пример

Банкомат должен быть связываться с банком для проверки номера кредитной карты и пароля, и доступны ли запрошенная сумма для данного клиента. Т.к. банковская сеть является внешней системой (с точки зрения банкомата), для ее представления в анализе вариантов использования будет использоваться граничащий класс.

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

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