Диаграммы
Во время создания сложных программных приложений, в процессе проектирования, нами было создано большое количество различных диаграмм. Вот несколько примеров с описаниями:
Диаграммы композитной структуры.
Диаграммы компонентов
Core — Система массовой рассылки большого числа писем
Система позволяет рассылать множество писем с вложениями, в зависимости от приоритетов отправки каждого письма. Особенностью является возможность обработки больших объёмов данных.
Хранение информации о письмах осуществляется NoSQL базой данных MongoDB, работающей в виде шардированного кластера. Каждое письмо содержит множество параметров, на основе которых в будущем будет вычислен приоритет его отправки.
Модуль Core запускает процессы-демоны, которые извлекают информацию о письмах из MongoDB. Далее выполняется алгоритм вычисления приоритета письма и идентификаторы писем, которые должны быть отправлены, сохраняются в in-memory базу данных Redis, которая обеспечивает максимально быстрый доступ.
Множество SMTP-серверов выполняют отправку писем и обращаются за следующим письмом к модулю Core, который достаёт идентификатор следующего письма из Redis. Далее считывается другая информация о письме, если к письму существует вложение, то оно достаётся из файловой системы.
Базы данных MongoDB, Redis, SMTP-сервер и Core могут находиться на одном и том же физическом сервере для лучшего быстродействия.
Диаграмма развёртывания
Диаграмма развёртывания приложения, созданная в рамках проекта «Система автоматизации документооборота и бизнес-процессов в природоохранной деятельности»
Диаграммы композитной структуры
Диаграмма сервиса аутентификации, отображающая связи между внутренними классами и внешними компонентами.