С чего начать разработку архитектуры?

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
Примечание: Если вы считаете, что на построении архитектуры съели хотя бы полпёсика, то эта статья не для вас.

Модель — абстрактное представление реальности в какой-либо форме.

Предполагаем, что архитектор уже закончил со сбором требований к будущей системе и их анализом.

Разработку архитектуры нужно начинать только с понятия и принятия фундаментальной концепции работы с информацией (данными): передача, хранение и обработка. Притом формы ввода/выводы информации, схемы обработки, абстрактные структуры массивов и элементов данных сами по себе тоже являются информацией (как и всё приложение) и подчиняются той же фундаментальной концепции.

image

Фундаментальная концепция приводит к появлению первых идей и к созданию первых моделей обработки данных.

image

Модели работы с данными могут называться по разному из-за разницы вкладываемых понятий. Одно из названий поток данных, где элементы обычно являются будущими укрупнёнными модулями, реализующими конкретные задачи манипуляции данными.

Основой архитектуры (основной моделью) станет модель бизнес-процесса движения основных данных (то, для чего будет предназначено приложение). Этот этап очень опасен: на архитектора может нахлынуть масса оригинальных идей. Нужно сдержать этот поток идей. Подавить желание помечтать или нарисовать кучу ненужных схем. Сейчас нужно создать только одну схему последовательного получения основных данных, хранения и обработки. Ничего лишнего. Здесь не нужна декомпозиция. Именно такая схема ложится в основу, является основным представлением архитектуры и должна быть всегда на виду. В качестве бизнес-процесса может выступать технологическая карта.

Вторая основная модель будет с добавлением вторичных бизнес-процессов и данных. Например добавляются модели пользователей, управления доступом (ACL), модели логирования, модели мониторинга, событийную модель и т.п. На основе второй модели уже возможна разработка первой схемы БД и/или хранилища данных, и прототипа приложения. На этом этапе может прийти понимание о том, стоит ли делать монолитное приложение, компонентное, применить микросервисный подход или какой-либо другой. При этом интересен факт: между монолитом и каждым микросервисом (в микросервисной архитектуре) нет различий с точки зрения фундаментальной концепции. С этого момента необходимо начать разработку документа обоснования архитектуры. Документ обоснования архитектуры является регистратором рассуждений о причинах принятых решений архитектуры и разъяснений.

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

После создания второй основной модели и первого прототипа вы можете начать декомпозицию, укрупнение, разработку других архитектурных представлений и моделей. Но первая основная модель и вторая основная модель будут являться базовыми. В процессе дальнейшей разработки первая и вторая модель могут быть улучшены, уточнены и доработаны.
Источник: https://habr.com/ru/post/448830/


Интересные статьи

Интересные статьи

Что такое бэкенд, на Хабре рассказывать не нужно, поэтому сразу переходим к сути статьи. В ней рассказывается о наиболее подходящих для бэкенда языках программирования. Кроме того, ав...
Цена акций Tesla на момент создания этого материала превышала 1500 долларов США (после коррекции с уровня 1700). Будет ли она дальше расти? Это финансовый пузырь или компания будущего...
Когда вы разрабатываете продукт, каждая новая итерация — это риск уронить метрики и потерять пользователей. Тем не менее иногда, особенно на начальных этапах, компании неосознанно идут на этот ри...
Вам приходилось сталкиваться с ситуацией, когда сайт или портал Битрикс24 недоступен, потому что на диске неожиданно закончилось место? Да, последний бэкап съел все место на диске в самый неподходящий...
Несмотря на то, что “в коробке” с Битриксом уже идут модули как для SOAP (модуль “Веб сервисы” в редакции “Бизнес” и старше), так и для REST (модуль “Rest API” во всех редакциях, начиная с...