# БИБЛИОТЕКА Курсы Redmine Системная инженерия Стейкхолдеры Управление Критическая цепь Linux Информация Социальные связи Саморазвитие Логика, интеллект Политэкономия Сумма технологии АНАЛИТИКА Ресурсы ПО для аналитики Кто аналитики? Бизнес-процесс Требования Уровни и типы Источники Нотации Архитектура РАЗРАБОТКА Ресурсы Цикл разработки ПО Waterfall RUP Agile Kanban Continuous Integration git Frontend HTTP/REST Apache web-server Регулярные выражения Javascript Perl ТЕСТИРОВАНИЕ Книги и ссылки QA и QC Цикл тестирования 1 Тест-анализ 2 Тест план 3 Тест-дизайн и покрытие Уровни тестирования Виды тестирования Баг-репорт Шаблоны документов XPATH Безопасность Нагрузочное Android Автоматизация Selenium WebDriver Генератор ИНН БАЗЫ ДАННЫХ SQL MongoDB
Эта страница:
- Черпнуть мудрости - ПО для работы с Архитектурой - Уровни Архитектуры - Функциональная архитектура - Archimate - Еретик
Ещё в этом разделе:
АНАЛИТИКА Нотации Архитектура
Другие разделы:
# АНАЛИТИКА MONGO DB SQL РАЗРАБОТКА БИБЛИОТЕКА ТЕСТИРОВАНИЕ
Архитектура
Архитектор отвечает за целостность конструкции.
Архитектор думает как удовлетворить Требования.
Для этого Архитектор должен досконально знать свою предметную область.
Черпнуть мудрости
ПО для работы с Архитектурой
Уровни Архитектуры
ЦЕЛИ
Объекты работы Работы Выполнители
объекты деятельности процессы/практики люди уровень деятельности (business) - Архитектура деятельности, бизнес-архитектура
(нормологическое предприятие, цели, нормы)
данные функционал программы уровень софта (application layer) - Архитектура IT-решения
(информационное предприятие, работа с информацией)
информобъекты функционал оборудование уровень "железа"/оборудования (technology/component layer) - Архитектура IT-решения
(ИТ, хелпдеск)
ПРОЕКТЫ

Предприятие - это все три строчки

Требования к архитектуре Систем (Требования к интеграции?) - "Как должны быть связаны между собой Системы и Компоненты инфраструктуры, чтобы обеспечить непрерывность БП?"

TBD

Функциональная архитектура
Archimate
Что почитать на тему:

Archimate (Архимейт) -- язык архитектурного описания корпоративных и инженерных систем (моделирования архитектуры предприятия). ArchiMate предназначен для высокоуровневого моделирования и анализа различных областей предприятия и взаимосвязей между ними.
Он не фокусируется на деталях реализации и не заменяет UML, BPMN или ERD, а дополняет их. В Archimate меньше возможностей по детализации, чем в этих языках моделирования, но он позволяет связать описания различных областей и разработать интегрированное представление организации.

Уровни Archimate:

Еретик

Вариант уровней для Предприятия, где много Систем и Бизнес-процессов

Есть (бизнес-)Сценарий, в нём взаимодействуют Роли, обмениваясь информацией через интерфейсы друг друга.
Напомню, что GUI это ровно такой же интерфейс для взаимодействия ИТ-Системы с человеком, как и сетевой интерфейс для взаимодействия ИТ-Системы с другой ИТ-Системой.
Роли это маски - алиасы.
Роли в современном мире играют и Люди и ИТ-Системы. И чем дальше - тем меньше Ролей играется людьми. Это автоматически означает, что ушло то время подхода, когда идёт отделение Людей от Систем и их ролей друг от друга.
Роль, например, Андеррайтера сегодня играет человек, но по-сути человек это всего лишь Система, которая произвела некие вычисления внутри себя и приняла решение обменяться информацией с другой Ролью.
Т.е. завтра, например, Роль = Андеррайтер будет играть ИТ-Система.

(скачать схему в формате XML)

Подход к архитектуре предприятия через примат Функции

При построении Архитектуры ИС для нового предприятия логично в первую очередь опираться на Функции, вокруг которых будет обрастать та или иная Архитектура (логическая, физическая).

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

(скачать схему в формате .XLOGIC)

Например, мы хотим построить Предприятие = Банк.
Один из Сценариев (получения денег) это выдача Потребительского Кредита.

