Графическое представление архитектуры

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

Любая система может рассматриваться с разных точек зрения: поведенческой (динамической); структурной (статической); логической (соответствие функциональным требованиям); физической (распределенность, локальность); реализации (как детали архитектуры представляются в коде) и т.п. В результате получаются различные архитектурные представления (View). Архитектурное представление может быть определено как частные аспекты программной архитектуры, рассматривающие специфические свойства программной системы. В свою очередь, дизайн системы — комплекс архитектурных представлений, достаточный для реализации системы и удовлетворения предъявляемых к ней требований. Для изображения большинства видов дизайна систем используются UML-диаграммы. Рассмотрим основные виды (точки зрения) представления архитектуры приложений и диаграммы, которые можно использовать при их проектировании.

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

Пример функционального вида архитектуры приложения

Рис. 5.11. Пример функционального вида архитектуры приложения

Физический вид, или вид развертывания, описывает (в произвольном виде) физическую структуру приложения (серверы, физические устройства, связи между ними). На рис. 5.12 приведен пример физического вида архитектуры интернет-магазина по продаже сотовых телефонов. Web-сервер и сервер БД физически располагаются на одном компьютере. Доступ к страницам осуществляется как по открытому (HTTP), так и по закрытому соединению (HTTPS). При этом у пользователей магазина и сотрудников компании разный доступ к магазину (пользователи работают через личный кабинет, а сотрудники — через специальный Web-интерфейс управления магазином). Прямой доступ к серверу имеют только администраторы системы.

Клиенты

Пример физического вида архитектуры

Рис. 5.12. Пример физического вида архитектуры

?

а

?

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

начальное состояние: конечное состояние: состояние-действие: условие:

параллельное выполнение:

Начальное состояние может быть только одним, это начало диаграммы. Конечное состояние может быть только одним, на нем заканчивается диаграмма. Состояние-действие определяет любое возможное в данном состоянии действие (внутри данного блока пишется производимое действие). Условие позволяет изменять ход выполнение диаграммы по различным причинам; причины ветвления пишутся над линиями, исходящими из блока. Допускается параллельное выполнение процессов: либо в блок входит одна стрелка, а выходит несколько, каждая из которых означает начало параллельного выполнения процессов, либо в блок входит несколько стрелок, а выходит одна, что означает окончание параллельного выполнения процессов. Область построения диаграммы может разделяться вертикальными линиями; прямоугольник, который они образуют, выделяется как отдельная подсистема или пользователь, их названия пишутся в верхней части прямоугольника.

На рис. 5.13 показана диаграмма активности запроса клиентом списка товаров интернет-магазина. Клиент запрашивает список товаров. Если УеЬ-сервер недоступен, то он может либо еще раз запросить список товаров, либо отказаться от просмотра страницы. Если УеЬ-сервер доступен, то он параллельно делает запрос данных из БД и информирует браузер клиента о том, что данные запрошены. Здесь целесообразно применение «асинхронного агента» для показа того, что ожидаются данные клиенту. Если время получения запрошенной информации будет большим, то клиент будет видеть, что его запрос обрабатывается. После получения данных УеЬ-сервер формирует НТМЬ-страницу и отправляет ее браузеру клиента. Браузер клиента отображает полученную страницу.

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

Пример диаграммы активности

Рис. 5.13. Пример диаграммы активности

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

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

Главное окно приложения

Товары

Войти в личный кабинет

Наименование телефона

Краткое описание

Рис. 5.14. Пример интерфейса пользователя

 
< Пред   СОДЕРЖАНИЕ     След >