Архитектура ИТ-решений
13.8K subscribers
280 photos
27 files
1.09K links
Разговоры об архитектуре корпоративных информационных систем (архитектура предприятия, архитектура ИТ-решений, микросервисы).

Этот канал не продается, а я не сдаю квартиры/машины/яхты. Будьте, пожалуйста, осторожны!
Download Telegram
Архитектура ИТ-решений
У Jordan Tigani, основателя компании Mother Duck стоящей за СУБД DuckDB замечательный текст Big Data is Dead [1] который, трам-пам-пам, как вы догадались, о том что Big Data это уже давно мёртвый хайп. Не он первый и не он последний об этом говорит, но никогда…
Давным-давно я пытался обратиться к совести одного эксперта по ИТ-трендам:
- Что-же вы людей обманываете! – негодовал я. - Зачем убеждаете профанов, что вот эта вот технология через пару лет завоюет мир?
- Да мы то здесь причем? – парировал мой собеседник. – Это рынок отзывается на одни идеи и игнорирует другие. А мы просто ведем себя как все прочие маркетологи, придумываем гипотезы, а затем их тестируем. Вот гиперавтоматизацию, например, никто толком не понимает, а RPA хорошо идет…

В общем, я тогда подумал, как сильно образ будущего, реальный или не очень, влияет на настоящее. А еще о том, что архитекторы занимаются отчасти похожим делом – побуждают людей сегодня себя вести с учетом возможного развития событий в будущем.

Ну, а обсуждаемая статья интересна тем, что пытается обрисовать ситуацию с данными чуть тоньше, чем большинство инфомусора на эту тему последних 10-12 лет
Сводная табличка характеристик архитектурных стилей по книжке Форда и Ричардса https://www.developertoarchitect.com/downloads/architecture-styles-worksheet.pdf
Незамысловатые картинки в excalidraw, дополненные простым текстом, постоянно попадают в мою новостную ленту

Наконец нашел страницу со ссылками сразу на все Event-Driven Architecture Visuals: https://serverlessland.com/event-driven-architecture/visuals
15 февраля 2019 года я запустил чат Работа для ИТ-архитекторов.

За это время в нем появилось под семь сотен сообщений с тегом #вакансия (среди них есть повторы). На основании этого материала вполне можно постараться сформулировать некоторые суждения. Сейчас я остановлюсь всего на трех. Может быть в своем блоге в ближайшие дни напишу больше:
1. Рынок (работодатель) даже не думает как-либо унифицировать требования к знанием, умениям и навыкам ИТ-архитектора. Максимум, что можно разглядеть в объявлениях, так это разделение архитекторов на enterprise-solution-software/system. Никто даже не копипастит текст из описаний чужих вакансий, а каждый раз сочиняет его заново
2. Что будет делать архитектор и как должен выглядеть результат его деятельности указывается довольно редко. Такие аббревиатуры как ADR или HLD, так вообще встречаются всего в нескольких объявления.
3. Слова UML u Archimate попадаются чаще. Kubernetes (или k8s) и PostgreSQL – еще чаще. Но им довольно далеко до словосочетания микросервисная архитектура :) С ней разве что слово java может поспорить.

Ну, а в принципе, есть что обсудить. Может даже надо очередной zoom провести. Хотите поделиться мнением, пишите в комментарии! (только не про зарплату, ладно? ;)
Я все никак не соберусь сделать вебинар по стандарту архитектурных процессов ISO/IEC/IEEE 42020. Потому размещу сегодня всего лишь картинку со списком процессов и ограничусь парой тезисов об этом стандарте:
1. Про определения из него я уже писал здесь Изменения в стандартах 420x0
2. Область применения стандарта: организация, несколько организаций, система, решение, продукт сервис и т.д. При этом, два верхних и нижний процесс они больше про Enterprise Architecture, а три средних про архитектуры системы или решения.
3. Тройка процессов Conceptualization-Evaluation-Elaboration напоминают мне Whirlpool модель Эрика Эванса. В стандарте сказано, что архитектурные описания в начале представляют собой верхнеуровневые наброски, но их может быть много. Затем небольшое количество из этих вариантов реализации уточняется. Ну, т.е. процессная модель ISO 42020 вполне согласуется с идеей воронкой инициатив, позволяющей использовать архитектуру не только на вопрос КАК, но и на вопрос ЧТО следует делать
Приделал в свой блог: https://mxsmirnov.com/ трансляцию этого telegram-канала (зачем-то)
Смотрите какую замечательную вещь предложил Vladimir Khorikov: https://enterprisecraftsmanship.com/posts/types-of-cqrs/ Сделать CQRS "измеряемой" характеристикой: нет CQRS-а, немного CQRS, чуть больше CQRS и т.д. Практически, как REST maturity model от Leonard Richardson. CQRS в нашем решении увеличивается когда: появляются отдельные методы, например для поиска; разделяются классы для работы с данными и их сохранения, выделяются разные модели для чтения и записи, чтение выделяется в отдельный(ые) сервисы, разделяются системы хранения данных для чтения и записи.

Каждый следующий шаг - это не бесплатно. Зато по мере увеличения CQRS-ности решения улучшаются его характеристики (возможность независимого масштабирования команд и запросов, локализация изменений и т.п.). Ну, т.е. не надо спорить нужен CQRS или нет. Надо обосновывать сколько его нужно в данном конкретном случае и зачем
Brian Foote and Joseph Yoder
Big Ball of Mud

Shantytowns emerge where there is a need for housing, a surplus of unskilled labor, and a dearth of capital investment. Shantytowns fulfill an immediate, local need for housing by bringing available resources to bear on the problem.