Верхнеуровнево, у Потребительского Кредита есть Процесс, выполняющий следующие Активности/Функции:

  1. Принять Клиента ФЛ (физически и/или электронно)
  2. Запомнить Клиента ФЛ (физически и/или электронно)
  3. Принять Заявку (физически и/или электронно) на Потребительский Кредит у Клиента ФЛ
  4. Запомнить Заявку (физически и/или электронно)
  5. основываясь на знании о Клиенте ФЛ, Разведать платёжеспособность Клиента ФЛ (физически и/или электронно)
  6. Запомнить результаты разведки (физичесик и/или элеткронно)
  7. основываясь на результатах разведки, Оценить платёжеспособность и пригодность для выдачи Потребительского Кредита (физически и/или электронно)
  8. Зафиксировать (физически и/или электронно) Сделку с ним
  9. Запомнить (физически и/или электронно) Сделку
  10. основываясь на данных из Сделки, выдать Деньги (физически и/или электронно)
  11. основываясь на данных из Сделки, производить (ир)регулярное изъятие/приём у Клиента ФЛ денег (физически и/или электронно) в счёт оплаты кредита
  12. основываясь на данных из Сделки, закрыть Сделку (физически и/или электронно)

Всё это кто-то должен выполнять, т.е. на каждое действие имеем некоторую Роль.
Верхнеуровнево, у нас будут следующие Роли:

Активность/Функция Роль
1 Принять Клиента ФЛ (физически и/или электронно) Взаимодействователь (интерфейс) с Клиентом
2 Запомнить Клиента ФЛ (физически и/или электронно) Хранитель Данных
3 Принять Заявку (физически и/или электронно) на Потребительский Кредит у Клиента ФЛ Взаимодействователь (интерфейс) с Клиентом
4 Запомнить Заявку (физически и/или электронно) Хранитель Данных
5 основываясь на знании о Клиенте ФЛ, разведать платёжеспособность Клиента ФЛ (физически и/или электронно) Взаимодействователь (интерфейс) с Бюро Кредитных Историй
6 Запомнить результаты разведки (физичесик и/или элеткронно) Хранитель Данных
7 основываясь на результатах разведки, оценить платёжеспособность и пригодность для выдачи Потребительского Кредита (физически и/или электронно) Расчётчик
8 Зафиксировать (физически и/или электронно) Сделку с ним Взаимодействователь (интерфейс) с Клиентом
9 Запомнить (физически и/или электронно) Сделку Хранитель Данных
10 основываясь на данных из Сделки, выдать Деньги (физически и/или электронно) Выдаватель Денег (Учётчик)
11 основываясь на данных из Сделки, производить (ир)регулярное изъятие/приём у Клиента ФЛ денег (физически и/или электронно) в счёт оплаты кредита Расчётчик
Заполучатель Денег / Приёмник
12 основываясь на данных из Сделки, закрыть Сделку (физически и/или электронно) Расчётчик
Хранитель Данных

Далее, каждую Роль может играть и человек и ИС, иногда даже делить эту роль (если точки входа разные, например гаджеты, ПК и физический офис)
Верхнеуровнево получаем следующие условные соответствия:

Роль ИС Человеческая должность
Взаимодействователь (интерфейс) с Клиентом Сайт в Интернет, Мобильное приложение, Банкомат менеджер
Взаимодействователь (интерфейс) с Бюро Кредитных Историй Система, делающая запросы вовне выспрашиватель
Хранитель Данных БД писарь
Расчётчик Система с логикой проверок расчётчик
Выдаватель Денег (Учётчик) Банкомат, АБС Учётчик
Заполучатель Денег / Приёмник Банкомат, АБС менеджер, учётчик, громила

Т.е. тут мы получаем минимальный и достаточный список Систем или Должностей, которые должны присутствовать в нашем Предприятии, для того чтобы обеспечивать выполнение Функций Процесса, дающего достижение цели - получение дохода
Далее, основыаясь на аналитике ниши/рынка/географии/предполагаемых_объёмов, уже необходимо расчитать количество таких систем.
Далее, основываясь на логике Процесса - логическую Архитектуру связи Ролей.
Далее - конкретную физическую Архитектуру ИС, конкретную физическую Архитектуру инфраструктуры Предприятия и т.п.

Еретическая Архитектура

Два функциональных ядра Архитектуры (cores)

  • Аналитическое ядро (analytics core), читает/анализирует:
    • Карточки Клиентов
    • очки скоринга Клиентов (scoring)
    • поведение Клиента
      (что-то подобное реализовано в Яндекс.Деньги - выявление отклонений в действиях Клиента на основе статистики)
    • workflow Бизнес-процессов (на основе статистики прохождения шагов, сравнения постан дч)
    • нагрузку шин ПО адаптерам И потокам данных
    • (?)риски (risks)
  • Синтезирующее ядро (synthesis core), создаёт/изменяет:
    • правила скоринга Клиентов (scoring rules)
    • workflow Бизнес-процессов
      (требует настраиваемого workflow - Camunda?)
    • Продукты (Products)
    • Сервисы (Services)
    • Маркетинговых Кампаний (marketing)
    • правила работы Шины (bus rules)

Максимально автоматизированы.

Мантия Архитектуры (mantle)

