Галерея диаграмм связей Системный архитектор Глава 1 Интеллект-карта
Расширенный экзамен по системному архитектору. Системная архитектура — это общее структурное представление системы высокого уровня.
Отредактировано в 2024-03-14 17:35:26системный архитектор
Архитектура системы — это общее структурное представление системы высокого уровня.
язык описания архитектуры программного обеспечения
C2SADL
На основе компонентов и сообщений
Райт
Распространение, тип параллелизма
А С М Е
Смена архитектуры
ЮниКон
По компонентам и соединениям
Рапид
основанный на событиях
Дарвин, МетаХ, Эзоп, Уивс, SADL, xADL
Содержание анализа архитектуры
структурный анализ
Функциональный анализ
нефункциональный анализ
Цель: Система фактически построена. ранее предсказал его качественные характеристики.
Часто используемые методы архитектурного анализа
Метод анализа архитектуры программного обеспечения SAAM
Метод архитектурного компромиссного анализа ATAM
Метод анализа затрат и выгод (CBAM)
Реинжиниринг архитектуры на основе сценариев SBAR
Прогнозирование ремонтопригодности программного обеспечения на архитектурном уровне ALPSM
Модель оценки архитектуры программного обеспечения S A E M et al.
Общие методы архитектурного проектирования
Управляемый артефактами
основанный на прецедентах
управляемый шаблоном
управляемый доменом
Атрибутно-ориентированный дизайн
стиль архитектуры программного обеспечения
стиль потока данных
стиль вызова/возврата
Независимый стиль компонента
Стиль виртуальной машины
Складской стиль.
Общие классификации архитектуры программного обеспечения
многоуровневая архитектура
Наиболее распространена четырехслойная структура.
Уровень представления: пользовательский интерфейс, отвечающий за визуальное и пользовательское взаимодействие;
Бизнес-уровень: реализует бизнес-логику;
Уровень сохранения: на этом уровне размещаются данные и операторы SQL;
База данных (уровень базы данных): сохранение данных.
Запрос пользователя будет последовательно обрабатываться на этих четырех уровнях, и ни один уровень не может быть пропущен.
архитектура, управляемая событиями
Событие — это уведомление, отправляемое программным обеспечением при изменении состояния.
●Очередь событий: точка входа для получения событий;
● Распространитель (посредник событий): распределяет разные события по разным блокам бизнес-логики;
● Канал событий: канал связи между дистрибьютором и процессором;
Для простых проектов очереди событий, диспетчеры и каналы событий можно объединить в один
● Обработчик событий: реализация бизнес-логики. После завершения обработки будет создано событие, запускающее следующий шаг.
микроядерная архитектура
Также известная как подключаемая архитектура, относится к программному обеспечению Ядро сравнительно небольшое, а основные функции и бизнес-логика реализованы посредством плагинов.
Ядро (Core) обычно содержит лишь минимум функций для работы системы. Плагины независимы друг от друга, и связь между плагинами должна быть сведена к минимуму, чтобы избежать проблем взаимозависимости.
Микросервисная архитектура
Это обновление сервис-ориентированной архитектуры (SOA). Каждая служба представляет собой независимую единицу развертывания (Separately Deployed Unit). Эти устройства распределены, отделены друг от друга и связываются с ними через протоколы удаленной связи (такие как REST, SOAP).
Модель RESTfulAPI: услуги предоставляются через API, и в эту категорию попадают облачные сервисы;
Модель приложения RESTful: услуги предоставляются через традиционные сетевые протоколы или протоколы приложений, за которыми обычно стоит многофункциональное приложение, обычно встречающееся на предприятиях;
Централизованный режим сообщений: использование брокера сообщений (брокера сообщений) позволяет реализовать очередь сообщений, балансировку нагрузки, единый журнал и обработку исключений. Недостаток заключается в том, что будет единая точка отказа, и брокер сообщений может потребоваться кластеризовать.
Облачная архитектура
В основном он решает проблемы масштабируемости и параллелизма. Это самая простая для расширения архитектура. Ее высокая масштабируемость выражается в копировании всех данных в память и превращении их в копируемую единицу данных в памяти, а затем инкапсуляции возможностей бизнес-обработки в отдельные процессы. . Блок обработки
Блок обработки
Реализовать бизнес-логику.
Виртуализированное промежуточное ПО,
Отвечает за связь, поддержание управления сеансами (сессиями), репликацию данных, распределенную обработку и обработку заказов. Развертывание юаней.
Промежуточное программное обеспечение обмена сообщениями (Messaging Grid): управляет запросами пользователей и управлением сеансами (сессиями). Когда поступает запрос, он определяет, какому процессору он назначен.
● Промежуточное программное обеспечение данных (Data Grid): копирует данные в каждый процессор, то есть синхронизирует данные. Убедитесь, что определенный процессор получает одни и те же данные.
● Промежуточное программное обеспечение обработки (сетка обработки). Необязательно. Если запрос включает в себя различные типы блоков обработки, это промежуточное программное обеспечение отвечает за координацию блоков обработки.
● Промежуточное программное обеспечение развертывания (менеджер развертывания): отвечает за запуск и завершение работы процессора, отслеживание нагрузки и времени отклика. При увеличении нагрузки процессор запускается, а при уменьшении нагрузки процессор выключается.
Общие методы моделирования системной архитектуры
динамическая модель
Динамические модели дополняют структурные или каркасные модели.
модель процесса
Модель процесса — это исследование шагов и процессов, которые создают систему.
структурная модель
Ядром структурной модели исследования является язык описания архитектуры.
рамочная модель
Сосредоточьтесь на общей структуре. Рамочная модель в основном нацелена на некоторые специальные проблемы и устанавливает структуру, которая ориентирована только на эти проблемы и адаптирована к ним.
Задачи и компоненты архитектурного дизайнера
(1) Руководить и координировать техническую деятельность на протяжении всего проекта (анализ, проектирование и реализация и т. д.).
(2) Принимать важные технические решения и в конечном итоге выражать их в системной архитектуре.
(3) Определить архитектуру системы и продвигать документацию по проекту ее архитектуры. Документация здесь должна включать «представления», такие как требования, проектирование, реализация и развертывание.