"Patterns of Legacy Displacement: Effective modernization of legacy software systems" by Ian Cartwright, Rob Horn, James Lewis on Martin Fowler's site:
- https://martinfowler.com/articles/patterns-legacy-displacement/
#SoftwareDesign #TechnicalDebt #Refactoring
- https://martinfowler.com/articles/patterns-legacy-displacement/
#SoftwareDesign #TechnicalDebt #Refactoring
martinfowler.com
Patterns of Legacy Displacement
Patterns for the effective modernization of legacy software systems
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Jimmy Bogard начал начал работать над циклом статей с демонстрационным кодом "Domain-Driven Refactoring" - https://jimmybogard.com/domain-driven-refactoring-intro/ #DDD #SoftwareDesign
"Domain-Driven Refactoring: Long Methods" by Jimmy Bogard
- https://jimmybogard.com/domain-driven-refactoring-long-methods/
"Domain-Driven Refactoring: Extracting Domain Services" by Jimmy Bogard
- https://jimmybogard.com/domain-driven-refactoring-extracting-domain-services/
#SoftwareDesign #Refactoring #DDD
- https://jimmybogard.com/domain-driven-refactoring-long-methods/
"Domain-Driven Refactoring: Extracting Domain Services" by Jimmy Bogard
- https://jimmybogard.com/domain-driven-refactoring-extracting-domain-services/
#SoftwareDesign #Refactoring #DDD
Jimmy Bogard
Domain-Driven Refactoring: Long Methods
Posts in this series: IntroProcedural BeginningsLong MethodsExtracting Domain ServicesDefactoring and Pushing Behavior DownEncapsulating DataEncapsulating CollectionsIn the last post, I walked through the main, immediate code smell we saw of a long method…
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Слайд 70 заслуживает отдельного поста. Варианты реализации OO/Functional Aggregates на примере Reference Applications by Chris Richardson: Traditional OO mutable Domain Objects: - https://github.com/cer/event-sourcing-examples/tree/master/java-spring Functional…
"Events to the rescue: solving distributed data problems in a microservice architecture" by Chris Richardson
- http://chrisrichardson.net/post/microservices/2021/07/28/events-to-the-rescue.html
Интересно, что Chris Richardson так же не обошел вниманием широко обсуждаемую в наши дни книгу Team Topologies (слайд 7)
"A pattern language for microservices" by Chris Richardson
- http://chrisrichardson.net/post/microservices/2021/07/27/pattern-language-for-microservices.html
#SoftwareArchitecture #DistributedSystems #Microservices #DDD
- http://chrisrichardson.net/post/microservices/2021/07/28/events-to-the-rescue.html
Интересно, что Chris Richardson так же не обошел вниманием широко обсуждаемую в наши дни книгу Team Topologies (слайд 7)
"A pattern language for microservices" by Chris Richardson
- http://chrisrichardson.net/post/microservices/2021/07/27/pattern-language-for-microservices.html
#SoftwareArchitecture #DistributedSystems #Microservices #DDD
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
"What is a Domain?" by Nick Tune https://medium.com/nick-tune-tech-strategy-blog/what-is-a-domain-99f658b22d7d #DDD #SoftwareDesign #SoftwareArchitecture
"Strategic Domain-Driven Design Kata: Delivericious" by Nick Tune
- https://medium.com/nick-tune-tech-strategy-blog/strategic-domain-driven-design-kata-delivericious-b114ca77163
"Pattern Reading in Visual Discovery and Modelling" by Nick Tune
- https://medium.com/nick-tune-tech-strategy-blog/pattern-reading-in-visual-discovery-and-modelling-d4119637321f
#DDD #SoftwareDesign #SoftwareArchitecture
- https://medium.com/nick-tune-tech-strategy-blog/strategic-domain-driven-design-kata-delivericious-b114ca77163
"Pattern Reading in Visual Discovery and Modelling" by Nick Tune
- https://medium.com/nick-tune-tech-strategy-blog/pattern-reading-in-visual-discovery-and-modelling-d4119637321f
#DDD #SoftwareDesign #SoftwareArchitecture
Medium
Strategic Domain-Driven Design Kata: Delivericious
If you would like to learn or practice how to break up a large business into domains and use them as the foundation for your software…
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Vladimir Khorikov опубликовал статью на актуальную тему "Nulls in Value Objects": - https://enterprisecraftsmanship.com/posts/nulls-in-value-objects/ Статья разбирает, когда использовать Null-значение, а когда - NullObject-pattern. И какую роль здесь играет…
"Specification Pattern vs Always-Valid Domain Model" by Vladimir Khorikov
- https://enterprisecraftsmanship.com/posts/specification-pattern-always-valid-domain-model/
#DDD #SoftwareDesign
- https://enterprisecraftsmanship.com/posts/specification-pattern-always-valid-domain-model/
#DDD #SoftwareDesign
Enterprise Craftsmanship
Specification Pattern vs Always-Valid Domain Model
There’s an interesting controversy between two DDD topics: the Specification pattern and the Always-Valid domain model.
Forwarded from События и Материалы про Анализ и Проектирование ИТ-систем (Denis Beskov)
Хабр
Как подготовиться к собеседованию на позицию системного аналитика. ТОП-5 тем
Представьте, что вам предстоит собеседование на позицию системного аналитика (СА). Что нужно знать для успешного прохождения интервью и какие вопросы могут задать? Эта статья может стать roadmap при...
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
"Patterns of Legacy Displacement: Effective modernization of legacy software systems" by Ian Cartwright, Rob Horn, James Lewis on Martin Fowler's site: - https://martinfowler.com/articles/patterns-legacy-displacement/ #SoftwareDesign #TechnicalDebt #Refactoring
Новые статьи в цикле "Patterns of Legacy Displacement":
"Extract Product Lines"
- https://martinfowler.com/articles/patterns-legacy-displacement/extract-product-lines.html
"Feature Parity"
- https://martinfowler.com/articles/patterns-legacy-displacement/feature-parity.html
"An example: Integration Middleware Removal"
- https://martinfowler.com/articles/patterns-legacy-displacement/#AnExampleIntegrationMiddlewareRemoval
#SoftwareDesign #TechnicalDebt #Refactoring
"Extract Product Lines"
- https://martinfowler.com/articles/patterns-legacy-displacement/extract-product-lines.html
"Feature Parity"
- https://martinfowler.com/articles/patterns-legacy-displacement/feature-parity.html
"An example: Integration Middleware Removal"
- https://martinfowler.com/articles/patterns-legacy-displacement/#AnExampleIntegrationMiddlewareRemoval
#SoftwareDesign #TechnicalDebt #Refactoring
martinfowler.com
Extract Product Lines
Identify and separate systems by product line.
"Agile Architecture: Strategies for Scaling Agile Development"
- http://agilemodeling.com/essays/agileArchitecture.htm
#Agile #Management #SoftwareArchitecture #Analysis #AgileArchitecture
- http://agilemodeling.com/essays/agileArchitecture.htm
#Agile #Management #SoftwareArchitecture #Analysis #AgileArchitecture
Incremental vs. Iterative:
- https://habrastorage.org/files/880/01d/a78/88001da784ab41ec880f84a7bb204a0b.jpg
Источник картинки: https://habr.com/ru/company/edison/blog/269789/
#SDLC #Agile
- https://habrastorage.org/files/880/01d/a78/88001da784ab41ec880f84a7bb204a0b.jpg
Источник картинки: https://habr.com/ru/company/edison/blog/269789/
#SDLC #Agile
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Incremental vs. Iterative: - https://habrastorage.org/files/880/01d/a78/88001da784ab41ec880f84a7bb204a0b.jpg Источник картинки: https://habr.com/ru/company/edison/blog/269789/ #SDLC #Agile
Прозвучал интересный вопрос: какие отличия между "итеративно-инкрементальной" и "итеративной и инкрементальной"?
Отличия приводятся в "ISO/IEC/IEEE 12207:2017 Systems and software engineering - Software life cycle processes":
The “incremental development” model includes initial planning, initial requirements analysis, initial architectural definition, and initial validation, but allocates design, implementation, verification (and sometimes delivery) activities to a series of stages, each of which provides a portion of the intended functionality. The approach provides for some flexibility to respond to inaccurate cost or schedule estimates by moving functionality to later increments.
The “iterative development” model performs initial planning and then consists of a cyclic process of prototyping, testing, analyzing and refining the requirements and the solution. “Iterative” models repeatedly perform the life cycle processes to deliver prioritized system functions sooner, with refined or more complex elements of the system coming in later iterations.
Agile development - software development approach based on iterative development, frequent inspection and adaptation, and incremental deliveries, in which requirements and solutions evolve through collaboration in cross‐functional teams and through continual stakeholder feedback.
#SDLC #Agile
Отличия приводятся в "ISO/IEC/IEEE 12207:2017 Systems and software engineering - Software life cycle processes":
The “incremental development” model includes initial planning, initial requirements analysis, initial architectural definition, and initial validation, but allocates design, implementation, verification (and sometimes delivery) activities to a series of stages, each of which provides a portion of the intended functionality. The approach provides for some flexibility to respond to inaccurate cost or schedule estimates by moving functionality to later increments.
The “iterative development” model performs initial planning and then consists of a cyclic process of prototyping, testing, analyzing and refining the requirements and the solution. “Iterative” models repeatedly perform the life cycle processes to deliver prioritized system functions sooner, with refined or more complex elements of the system coming in later iterations.
Agile development - software development approach based on iterative development, frequent inspection and adaptation, and incremental deliveries, in which requirements and solutions evolve through collaboration in cross‐functional teams and through continual stakeholder feedback.
#SDLC #Agile
Telegram
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Incremental vs. Iterative:
- https://habrastorage.org/files/880/01d/a78/88001da784ab41ec880f84a7bb204a0b.jpg
Источник картинки: https://habr.com/ru/company/edison/blog/269789/
#SDLC #Agile
- https://habrastorage.org/files/880/01d/a78/88001da784ab41ec880f84a7bb204a0b.jpg
Источник картинки: https://habr.com/ru/company/edison/blog/269789/
#SDLC #Agile
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Для сторонников простых решений на текстовых файлах: Imdone is text based kanban processor with a simple syntax that uses comment tags like TODO and FIXME and todo.txt format. - https://github.com/imdone/imdone-core Здесь интересна еще и подборка ссылок…
Еще одно простое, но невероятно мощное Open Source решение для самоорганизации, на простых текстовых файлах, от представителей Old School. Кто пользовался org-mode, тот поймет.
Orgzly - Outliner for notes and tasks. Notebooks in plain text.
- http://www.orgzly.com/
#Agile #Career #SoftSkills
Orgzly - Outliner for notes and tasks. Notebooks in plain text.
- http://www.orgzly.com/
#Agile #Career #SoftSkills
Orgzly
Orgzly | Notes & To-Do Lists
Notes and to-do list outliner for Android. Notebooks in org mode format, synced with a directory on your mobile device, Dropbox, or WebDAV.
Не смог не поделиться картинкой от коллеги на нашумевшую тему 🙂))
Удачно выражает мысль о том, что, если мы хотим измерить эффективность, то мерить тогда нужно не сотрудников, т.е. не субъект эффективности, а объект эффективности.
Скажем так, если мы хотим измерить эффективность А.В.Суворова, как полководца, ты мы должны измерять не количество человеко-часов, потраченных на чистку оружия, а то, насколько много побед он принес насколько минимальными усилиями и потерями. Как говорится, не числом, а умением.
В IT вообще наибольшую продуктивность показывают, как правило, разработчики в проектах с экспоненциальным ростом стоимости изменения кода, что прямо противоречит эффективности.
Удачно выражает мысль о том, что, если мы хотим измерить эффективность, то мерить тогда нужно не сотрудников, т.е. не субъект эффективности, а объект эффективности.
Скажем так, если мы хотим измерить эффективность А.В.Суворова, как полководца, ты мы должны измерять не количество человеко-часов, потраченных на чистку оружия, а то, насколько много побед он принес насколько минимальными усилиями и потерями. Как говорится, не числом, а умением.
В IT вообще наибольшую продуктивность показывают, как правило, разработчики в проектах с экспоненциальным ростом стоимости изменения кода, что прямо противоречит эффективности.
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
"Domain-Driven Refactoring: Long Methods" by Jimmy Bogard - https://jimmybogard.com/domain-driven-refactoring-long-methods/ "Domain-Driven Refactoring: Extracting Domain Services" by Jimmy Bogard - https://jimmybogard.com/domain-driven-refactoring-extracting…
"Domain-Driven Refactoring: Defactoring and Pushing Behavior Down" by Jimmy Bogard
- https://jimmybogard.com/domain-driven-refactoring-defactoring-and-pushing-behavior-down/
#SoftwareDesign #Refactoring #DDD
- https://jimmybogard.com/domain-driven-refactoring-defactoring-and-pushing-behavior-down/
#SoftwareDesign #Refactoring #DDD
Jimmy Bogard
Domain-Driven Refactoring: Defactoring and Pushing Behavior Down
Posts in this series: IntroProcedural BeginningsLong MethodsExtracting Domain ServicesDefactoring and Pushing Behavior DownEncapsulating DataEncapsulating CollectionsIn the last post, we looked at our procedural handler and pulled behavior out that called…
Пара микросервисных паттернов были обновлены:
"Revised patterns - Microservice Chassis and Service Template" by Chris Richardson
- https://microservices.io/patterns/2021/08/10/revised-chassis-template.html
#Microservices #SoftwareArchitecture
"Revised patterns - Microservice Chassis and Service Template" by Chris Richardson
- https://microservices.io/patterns/2021/08/10/revised-chassis-template.html
#Microservices #SoftwareArchitecture
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
"Software Dark Ages" by Robert Laszczak - философско-мотивационная статья о DDD в Golang от разработчиков Watermill. https://threedots.tech/post/software-dark-ages/ #DDD #Golang #SoftwareDesign #SoftwareArchitecture
"Common Anti-Patterns in Go Web Applications" by Miłosz Smółka, core developer of Watermill
- https://threedots.tech/post/common-anti-patterns-in-go-web-applications/
#Microservices #DDD #SoftwareDesign #SoftwareArchitecture #Golang
- https://threedots.tech/post/common-anti-patterns-in-go-web-applications/
#Microservices #DDD #SoftwareDesign #SoftwareArchitecture #Golang
threedots.tech
Common Anti-Patterns in Go Web Applications
Avoid the most common anti-patterns we've encountered across multiple Go projects. We reveal how to escape tight coupling, separate logic from implementation, and model your domain effectively. Our battle-tested tactics will help you build more maintainable…
Forwarded from Архитектура ИТ-решений
Программная статья Marco Palladino(Kong) https://thenewstack.io/zerolb-a-new-decentralized-pattern-for-load-balancing/ Возможно, немного запоздавшая, после книжек Ибрама Билджина и Брендана Бёрнса, но всё равно не лишняя
The New Stack
ZeroLB, a New Decentralized Pattern for Load Balancing
The load balancer market hasn’t evolved with the massive architecture changes that are taking place in the application landscape today. Service mesh and the ZeroLB operating model provide users a path delivering services with greater agility and functionality…
Forwarded from Архитектура ИТ-решений
Развернул я IBM IT Architect Assistant Community Edition исключительно чтоб побаловаться, кнопки понажимать. Честно говоря, уже давно не видел такого страшненького UI. Прям боязно артефакты и диаграммы добавлять. Но, надеюсь, что рушиться оно особо не будет и я успеют за пару дней слайдкаст записать.
А пока можете почитайте Руководство по артефактам Если не цепляться к кривизне картинок, то структура архитектурного описания выглядит в нем неплохой. Особенно мне нравится тема про отображение сценариев использования на диаграмме общего обзора решения
А пока можете почитайте Руководство по артефактам Если не цепляться к кривизне картинок, то структура архитектурного описания выглядит в нем неплохой. Особенно мне нравится тема про отображение сценариев использования на диаграмме общего обзора решения
Ibm
What Is a Data Architecture? | IBM
A data architecture helps to manage data from collection through to processing, distribution and consumption.
Forwarded from Архитектура ИТ-решений
Записал короткий скринкаст 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…
Forwarded from Deleted Account
Enterprise Architecture (EA) Tools Reviews 2021 | Gartner Peer Insights
https://www.gartner.com/reviews/market/enterprise-architecture-tools
https://www.gartner.com/reviews/market/enterprise-architecture-tools
Gartner
Enterprise IT Software Reviews | Gartner Peer Insights
"Software Architecture in Practice", 4th Edition
by Len Bass, Paul Clements, Rick Kazman
Released July 2021
- https://www.oreilly.com/library/view/software-architecture-in/9780136885979/
#SoftwareArchitecture
by Len Bass, Paul Clements, Rick Kazman
Released July 2021
- https://www.oreilly.com/library/view/software-architecture-in/9780136885979/
#SoftwareArchitecture
O’Reilly Online Learning
Software Architecture in Practice, 4th Edition
The Definitive, Practical, Proven Guide to Architecting Modern Software--Fully Updated with New Content on Mobility, the Cloud, Energy Management, DevOps, Quantum Computing, and More Updated with eleven new chapters, Software … - Selection from Software…