Мантия 1 (mantle 1)
  • т.н. demilitarized zone (DMZ)
    • авторизация (authentication, authorization)
    • маршрутизация (routing)
    • балансировщик нагрузки (load balancer)
    • служба логирования (logging service)
    • репликация данных сессии (session replication)
    • т.н. автоматический "размыкатель" (circuit breaker)
    • служба аудита (audit service)
Мантия 2 (mantle 2)
  • шина для командных запросов (command queries bus)
  • шина для событийных запросов (event bus). RabbitMQ?
    • (event dispatcher)
    • (event handlers)
    • хранилище событий (event store)
    • (replay events)
    • ...

Возможные каналы доставки/взаимодействия (delivery channels)

  • Лицом к лицу - курьер (Face2Face.Courier). исх
  • Лицом к лицу - отделения Банка (Face2Face.Branches). вх/исх
  • Мобильные - Приложение - Андроид (Mobile.App.Android). вх/исх
  • Мобильные - Приложение - iOS (Mobile.App.iOS). вх/исх
  • Мобильные - SMS (Mobile.SMS). вх/исх
  • Интернет - Сайт - десктопная версия (Web.Desktop). вх
  • Интернет - Сайт - мобильная версия (Web.Mobile). вх
  • Интернет - Сайт - GUI-доступ для Администраторов (Web.AdminGUI). вх.
  • Интернет - Консольный доступ для Администраторов по SSH. (Web.CLI). вх.
  • Банкоматы (ATM). вх
  • Платёжные терминалы (POS / ATM.mini). вх
  • Телефонные звонки - Колл-центр (Phone.CallCenter). вх/исх
  • Телефонные звонки - Озвучивание заранее записанных сообщений Клиенту (Phone.IVR). исх
  • Email. вх/исх
  • Партнёры (Partners). вх/исх
    • Государство - законодательное API (Partners.Government.Legislative)
    • Государство - различные сервисы Единого Окна (Partners.Government.SingleWindowService)
      Например, Госуслуги
    • Общественное питание (Partners.FoodService, Partners.Catering)
    • Здравоохранение (Partners.Healthcare)
    • Образование (Partners.Education)
    • Страхование (Partners.Insurance)
    • Розничная торговля (Partners.Retail)
    • Телекоммуникации (Partners.Telecom)
    • др. Банки (Partners.Banking)
    • агенты недвижимости (Partners.Estate)
  • киоски/стенды (Kiosk). вх/исх
  • социальные сети (SocialNetworks) вх/исх
  • ТВ (TV). исх. возможно, стоит отнести как подраздел к Партнёры
  • гейминг (Gaming). вх/исх . возможно, стоит отнести как подраздел к Партнёры
  • имплантируемые микрочипы (MicrochipImplant). вх/исх
вх/исх - относительно организации

Безопасность каналов (security)

  • шифрование протоколов передачи данных (encryption)
  • физическая невидимость для посторонних передаваемых физических предметов, шевеления губ при переговорах (visibility).
    На физическом уровне, например, это перегородки.
  • физическая неслышимость для посторонних переговоров Клиента с Организацией (audibility).
    На физическом уровне. например, это перегородки.
Чем выше безопасность для Канала Доставки - тем более широкий спектр Сервисов/Продуктов он может "поддерживать".

Что должны поддерживать каналы

  • многоязычность (Multi-Language)
  • многовалютность (Multi-Currency)
  • ...

Методы аутентификации (authentification)

? По степени возрастания надёжности:

  1. пароль (password)
    • многоразовый пароль
    • одноразовый пароль
  2. биометрия (biometric)
    • радужная оболочка глаза
    • отпечатки пальцев
  3. мультифакторная аутентификация (multi-factor authentication)
    Например, пароль + SMS ИЛИ пароль + биометрия..

Верификация методом электронной цифровой подписи (digital signature).

Чем надёжнее метод аутентификации при использовании Канала Доставки - тем более широкий спектр Сервисов/Продуктов он может "поддерживать", тем меньше физических контактов необходимо между представителями Организации и Клиентом.
Также, например, передача копий документов, заверенных ЭЦП (электронной цифровой подписью) ликвидирует необходимость в физическом контакте с Клиентом.

Инфраструктура (infrastructure)

Обязательные функциональные модули/подсистемы:

  • Библиотека (репозиторий) Правил Регуляторов (regulators rules)
    • Интернациональные правила (international)
      • законы (legis, laws)
      • институциональные/предметная_область (institutional, domain). Например, SWIFT.
    • Национальные правила (national)
    • Местные/локальные правила - регион страны, населённый пункт (local)
  • Библиотека/репозиторий Продуктов
  • Библиотека/репозиторий Сервисов
  • Библиотека/репозиторий шаблонов Документов
  • Библиотека/репозиторий Карточек Клиентов
  • Cимулятор ЖЦ Продукта/Сервиса (simulation)
  • ...

Должны иметь доступный в интрасети API.