Записал короткий скринкаст https://youtu.be/sQLj8h5eAR8
YouTube
IT Architect Assistant - краткий обзор инструмента
Страница: IBM® IT Architect Assistant (Community Edition): https://www.ibm.com/cloud/architecture/architectures/edit/
Вся документация: https://github.com/IBM/itaa-docs/tree/master/docs/community-edition
User Guide: https://github.com/IBM/itaa-docs/blob…
Вся документация: https://github.com/IBM/itaa-docs/tree/master/docs/community-edition
User Guide: https://github.com/IBM/itaa-docs/blob…
Архитектурные комиксы.
Очередная дискуссия в группе о том, должен ли архитектор писать код заставила меня задуматься над вопросом: в чем же таком существенное отличие архитектурных моделей от исходников. Наверное, очевидный ответ в том, что исходники исполняются. Даже не важно где, в вычислительном устройстве или голове разработчика.
Но существуют ли диаграммы, которые потенциально можно было бы исполнить? Вряд ли. Может быть только statechart, ну в какой-то мере sequence. Но не предназначены они для этого. Как, например, поведут себя несколько потоков на этих картинках? С другой стороны, в учебниках информатики для детского сада были[наверное] вполне себя внятные истории про переменные, указатели, стеки и очереди (см. картинку выше и, кстати, по ней одним предложением можно пояснить чем брокеры потоков сообщений aka kafka отличаются от очередей)
Может мы не те картинки рисуем, как думаете?
Очередная дискуссия в группе о том, должен ли архитектор писать код заставила меня задуматься над вопросом: в чем же таком существенное отличие архитектурных моделей от исходников. Наверное, очевидный ответ в том, что исходники исполняются. Даже не важно где, в вычислительном устройстве или голове разработчика.
Но существуют ли диаграммы, которые потенциально можно было бы исполнить? Вряд ли. Может быть только statechart, ну в какой-то мере sequence. Но не предназначены они для этого. Как, например, поведут себя несколько потоков на этих картинках? С другой стороны, в учебниках информатики для детского сада были[наверное] вполне себя внятные истории про переменные, указатели, стеки и очереди (см. картинку выше и, кстати, по ней одним предложением можно пояснить чем брокеры потоков сообщений aka kafka отличаются от очередей)
Может мы не те картинки рисуем, как думаете?
Архитектура ИТ-решений
Большой текст (на самом деле, кластер из нескольких текстов) о разрыве цикла модернизации унаследованных систем появляется на сайте у Мартина нашего Фаулера https://martinfowler.com/articles/patterns-legacy-displacement/
Если вы смотрели раннюю версию, то думаю, что есть смысл вернуться по ссылке и перечитать https://martinfowler.com/articles/patterns-legacy-displacement/ Текст стабилизировался, обзавелся картинками, а на InfoQ появился короткий обзор https://www.infoq.com/news/2021/08/legacy-displacement/ для тех, кому не хочется читать много
martinfowler.com
Patterns of Legacy Displacement
Patterns for the effective modernization of legacy software systems
Другой взгляд на интеграцию приложений. На мой взгляд основная проблема плохих интеграций не в том, что кто-то неудачно спроектировал API, выбрал кривой источник данных или не тот протокол. Проблема в отношении к интеграции как к отдельной задаче. Вне более широкого контекста. На самом деле интеграция, практически всегда, только часть некоторого более масштабного изменения. Причем изменения весьма специфического, реализуемого характерным образом.
Как можно закрыть ту или иную потребность? Вариант номер один состоит в доработке существующего приложения, а вариант номер два – разработка/внедрение новой системы. Иногда бывает так, что ни один из этих вариантов не подходит. Долго, дорого, нет ресурсов, нет времени. В такой ситуации и возникает желание решить только часть задачи, а остальное закрыть существующими системами. Вот и интеграция нарисовалась.
Но, при этом, вы всё равно делаете новое решение! У него будут свои юзкейсы, свой набор событий, команд и сущностей предметной области. Одно из приложений заведомо станет главным (как в картинках с ядром), а другие вспомогательными, возможно заменяемыми. А значит надо придумывать интерфейсы вокруг ядра, а потом реализовывать адаптеры, чтоб воткнуть существующие приложения в этим интерфейсы, ну и осуществить длинный хвост всех других действий, которые требуются в таких случаях. В принципе, для того чтоб проделать все эти работы есть все необходимо. Ну, кроме времени, ресурсов и денег, конечно. Иначе кто-бы тогда выбрал интеграцию из набора альтернативных вариантов реализации решения?
Как можно закрыть ту или иную потребность? Вариант номер один состоит в доработке существующего приложения, а вариант номер два – разработка/внедрение новой системы. Иногда бывает так, что ни один из этих вариантов не подходит. Долго, дорого, нет ресурсов, нет времени. В такой ситуации и возникает желание решить только часть задачи, а остальное закрыть существующими системами. Вот и интеграция нарисовалась.
Но, при этом, вы всё равно делаете новое решение! У него будут свои юзкейсы, свой набор событий, команд и сущностей предметной области. Одно из приложений заведомо станет главным (как в картинках с ядром), а другие вспомогательными, возможно заменяемыми. А значит надо придумывать интерфейсы вокруг ядра, а потом реализовывать адаптеры, чтоб воткнуть существующие приложения в этим интерфейсы, ну и осуществить длинный хвост всех других действий, которые требуются в таких случаях. В принципе, для того чтоб проделать все эти работы есть все необходимо. Ну, кроме времени, ресурсов и денег, конечно. Иначе кто-бы тогда выбрал интеграцию из набора альтернативных вариантов реализации решения?
Forwarded from Maxim Smirnov
Поделюсь приглашением на бесплатный митап:
26 августа в 18:00 компания IT_One вместе с JUG Ru Group проведет бесплатный онлайн митап по Big Data и Java.
На «IT_One Meet Up: Java and Big Data» эксперты будут говорить о технологиях, инструментах, методах и многом другом, чем живут дата-специалисты. Участие бесплатное, нужно только зарегистрироваться.
26 августа в 18:00 компания IT_One вместе с JUG Ru Group проведет бесплатный онлайн митап по Big Data и Java.
На «IT_One Meet Up: Java and Big Data» эксперты будут говорить о технологиях, инструментах, методах и многом другом, чем живут дата-специалисты. Участие бесплатное, нужно только зарегистрироваться.
Друзья! Пережидая очередную волну спама, я временно отвязал группу обсуждения этого канала от самого канала. Безусловно, вы можете продолжать добавлять в неё свои комментарии, равно как и в нашу большую группу Архитектура ИТ-решений И не забывайте про группу Работа для ИТ-архитекторов, радующую нас вакансиями как смешными, так и не очень
Популярные спикеры [слеш авторы] скоро вытеснят собой штамм компьютерных журналистов. Пока некоторые продолжают наслаждаться летними отпусками Gregor Hohpe слазил в машинное отделение интеграции приложений и вернулся к нам со своим рассказом https://architectelevator.com/architecture/engine-room/
Впрочем, сама история вряд поведает что-то новое. Но вот её концовка:
Впрочем, сама история вряд поведает что-то новое. Но вот её концовка:
So, to me the question isn’t so much whether architects write a lot of code. It’s more important whether they have been to the engine room recently and frequently enough to understand the available solution options and trade-offs, and a few of the dark cornersнепременно оживит горячо любимый всеми флейм
The Architect Elevator
Back from the engine room
Architects dive deep to come back up with new insights. Here’s is what I brought back from the serverless cloud integration engine room.
Давайте проведем небольшой опрос о текущей работе подписчиков группы. Кто вы?
Final Results
10%
Software architect
20%
Solution architect
9%
Enterprise architect
7%
Другой ИТ-архитектор
17%
Аналитик
27%
Разработчик
1%
QA
5%
DevOps, сисадмин, др. работа в operation
16%
Консультант, менеджер проекта/продукта/подразделения, эксперт
8%
Другое
Вчера на zoom-е коснулись темы: как рекрутировать solution architects из аналитиков, разработчиков, других архитекторов и т.д. И здесь есть важный момент. Смена профессии дело не очень простое и довольно хлопотное. Просто так никто этим заниматься не будет. Нужен довольно сильный мотив, чтоб поменять отлаженную деятельность на что-то новое и не до конца понятное. Без сформировавшегося мотива (положительного или негативного) никто в солюшены не пойдет.
В моей практике встречались ситуации, когда человек ну совсем не доволен своей текущей работой, но не хочет менять компанию. Однако, не всем так везет. Да и учиться на solution architect, безусловно, надо
В моей практике встречались ситуации, когда человек ну совсем не доволен своей текущей работой, но не хочет менять компанию. Однако, не всем так везет. Да и учиться на solution architect, безусловно, надо
Грамматики системных моделей (Заметка к 1 сентября)
Многие архитектурные диаграммы похожи на облако тегов. Они состоят из хаотичного набора слов, часто относящийся всего к одной части речи. Например, только имена существительные. Просмотр подобных картинок оставляет назойливый вопрос: «Ну и что?». Какую идею, высказывание, сообщение выражает такая диаграмма.
В описаниях нотаций моделирования (правда, мелким шрифтом) обычно даются рекомендации по построению фраз и предложений из элементов нотации, относящихся к разным типам. Так, например, в гл.4.1 Archimate явно написано: These three aspects – active structure, behavior, and passive structure – have been inspired by natural language, where a sentence has a subject (active structure), a verb (behavior), and an object (passive structure)
Диаграммы кооперации(collaboration) UML придумывались с той же целью. Но если в книжках по версии 1.х про них еще можно найти что-то внятное, то став частью диаграмм композитной структуры, кооперации вообще потерялись. Если вспоминать UML, то скорее цели построения фраз служит диаграмма пригодности (robustness diagram), от которой в UML остались только use cases и actors
В общем, аналогия нотаций моделирования с языком не исчерпывается перечислением разрешенных слов и правилами разнесения их по частным представлениям. Так или иначе они предусматривают построение фраз - высказываний, сообщений, тезисов. Вопрос только в том, а собирался ли автор диаграммы что-то сказать. Было ли ему вообще, что сказать! Или же он просто решил напустить на нас облако тегов
Многие архитектурные диаграммы похожи на облако тегов. Они состоят из хаотичного набора слов, часто относящийся всего к одной части речи. Например, только имена существительные. Просмотр подобных картинок оставляет назойливый вопрос: «Ну и что?». Какую идею, высказывание, сообщение выражает такая диаграмма.
В описаниях нотаций моделирования (правда, мелким шрифтом) обычно даются рекомендации по построению фраз и предложений из элементов нотации, относящихся к разным типам. Так, например, в гл.4.1 Archimate явно написано: These three aspects – active structure, behavior, and passive structure – have been inspired by natural language, where a sentence has a subject (active structure), a verb (behavior), and an object (passive structure)
Диаграммы кооперации(collaboration) UML придумывались с той же целью. Но если в книжках по версии 1.х про них еще можно найти что-то внятное, то став частью диаграмм композитной структуры, кооперации вообще потерялись. Если вспоминать UML, то скорее цели построения фраз служит диаграмма пригодности (robustness diagram), от которой в UML остались только use cases и actors
В общем, аналогия нотаций моделирования с языком не исчерпывается перечислением разрешенных слов и правилами разнесения их по частным представлениям. Так или иначе они предусматривают построение фраз - высказываний, сообщений, тезисов. Вопрос только в том, а собирался ли автор диаграммы что-то сказать. Было ли ему вообще, что сказать! Или же он просто решил напустить на нас облако тегов
Архитектура ИТ-решений
Живое обсуждение предыдущего сообщения в комментариях и группе канала подсказывает, что делать мне надо не доклад на конференцию, а баттл. Что ж, я готов. Мои тезисы: 1. Большинство историй про интеграцию приложений было придумано довольно давно. Тогда мы…
Продолжаем про Закат интеграции приложений.
Matt McClarty дал короткий обзор своего будущего выступления A Visual Language for Systems Integration, основные идеи которого содержатся в его одноименной февральской записи в блоге на MuleSoft. Возможно полезным для понимания будет и Developing a common language for connectivity concepts В общем, быть может, еще не совсем закат. Так, ранние сумерки
Matt McClarty дал короткий обзор своего будущего выступления A Visual Language for Systems Integration, основные идеи которого содержатся в его одноименной февральской записи в блоге на MuleSoft. Возможно полезным для понимания будет и Developing a common language for connectivity concepts В общем, быть может, еще не совсем закат. Так, ранние сумерки
Software Architecture Gathering Digital 2023
A Visual Language for Systems Integration: An Interview with Matt McLarty | Software Architecture Gathering Digital 2021
"I've been working in the software architecture field for a couple of decades now, and one of the consistent issues I've seen through that whole period of time is a lack of agreement on how architectures should be visualized. This is interesting to me, since…
Google находит десятки текстов с описанием навыков и обязанностей Solution Architect. Но я повторно поделюсь этой ссылкой, наверное, она появилась одной из первых. (внутри ссылка на общее разделение ролей)
Developer.com
What is a Solution Architect? (Roles & Responsibilities)
Solution architecture is a sought after position in software development. Learn how to get started as a solution architect.
Алиса продолжала идти, пока вдруг мимо не промчался большой белый кролик. Внезапно он остановился перед ней, сделал три пируэта и крикнул:
- Мы опоздали! Мы опоздали! Мы должны начать кодировать НЕМЕДЛЕННО! Герцогиня будет в ярости!
- Что это ты делаешь? – поинтересовалась Алиса.
- ИТЕРАЦИЯ! – ответил кролик и снова начал вращаться.
- Стоп! - сказала Алиса - Разве все эти повторения не вызывают у тебя головокружение? И не мог бы ты рассказать мне, как перейти от вариантов использования к кодированию?
- Варианты использования? - буркнул кролик, - Нет времени на варианты использования, уже ПОЗДНО, и нам нужно начинать кодировать, - сказал он и бросился прочь.
- Нет вариантов использования? – задумалась Алиса, - Интересно, откуда они знают, что им нужно кодировать. Всё любопытнее и любопытнее, - сказала Алиса и продолжила свой путь
Вся история здесь: http://www.iconixsoftware.net/AliceUseCaseLand.html
Иллюстрации Джона Тенниела, которые использовал Дуг Розенберг в своей презентации можно посмотреть здесь: http://press-libfl.tilda.ws/alisa-v-strane-chudes-istoriya-illyustraciy
- Мы опоздали! Мы опоздали! Мы должны начать кодировать НЕМЕДЛЕННО! Герцогиня будет в ярости!
- Что это ты делаешь? – поинтересовалась Алиса.
- ИТЕРАЦИЯ! – ответил кролик и снова начал вращаться.
- Стоп! - сказала Алиса - Разве все эти повторения не вызывают у тебя головокружение? И не мог бы ты рассказать мне, как перейти от вариантов использования к кодированию?
- Варианты использования? - буркнул кролик, - Нет времени на варианты использования, уже ПОЗДНО, и нам нужно начинать кодировать, - сказал он и бросился прочь.
- Нет вариантов использования? – задумалась Алиса, - Интересно, откуда они знают, что им нужно кодировать. Всё любопытнее и любопытнее, - сказала Алиса и продолжила свой путь
Вся история здесь: http://www.iconixsoftware.net/AliceUseCaseLand.html
Иллюстрации Джона Тенниела, которые использовал Дуг Розенберг в своей презентации можно посмотреть здесь: http://press-libfl.tilda.ws/alisa-v-strane-chudes-istoriya-illyustraciy
www.iconixsoftware.net
ICONIX - Alice in Use Case Land
ICONIX - Making Agile Development Work Better For You
Спасибо тем, кто при регистрации на вебинар задает вопросы. Начинаю на них отвечать https://mxsmirnov.com/2021/09/06/uml-schrodinger/
This media is not supported in your browser
VIEW IN TELEGRAM
Как же мне не хватает при подготовке к вебинару во вторник инструмента BPMN Slider, который я постарался описать вот здесь: https://mxsmirnov.com/bpmn-slider/
Тем временем, регистрация на вебинар "Грамматика системных моделей" продолжается: https://mxsmirnov.timepad.ru/event/1763059/
Тем временем, регистрация на вебинар "Грамматика системных моделей" продолжается: https://mxsmirnov.timepad.ru/event/1763059/
Think of “ontology” as the world’s first three-thousand-year-old hot new buzzword
Обнаружил статью Дэвида Хея (David Hay) от июля 2020: Отношения - это не глаголы https://tdan.com/relationships-are-not-verbs-part-one/26996
Обнаружил статью Дэвида Хея (David Hay) от июля 2020: Отношения - это не глаголы https://tdan.com/relationships-are-not-verbs-part-one/26996
Forwarded from Tech Talk
ЗаТелеком опубликовал письмо "Об изменении DNS-адресации", которые Ростелеком рассылал клиентам по списку рассылки. Там написано:
• DNS от Google, Cloudflare, CISCO OpenDNS "запретить к использованию для выдачи абонентам с BRAS,DHCP".
• Заменять их на DNS от Ростелеком и НСДИ (Национальную систему доменных имен).
• Если пользователи будут жаловаться, что что-то не работает, поддержка не должна им советовать для решения проблемы настраивать DNS от Google и Cloudflare.
Выглядит, как будто собираются блокировать. Если у вас что-нибудь важное зависит от этих трех конкретных DNS - отличное время продумать и протестировать detection (как вы узнаете о блокировке) и correction (как вы восстановите работоспособность систем).
А еще очень интересно, насколько безболезненно экосистема Android и IoT (интернет вещей) переживет блокировку Google-овских DNS?
• DNS от Google, Cloudflare, CISCO OpenDNS "запретить к использованию для выдачи абонентам с BRAS,DHCP".
• Заменять их на DNS от Ростелеком и НСДИ (Национальную систему доменных имен).
• Если пользователи будут жаловаться, что что-то не работает, поддержка не должна им советовать для решения проблемы настраивать DNS от Google и Cloudflare.
Выглядит, как будто собираются блокировать. Если у вас что-нибудь важное зависит от этих трех конкретных DNS - отличное время продумать и протестировать detection (как вы узнаете о блокировке) и correction (как вы восстановите работоспособность систем).
А еще очень интересно, насколько безболезненно экосистема Android и IoT (интернет вещей) переживет блокировку Google-овских DNS?
IcePanel (еще один инструмент документирования и визуализации архитектуры) развивает теги https://twitter.com/ice_panel/status/1437481126637957120
Чуть раньше DiagramsNet (aka DrawIo) выпустил версию в которой одни диаграммы можно было сделать бэкграундом для других. В общем, метки и слои, позволяющие убрать с картинки ненужное, этой осенью в моде
Чуть раньше DiagramsNet (aka DrawIo) выпустил версию в которой одни диаграммы можно было сделать бэкграундом для других. В общем, метки и слои, позволяющие убрать с картинки ненужное, этой осенью в моде
Twitter
IcePanel
V14 enhances tags so they're even more powerful! Hide objects with tags & pin multiple tags in a group to compare. Growth teams can now version systems and apps individually u.icepanel.io/e52af19c #cloud #cloudarchitecture #systemarchitecture #documentation…