Требования к системе

· Функциональные - поддаются локализации при реализации

· Нефункциональные - относятся к качеству системы – носят глобальный характер и оказывают существенное влияние на выбор общей архитектуры системы на этапе проектирования:

§ Масштабируемость – способность системы адоптироваться к будущему росту нагрузки

§ Открытость – систему можно легко расширять и модифицировать (интеграция новых компонентов, отвечающих новым функциональным требованиям => компоненты должны иметь четко определенные интерфейсы)

§ Неоднородность. В распределенных системах, компоненты должны объявлять о предлагаемых услугах. Заявки могут быть синхронными/асинхронными. Клиент и сервер могут быть неоднороднымию. Причины неоднородности:

o Компоненты могут приобретаться в готовом виде

o При создании нового компонента, на него могут накладываться требования взаимодействия см существующими компонентами

o Компоненты создаются разными разработчиками

o Используются различные технологии

§ Разделение ресурсов

Ресурс – аппаратура, ПО, данные

Требуется определить, кому будет разрешен доступ к ресурсу => требуется вести учет пользователей

Менеджер ресурсов – компонент, предоставляющий доступ к разделяемым ресурсам

 

Модели взаимодействия:

o Клиент-серверная (сервер предоставляет доступ к ресурсам)

o Концепция распределенных объектов, предоставляющих доступ к имеющимся у них ресурсам при обращении других компонентов

§ Отказоустойчивость – система может продолжать работу даже в случае неисправности => избыточность => применение репликации (при отказе компонента, начинает работать его копия и обслуживание не прекращается)