emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
В продолжение статьи "Роль архитектуры в масштабировании команд, DDD и микросервисах" - https://dckms.github.io/system-architecture/emacsway/it/team-topologies/harlan-mills%27-proposal.html Превосходство Monolith First заключается в том, что он удешевляет…
Бегло просмотрел книгу:
"Team Topologies: Organizing Business and Technology Teams for Fast Flow" by Matthew Skelton
https://www.goodreads.com/book/show/44135420-team-topologies
, и оказался впечатлен. Книга хорошо раскрывает тему, которую я рассматривал в этом канале, по поводу роли архитектуры и архитектора в топологии и масштабировании команд:
https://news.1rj.ru/str/emacsway_log/321
Thanks to @gradea за эту книгу:
https://news.1rj.ru/str/dddevotion/160
"Team Topologies: Organizing Business and Technology Teams for Fast Flow" by Matthew Skelton
https://www.goodreads.com/book/show/44135420-team-topologies
, и оказался впечатлен. Книга хорошо раскрывает тему, которую я рассматривал в этом канале, по поводу роли архитектуры и архитектора в топологии и масштабировании команд:
https://news.1rj.ru/str/emacsway_log/321
Thanks to @gradea за эту книгу:
https://news.1rj.ru/str/dddevotion/160
Goodreads
Team Topologies: Organizing Business and Technology Tea…
Effective software teams are essential for any organiza…
Forwarded from Архитектура ИТ-решений
Я и не подозревал о существовании такой штуки, как Руководство по стилю SQL от Саймона Холивелла https://www.sqlstyle.guide/ - странице, объединяющей различные рекомендации по именованию таблиц, столбцов, хранимых процедур, алиасов и оформлению SQL-запросов
Вы можете использовать эти рекомендаций, форкнуть их или создать свои собственные, - пишет автор - главное, чтобы вы выбрали стиль и придерживались егоwww.sqlstyle.guide
SQL style guide by Simon Holywell
A consistent code style guide for SQL to ensure legible and maintainable projects
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Статьи на частые вопросы по DDD: - "What is domain logic?" by Vladimir Khorikov - "Domain services vs Application services" by Vladimir Khorikov - "Domain model isolation" by Vladimir Khorikov - "Email uniqueness as an aggregate invariant" by Vladimir Khorikov…
Я регулярно упоминаю статью "Clarified CQRS" by Udi Dahan, которая играет критически важное значение в багаже знаний разработчика.
На Хабре появился перевод этой статьи:
https://m.habr.com/ru/post/545128/
Ну и вообще, парень перевел ряд важных статей:
https://m.habr.com/ru/users/ArkadiyXIII/posts/
, в частности три известные статьи V.Vernon о конструировании агрегатов:
1) https://m.habr.com/ru/post/543424/
2) https://m.habr.com/ru/post/543654/
3) https://m.habr.com/ru/post/544514/
, и конспект книги Sam Newman по распилу монолита:
1) https://m.habr.com/ru/post/548054/
2) https://m.habr.com/ru/post/548592/
3) https://m.habr.com/ru/post/549272/
#DDD #Microservices #SoftwareDesign #SoftwareArchitecture
На Хабре появился перевод этой статьи:
https://m.habr.com/ru/post/545128/
Ну и вообще, парень перевел ряд важных статей:
https://m.habr.com/ru/users/ArkadiyXIII/posts/
, в частности три известные статьи V.Vernon о конструировании агрегатов:
1) https://m.habr.com/ru/post/543424/
2) https://m.habr.com/ru/post/543654/
3) https://m.habr.com/ru/post/544514/
, и конспект книги Sam Newman по распилу монолита:
1) https://m.habr.com/ru/post/548054/
2) https://m.habr.com/ru/post/548592/
3) https://m.habr.com/ru/post/549272/
#DDD #Microservices #SoftwareDesign #SoftwareArchitecture
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Топовая новость в мире Golang & DDD. Авторы Watermill и целого ряда статей на тему DDD & Golang подготовили электронную книгу на основе своих статей, и приступили к созданию мини-курса обучения. 📝 "we prepared the e-book "Go With Domain: Building Modern Business…
Похоже, что DDD пользуется в Golang растущей популярностью:
📝 "It's 20 days after our e-book was released and it almost hit 1500 downloads today."
https://twitter.com/roblaszczak/status/1382697162375622662?s=09
https://threedots.tech/go-with-the-domain/
#DDD #Golang
📝 "It's 20 days after our e-book was released and it almost hit 1500 downloads today."
https://twitter.com/roblaszczak/status/1382697162375622662?s=09
https://threedots.tech/go-with-the-domain/
#DDD #Golang
Twitter
Robert Laszczak
It's 20 days after our e-book was released and it almost hit 1500 downloads today. Isn't it a great time to give it a new cover? 👽🛸threedots.tech/go-with-the-do…
Forwarded from Maxim Smirnov
Закипает рынок ИТ-труда. В FB-ке об этом пишут, да и вот здесь: https://www.forbes.ru/karera-i-svoy-biznes/426519-idet-zhestkiy-hanting-pochemu-v-rossii-rezko-vyrosli-spros-na-it
Forbes.ru
«Идет жесткий хантинг»: почему в России резко выросли спрос на IT-специалистов и их зарплаты
В начале 2021 года в IT-индустрии возник явный дисбаланс спроса и предложения на рынке труда. Разработчики, дата-аналитики и интернет-маркетологи стали гораздо востребованнее в результате пандемии, когда бизнес стал массово мигрировать в онлайн. Forbes рассказывает…
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Одной из непростых тем в DDD и микросервисной архитектуре является т.н. проблема "конкурирующих подписчиков". Это когда два причинно-зависимых события попадают на конкурирующие узлы обработки событий, и второе событие может "обогнать" первое, например, по…
Наши авторы тоже хорошо пишут о распределенных вычислениях:
- Косяков М. С. "Введение в распределенные вычисления.". — СПб: НИУ ИТМО, 2014. — С. 75-82. — 155 с. http://books.ifmo.ru/file/pdf/1551.pdf
P.S.: Если вдруг кто-то пропустил конспект Martin Kleppmann по распределенке:
- https://news.1rj.ru/str/emacsway_log/247
- https://news.1rj.ru/str/emacsway_log/248
#DistributedSystems #DDD
- Косяков М. С. "Введение в распределенные вычисления.". — СПб: НИУ ИТМО, 2014. — С. 75-82. — 155 с. http://books.ifmo.ru/file/pdf/1551.pdf
P.S.: Если вдруг кто-то пропустил конспект Martin Kleppmann по распределенке:
- https://news.1rj.ru/str/emacsway_log/247
- https://news.1rj.ru/str/emacsway_log/248
#DistributedSystems #DDD
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Решение? 📝 "While not discussed in detail here, Message Metadata can be used to achieve causal consistency [AMC-Causal Consistency https://queue.acm.org/detail.cfm?id=2610533 ] among Messages (130) that must be replicated across a network with full ordering…
В библиотеке https://github.com/johnbywater/eventsourcing исчезла поддержка Causal Consistency. Случайно обнаружил пропажу, и списался с автором, чтобы выяснить причины. Функциональность исчезла в результате мажорных изменений версии 9.0.0, в процессе написания книги https://leanpub.com/dddwithpython . Многие функции были переписаны полностью, но не все. John Bywater выразил намерение реимплементировать так же и Causal Consistency в обозримой перспективе. А до тех пор, придется довольствоваться версией 8.3.0 в качестве демонстрационного примера.
P.S.: библиотека является хорошим примером реализации паттернов "Reactive Messaging Patterns with the Actor Model: Applications and Integration in Scala and Akka" by Vaughn Vernon
#DDD #Microservices #DistributedSystems #EIP
P.S.: библиотека является хорошим примером реализации паттернов "Reactive Messaging Patterns with the Actor Model: Applications and Integration in Scala and Akka" by Vaughn Vernon
#DDD #Microservices #DistributedSystems #EIP
GitHub
GitHub - pyeventsourcing/eventsourcing: A library for event sourcing in Python.
A library for event sourcing in Python. Contribute to pyeventsourcing/eventsourcing development by creating an account on GitHub.
Свежий пост Martin Kleppmann о вопросах лицензирования и о том, почему он против GPL.
"It's time to say goodbye to the GPL"
https://martin.kleppmann.com/2021/04/14/goodbye-gpl.html
"It's time to say goodbye to the GPL"
https://martin.kleppmann.com/2021/04/14/goodbye-gpl.html
Если нужно читать математические нотации недостаточно часто для того, чтобы их помнить полностью, но и недостаточно редко для того, чтобы позволить их себе забыть:
- Таблица математических символов
https://ru.m.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B0_%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D1%81%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D0%BE%D0%B2
Ну и можно еще скачать "BS ISO 80000-2:2009 Quantities and units — Part 2: Mathematical signs and symbols to be used in the natural sciences and technology".
Материал может оказаться полезным для тех, кому время от времени приходится иметь дело с распределенными системами, алгоритмами, функциональным программированием, data science etc.
#Math
- Таблица математических символов
https://ru.m.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B0_%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D1%81%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D0%BE%D0%B2
Ну и можно еще скачать "BS ISO 80000-2:2009 Quantities and units — Part 2: Mathematical signs and symbols to be used in the natural sciences and technology".
Материал может оказаться полезным для тех, кому время от времени приходится иметь дело с распределенными системами, алгоритмами, функциональным программированием, data science etc.
#Math
Kamil Grzybek:
📝 "I started a new "mini-project" in ModularMonolith repository - Catalog of terms. It is a list of all terms - patterns, approaches, principles used in the design and implementation. Each term will have a definition and example directly from the project.
For now, a list of most terms (80) is added and 4 have already been described. The rest will be added successively.
It is also an easy way to contribute to this project, so please feel free to contact me."
https://twitter.com/kamgrzybek/status/1382979162005241861?s=19
https://github.com/kgrzybek/modular-monolith-with-ddd/tree/master/docs/catalog-of-terms
#DDD #SoftwareDesign #Microservices #SoftwareArchitecture
📝 "I started a new "mini-project" in ModularMonolith repository - Catalog of terms. It is a list of all terms - patterns, approaches, principles used in the design and implementation. Each term will have a definition and example directly from the project.
For now, a list of most terms (80) is added and 4 have already been described. The rest will be added successively.
It is also an easy way to contribute to this project, so please feel free to contact me."
https://twitter.com/kamgrzybek/status/1382979162005241861?s=19
https://github.com/kgrzybek/modular-monolith-with-ddd/tree/master/docs/catalog-of-terms
#DDD #SoftwareDesign #Microservices #SoftwareArchitecture
Twitter
Kamil Grzybek
For now, a list of most terms (80) is added and 4 have already been described. The rest will be added successively. It is also an easy way to contribute to this project, so please feel free to contact me.
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Наши авторы тоже хорошо пишут о распределенных вычислениях: - Косяков М. С. "Введение в распределенные вычисления.". — СПб: НИУ ИТМО, 2014. — С. 75-82. — 155 с. http://books.ifmo.ru/file/pdf/1551.pdf P.S.: Если вдруг кто-то пропустил конспект Martin Kleppmann…
Если вдруг кто не знал, последнюю версию "Distributed systems: principles and paradigms" 3d edition (2017) by Andrew S. Tanenbaum, Maarten Van Steen можно скачать бесплатно на официальном сайте:
- https://www.distributed-systems.net/index.php/books/ds3/
[UPDATE]: Даже версию 3.03 (2020).
#DistributedSystems #DDD
- https://www.distributed-systems.net/index.php/books/ds3/
[UPDATE]: Даже версию 3.03 (2020).
#DistributedSystems #DDD
DISTRIBUTED-SYSTEMS.NET
Distributed Systems 3rd edition (2017) - DISTRIBUTED-SYSTEMS.NET
Get your free copy of Distributed Systems
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Скомпилировал все сообщения на тему "Может ли CQRS-команда возвращать результат" в отдельную статью: https://emacsway.github.io/ru/cqrs-command-and-result/ Статья получилась достаточно тяжелой, и для подавляющего большинства специалистов такая детализация…
Еще одно исследование на тему может ли CQRS-команда возвращать результат:
- "Can command return a value?" by Oskar Dudycz
https://event-driven.io/en/can_command_return_a_value/
- "CQRS facts and myths explained" by Oskar Dudycz
https://event-driven.io/en/cqrs_facts_and_myths_explained/
Предыдущее обсуждение:
- https://news.1rj.ru/str/emacsway_log/476
#DDD #Microservices #SoftwareDesign #SoftwareArchitecture #FunctionalProgramming #OOP #CQRS #CQS
- "Can command return a value?" by Oskar Dudycz
https://event-driven.io/en/can_command_return_a_value/
- "CQRS facts and myths explained" by Oskar Dudycz
https://event-driven.io/en/cqrs_facts_and_myths_explained/
Предыдущее обсуждение:
- https://news.1rj.ru/str/emacsway_log/476
#DDD #Microservices #SoftwareDesign #SoftwareArchitecture #FunctionalProgramming #OOP #CQRS #CQS
Oskar Dudycz
Can command return a value?
Event-Driven by Oskar Dudycz
Как-то я не заметил вовремя этот пост:
"What's the difference between a command and an event?" by Oskar Dudycz
- https://event-driven.io/en/whats_the_difference_between_event_and_command/
Кстати, на этот вопрос очень хорошо отвечает "Open Agile Architecture™" - A Standard of "The Open Group" в разделе
"21.2.1. Concepts of Command, Query, and Event"
- https://pubs.opengroup.org/architecture/o-aa-standard/#KLP-EDA-event-command
Там есть вот такая простая и понятная картинка:
- https://pubs.opengroup.org/architecture/o-aa-standard/images/command-query-event.png
#DDD #Microservices #SoftwareDesign #SoftwareArchitecture #CQRS
"What's the difference between a command and an event?" by Oskar Dudycz
- https://event-driven.io/en/whats_the_difference_between_event_and_command/
Кстати, на этот вопрос очень хорошо отвечает "Open Agile Architecture™" - A Standard of "The Open Group" в разделе
"21.2.1. Concepts of Command, Query, and Event"
- https://pubs.opengroup.org/architecture/o-aa-standard/#KLP-EDA-event-command
Там есть вот такая простая и понятная картинка:
- https://pubs.opengroup.org/architecture/o-aa-standard/images/command-query-event.png
#DDD #Microservices #SoftwareDesign #SoftwareArchitecture #CQRS
Oskar Dudycz
What's the difference between a command and an event?
Event-Driven by Oskar Dudycz
"Events should be as small as possible, right?" by Oskar Dudycz
- https://event-driven.io/en/events_should_be_as_small_as_possible/
К этому посту можно добавить, что поднятый вопрос известен так же под названием "Event Notification" vs. "Event-Carried State Transfer":
- https://martinfowler.com/articles/201701-event-driven.html
, где "Event Notification" обладает более лучшим Consistency при недостатке Availability (в контексте CAP-theorem), а "Event-Carried State Transfer" - наоборот (лучше Availability при недостатке Consistency). Этот критерий является ключевым при выборе решения.
Иногда "Event Notification" используется сознательно из соображений коммутативности, для компенсации гонки сообщений в условиях конкурирующих подписчиков (не самое интересное решение, но недорогое, и в ряде случаев оно работает):
- https://news.1rj.ru/str/emacsway_log/58
- https://emacsway.github.io/ru/message-ordering-in-competing-consumers/#id3
Идея автора создавать несколько вариантов событий под разные клиенты выглядит весьма дискуссионной, так как вынуждает отправителя сообщения быть осведомленным о потребностях разных групп своих клиентов, что формирует двустороннюю осведомленность, которую желательно избегать для достижения Low Coupling.
Это признает и сам автор:
"We’re also risking bigger coupling between services. We need to know what other modules need, and our module must adapt."
Аналогию с BFF я не могу назвать удачной, потому что BFF находится, все-таки, в зоне ответственности потребителя:
"The BFF is tightly coupled to a specific user experience, and will typically be maintained by the same team as the user interface, thereby making it easier to define and adapt the API as the UI requires, while also simplifying process of lining up release of both the client and server components."
- https://samnewman.io/patterns/architectural/bff/
- https://samnewman.io/pattern-img/bff/team-ownership.jpg
Автор это тоже понимает, и предлагает решение:
"I suggest splitting events into Internal and External. Internal are meaningful in the specific module context. External are understandable in the context of the entire system and overall business process."
Это действительно было бы решением, если бы только микросервис не был единицей развертывания, а Bounded Context (включая микросервис) - границей автономности команды:
- https://news.1rj.ru/str/emacsway_log/302
- https://news.1rj.ru/str/emacsway_log/343
BFF отличается тем, что не нарушает ни единиц развертываения, ни границ автономности команд. Скорее наоборот - он продиктован этими целями.
А нарушение автономности команд является ключевым препятствием в их масштабировании:
- https://news.1rj.ru/str/emacsway_log/313
- https://news.1rj.ru/str/emacsway_log/510
В маленьких коллективах это не критично, но в больших - это имеет решающее значение.
Разве что только подумать о применении подхода Sidecar по аналогии с BFF:
- https://docs.microsoft.com/en-us/azure/architecture/patterns/sidecar
#DDD #Microservices #DistributedSystems #SoftwareArchitecture
- https://event-driven.io/en/events_should_be_as_small_as_possible/
К этому посту можно добавить, что поднятый вопрос известен так же под названием "Event Notification" vs. "Event-Carried State Transfer":
- https://martinfowler.com/articles/201701-event-driven.html
, где "Event Notification" обладает более лучшим Consistency при недостатке Availability (в контексте CAP-theorem), а "Event-Carried State Transfer" - наоборот (лучше Availability при недостатке Consistency). Этот критерий является ключевым при выборе решения.
Иногда "Event Notification" используется сознательно из соображений коммутативности, для компенсации гонки сообщений в условиях конкурирующих подписчиков (не самое интересное решение, но недорогое, и в ряде случаев оно работает):
- https://news.1rj.ru/str/emacsway_log/58
- https://emacsway.github.io/ru/message-ordering-in-competing-consumers/#id3
Идея автора создавать несколько вариантов событий под разные клиенты выглядит весьма дискуссионной, так как вынуждает отправителя сообщения быть осведомленным о потребностях разных групп своих клиентов, что формирует двустороннюю осведомленность, которую желательно избегать для достижения Low Coupling.
Это признает и сам автор:
"We’re also risking bigger coupling between services. We need to know what other modules need, and our module must adapt."
Аналогию с BFF я не могу назвать удачной, потому что BFF находится, все-таки, в зоне ответственности потребителя:
"The BFF is tightly coupled to a specific user experience, and will typically be maintained by the same team as the user interface, thereby making it easier to define and adapt the API as the UI requires, while also simplifying process of lining up release of both the client and server components."
- https://samnewman.io/patterns/architectural/bff/
- https://samnewman.io/pattern-img/bff/team-ownership.jpg
Автор это тоже понимает, и предлагает решение:
"I suggest splitting events into Internal and External. Internal are meaningful in the specific module context. External are understandable in the context of the entire system and overall business process."
Это действительно было бы решением, если бы только микросервис не был единицей развертывания, а Bounded Context (включая микросервис) - границей автономности команды:
- https://news.1rj.ru/str/emacsway_log/302
- https://news.1rj.ru/str/emacsway_log/343
BFF отличается тем, что не нарушает ни единиц развертываения, ни границ автономности команд. Скорее наоборот - он продиктован этими целями.
А нарушение автономности команд является ключевым препятствием в их масштабировании:
- https://news.1rj.ru/str/emacsway_log/313
- https://news.1rj.ru/str/emacsway_log/510
В маленьких коллективах это не критично, но в больших - это имеет решающее значение.
Разве что только подумать о применении подхода Sidecar по аналогии с BFF:
- https://docs.microsoft.com/en-us/azure/architecture/patterns/sidecar
#DDD #Microservices #DistributedSystems #SoftwareArchitecture
Oskar Dudycz
Events should be as small as possible, right?
Event-Driven by Oskar Dudycz
Forwarded from Архитектура ИТ-решений
SFIA (The global skills and competency framework for a digital world ) - описание навыков архитектора решений (Solution architecture) https://sfia-online.org/ru/sfia-7/skills/solution-architecture
SFIA
Архитектура решений
Проектирование и коммуникация высокоуровневых структур для обеспечения и руководства проектированием и разработкой интегрированных решений, отвечающих текущим и будущим потребностям бизнеса. В дополнение к технологическим компонентам архитектура решения включает…
Forwarded from Архитектура ИТ-решений
Да вы что! Неужели? https://www.infoq.com/articles/architecture-trends-2021/
InfoQ
Software Architecture and Design InfoQ Trends Report—April 2021
An overview of how the InfoQ editorial team sees the Software Architecture and Design topic evolving in 2021, with a focus on what architects are designing for today.
ArchiMate, трассировка требований и Agile.
В одном из предыдущих сообщений ( https://news.1rj.ru/str/emacsway_log/501 ), рассматривался стандарт ISO/IEC/IEEE 12207:2017 SDLC в отношении применения автоматизированных средств управления требованиями в Agile-моделе разработки, с целью обеспечения трассировки:
📝 "Where possible [during agile projects], bidirectional traceability is enabled and enforced by integrated automated systems and procedures for requirements management, architecture and design, configuration management, measurement, and information management."
- ISO/IEC/IEEE 12207:2017(E)
Существует множество систем управления требованиями, но есть одна бесплатная и с открытым исходным кодом, которая позволяет управлять описанием архитектуры интегрированно, как в problem space, так и в solution space. Причем, осуществлять это коллективно.
Мне как-то подвернулась интересная вводная статья по этому вопросу:
"ArchiMate Cookbook"
- https://www.hosiaisluoma.fi/blog/archimate/
Можно скачать в pdf:
- http://www.hosiaisluoma.fi/ArchiMate-Cookbook.pdf
Примеры от Visual-Paradigm:
- https://www.visual-paradigm.com/guide/archimate/full-archimate-viewpoints-guide/
Примеры от Sparxsystems:
- https://sparxsystems.com/resources/user-guides/15.2/model-domains/languages/archimate.pdf
Документация ArchiMate по этому вопросу:
"Motivation Elements" (Stakeholder, Driver, Assessment, Goal, Outcome, Principle, Requirement, and Constraint)
- https://pubs.opengroup.org/architecture/archimate3-doc/chap06.html
Статья Alexander Teterkin ( @teterkin ) по этому вопросу:
"Хорошая архитектура и ArchiMate"
- https://hostco.ru/news/khoroshaya-arkhitektura-i-archimate/
Плагин к Archimatetool для коллективной разработки:
coArchi - a plug-in to share and collaborate on Archi models.
- https://github.com/archimatetool/archi-modelrepository-plugin
Описание плагина:
- https://www.archimatetool.com/plugins/#coArchi
Документация к плагину:
- https://github.com/archimatetool/archi-modelrepository-plugin/wiki
Пользовательская документация к Archimatetool:
- https://www.archimatetool.com/downloads/Archi%20User%20Guide.pdf
Ранее уже говорилось, что ArchiMate и Archimatetool можно использовать для Event Storming (лично для меня это удобней, чем Miro):
- https://news.1rj.ru/str/emacsway_log/253
Другие посты по теме ArchiMate:
- https://news.1rj.ru/str/emacsway_log/297
- https://news.1rj.ru/str/emacsway_log/336
Как и сколько документировать требования в Agile:
- https://news.1rj.ru/str/emacsway_log/500
- https://news.1rj.ru/str/emacsway_log/502
#SoftwareArchitecture #ArchiMate
В одном из предыдущих сообщений ( https://news.1rj.ru/str/emacsway_log/501 ), рассматривался стандарт ISO/IEC/IEEE 12207:2017 SDLC в отношении применения автоматизированных средств управления требованиями в Agile-моделе разработки, с целью обеспечения трассировки:
📝 "Where possible [during agile projects], bidirectional traceability is enabled and enforced by integrated automated systems and procedures for requirements management, architecture and design, configuration management, measurement, and information management."
- ISO/IEC/IEEE 12207:2017(E)
Существует множество систем управления требованиями, но есть одна бесплатная и с открытым исходным кодом, которая позволяет управлять описанием архитектуры интегрированно, как в problem space, так и в solution space. Причем, осуществлять это коллективно.
Мне как-то подвернулась интересная вводная статья по этому вопросу:
"ArchiMate Cookbook"
- https://www.hosiaisluoma.fi/blog/archimate/
Можно скачать в pdf:
- http://www.hosiaisluoma.fi/ArchiMate-Cookbook.pdf
Примеры от Visual-Paradigm:
- https://www.visual-paradigm.com/guide/archimate/full-archimate-viewpoints-guide/
Примеры от Sparxsystems:
- https://sparxsystems.com/resources/user-guides/15.2/model-domains/languages/archimate.pdf
Документация ArchiMate по этому вопросу:
"Motivation Elements" (Stakeholder, Driver, Assessment, Goal, Outcome, Principle, Requirement, and Constraint)
- https://pubs.opengroup.org/architecture/archimate3-doc/chap06.html
Статья Alexander Teterkin ( @teterkin ) по этому вопросу:
"Хорошая архитектура и ArchiMate"
- https://hostco.ru/news/khoroshaya-arkhitektura-i-archimate/
Плагин к Archimatetool для коллективной разработки:
coArchi - a plug-in to share and collaborate on Archi models.
- https://github.com/archimatetool/archi-modelrepository-plugin
Описание плагина:
- https://www.archimatetool.com/plugins/#coArchi
Документация к плагину:
- https://github.com/archimatetool/archi-modelrepository-plugin/wiki
Пользовательская документация к Archimatetool:
- https://www.archimatetool.com/downloads/Archi%20User%20Guide.pdf
Ранее уже говорилось, что ArchiMate и Archimatetool можно использовать для Event Storming (лично для меня это удобней, чем Miro):
- https://news.1rj.ru/str/emacsway_log/253
Другие посты по теме ArchiMate:
- https://news.1rj.ru/str/emacsway_log/297
- https://news.1rj.ru/str/emacsway_log/336
Как и сколько документировать требования в Agile:
- https://news.1rj.ru/str/emacsway_log/500
- https://news.1rj.ru/str/emacsway_log/502
#SoftwareArchitecture #ArchiMate
Telegram
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
"Документирование Agile Requirements"
- https://dckms.github.io/system-architecture/emacsway/it/sdlc/models/agile/analysis/requirements/documenting.html
#Management #Agile #SoftwareArchitecture
- https://dckms.github.io/system-architecture/emacsway/it/sdlc/models/agile/analysis/requirements/documenting.html
#Management #Agile #SoftwareArchitecture
👍2
Gregor Hohpe про двухфазные транзакции и их влияние на масштабирование:
"Your Coffee Shop Doesn’t Use Two-Phase Commit" by Gregor Hohpe.
http://eaipatterns.com/docs/IEEE_Software_Design_2PC.pdf
#DistributedSystems #Microservices #DDD #SoftwareArchitecture
"Your Coffee Shop Doesn’t Use Two-Phase Commit" by Gregor Hohpe.
http://eaipatterns.com/docs/IEEE_Software_Design_2PC.pdf
#DistributedSystems #Microservices #DDD #SoftwareArchitecture
"Воркшоп: Event sourcing в реальном времени" / Алексей Зимарев
https://www.youtube.com/watch?v=z20XGmEUzIw
#DDD #Microservices #EventSourcing
https://www.youtube.com/watch?v=z20XGmEUzIw
#DDD #Microservices #EventSourcing
YouTube
Алексей Зимарев — Воркшоп: Event sourcing в реальном времени
Подробнее о конференции DotNext: https://jrg.su/3WmFRE
— —
Присоединяйтесь к Алексею Зимареву, энтузиасту event sourcing и автору «Hands-On Domain-Driven Design with .NET Core» на воркшоп для разработчиков и архитекторов, которые хотят научиться практическим…
— —
Присоединяйтесь к Алексею Зимареву, энтузиасту event sourcing и автору «Hands-On Domain-Driven Design with .NET Core» на воркшоп для разработчиков и архитекторов, которые хотят научиться практическим…
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Просматривал вчера книгу этого же автора: - "Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise" by Dean Leffingwell. Она вышла в печать в том же году, в котором он выпустил первый релиз SAFe. Без сомнений, эта…
Неплохая обзорная статья по Agile Architecture:
- https://www.mytechiebits.com/AgileArchitecture
#SoftwareArchitecture #Agile
- https://www.mytechiebits.com/AgileArchitecture
#SoftwareArchitecture #Agile
Mytechiebits
Agile Architecture
A site to capture techie bits and thoughts
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
"Architecture Ownership Patterns for Team Topologies. Part 3: Multi-Team Patterns" by Nick Tune https://medium.com/nick-tune-tech-strategy-blog/architecture-ownership-patterns-for-team-topologies-part-3-multi-team-patterns-eecc146ddb28 #DDD #Microservices…
Alberto Brandolini не остался в стороне от популярного в наши дни вопроса топологии команд:
"About Team Topologies and Context Mapping" by Alberto Brandolini
https://blog.avanscoperta.it/2021/04/22/about-team-topologies-and-context-mapping/
P.S.: Другие посты по теме топологии команд:
- https://news.1rj.ru/str/emacsway_log/510
- https://news.1rj.ru/str/emacsway_log/348
- https://news.1rj.ru/str/emacsway_log/308
- https://news.1rj.ru/str/emacsway_log/141
- https://news.1rj.ru/str/emacsway_log/343
- https://news.1rj.ru/str/emacsway_log/322
- https://news.1rj.ru/str/emacsway_log/313
#DDD #Management #Microservices #SoftwareArchitecture
"About Team Topologies and Context Mapping" by Alberto Brandolini
https://blog.avanscoperta.it/2021/04/22/about-team-topologies-and-context-mapping/
P.S.: Другие посты по теме топологии команд:
- https://news.1rj.ru/str/emacsway_log/510
- https://news.1rj.ru/str/emacsway_log/348
- https://news.1rj.ru/str/emacsway_log/308
- https://news.1rj.ru/str/emacsway_log/141
- https://news.1rj.ru/str/emacsway_log/343
- https://news.1rj.ru/str/emacsway_log/322
- https://news.1rj.ru/str/emacsway_log/313
#DDD #Management #Microservices #SoftwareArchitecture
Avanscoperta Blog
About Team Topologies and Context Mapping | Avanscoperta Blog
Team Topologies and Domain-Driven Design have a lot in common. Here's Alberto Brandolini's attempt to see the best of both worlds as well as the pros and cons of the different approaches.