All too many of our software systems are, architecturally, little more than shantytowns... Deadlines loom like monsoons, and architectural elegance seems unattainable

*Трущобы возникают там, где есть потребность в жилье, избыток неквалифицированной рабочей силы и недостаток инвестиций. Трущобы удовлетворяют насущную потребность в жилье имеющимися ресурсами.

Слишком многие из наших программ, архитектурно, не более чем трущобы...
Сроки надвигаются, как муссоны и архитектурная элегантность представляется недостижимой
Есть такой жанр у авторов текстов по ИТ-архитектуре – многабукв, абстрактные рассуждения и без картинок. Бен Моррис, вполне относится к представителям этого жанра (картинка в сообщении от меня). Но есть в его заметках и некоторое отличие. Во-первых, в них практически всегда присутствует TL;DR, а еще, обычно, написаны довольно правильные вещи. Как, например, в тексте Когда событие не является событием, (... а является сообщением, запросом, командой, сущностью и т.д.)
Международный институт бизнес-анализа IIBA в ноябре прошлого года выпустил новую книжку The Business Analysis Standard Можно считать, что это еще один упрощенный и переформатированный пересказ BABOK Guide, но:
- сделан он довольно неплохо
- получить его можно совершенно бесплатно (на сайте IIBA, за регистрацию https://go.iiba.org/The-Standard)
Архитектура ИТ-решений
2023 - новый год платформ? Поделюсь ссылкой на сообщение в канале Express 42. Просто потому, что я тоже обратил внимание на PlatformCon 2022 и не столько из-за выступления G.Hohpe, а скорее вот из-за этого незатейливого рассказа с прекрасным названием Building…
В самом начале года я уже писал, что обсуждать в 2023 мы будем платформы. Так оно и происходит. Даже невнятная статья Сэма Ньюмана Don't Call It A Platform, про "обитаемость", прошла по всем архитектурным рассылкам.

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

#platformengineering
Архитектура ИТ-решений
Zachman1992.jpg
А тем временем Mark Richards в своих архитектурных понедельниках рассказал нам про матрицу Захмана https://youtu.be/IaQddw-uCvY

Вернее о том, во что она превратилась в конечном счете. Вы можете почитать оригинальную статью Extending and formalizing the framework for information systems architecture 1992 года с сайта Захмана, чтоб убедиться, что матрица там не совсем такая и Марк комментирует более позднюю версию.

Ну, а для самых дотошных вот эта статья The Zachman Framework Evolution by John P Zachman с историей переписывания содержания клеточек, названий строк и столбцов

ЗЫ: Моё старое обещание о новой серии разговоров про матрицу Захмана остается в силе :) Не отписывайтесь от нашего канала!
Узнал я новое слово на букву "С". На днях Билгин Ибрям написал довольно большой текст на InfoQ What Are Cloud-Bound Applications? о том, что же привязывает наши приложения к конкретным инфраструктурам, платформам и сервисам
В Scaled Agile Framework есть ряд идей, на которые я часто ссылаюсь в своих курсах, вебинарах и выступлениях. Например, выделение трех основных архитектурных ролей (enterprise, solution и system architect) или воронка Portfolio Kanban, позволяющая определять приоритеты задач на основании рассмотрения альтернативных вариантов реализации(см. рисунок).

Это совершенно не значит, что я за SAFe или же против него. Чтоб избежать предвзятого отношения я позволю себе поделиться ссылкой на сайт The SAFe Delusion оставив каждому подписчику труд выработать то или иное собственное отношение к SAFe или возможность не делать этого вовсе
Архитектура ИТ-решений
А запись выступления Саймона Брауна Diagrams as Code 2.0 на GOTO Copenhagen 2021 выложили только позавчера. Интересующимся: https://youtu.be/Za1-v4Zkq5E
Simon Brown добавил несколько примеров альтернативных визуализаций в https://c4model.com/#AlternativeVisualisations

Выше я ссылался на его выступление Diagrams as Code 2.0 с идеей, что модель не только первична по отношению к диаграммам, но и может быть выражена разными нотациями моделирования
Текущие результаты опроса (Google Tree Map Chart)
Ежегодно O'Reilly анализирует поисковые запросы по своим книжкам и курсам и пишет об этом большой и бестолковый отчет Technology Trends for 2023. В этом году он появился 1 марта, но у меня все не доходили руки с ним разобраться.

Честно говоря, чтения отчета несколько меня разочаровало. Я бы предпочел набор сырых данных (меньше букв, больше цифр). По крайней мере, тренды по архитектурным словам (см. график) я понять не сумел. Согласно отчету растет всё:
- Архитектура ПО выросла в 2022 по сравнению с 2021 годом на 26%.
Видимо, это в абсолютных величинах, но нигде не написано насколько выросло общее количество запросов. В общем, после таких данных хочется задать вопрос: ну и что?
Архитектура ИТ-решений
Какой вы архитектор? (множественный выбор)
Я остановил опрос с такими текущими результатами:

В нашем чате более 500 архитекторов решений (Solution Architect), более 330 системных и 150 бизнес-аналитиков. Более 300 разработчиков. А еще 250 архитекторов ПО и примерно столько же человек, которые позиционируют себя в качестве Enterprise Architect. Меньше системных инженеров и QA
Я пропустил тот момент, когда ассоциация всех ИТ-архитекторов IASA вместо руководства по архитектуре ITABOK стало развивать The Business Technology Architecture Body of Knowledge (Btabok) Кто-нибудь разбирался с этим?