Remove Design Remove Performance Remove Software Architecture Remove Workshop
article thumbnail

Modelling Bounded Contexts with the Bounded Context Design Canvas: A Workshop Recipe

Strategic Tech

This is the question I get asked the most, so I’ve put together this article describing a workshop recipe you can use. In Domain-Driven Design, a large system is decomposed into bounded contexts , which become natural boundaries in code as microservices and as teams in the organisation. 30 minutes) Bounded Context Design Canvas (min.

Design 76
article thumbnail

Nurturing Design in Your Software Engineering Culture

Strategic Tech

There are a few qualities that differentiate average from high performing software engineering organisations. I believe that attitude towards the design of code and architecture is one of them. Both valuing design and striving for continuous delivery are necessary. So we need to make it part of everything we do.

Insiders

Sign Up for our Newsletter

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Trending Sources

article thumbnail

Primary Sociotechnical Design Heuristics

Strategic Tech

There are thousands of ways we can shape the software systems we build and organise our teams around them. Yet there is no flowchart we can simply follow to find the optimal design. The products themselves are software systems which grow harder and harder to reason about as they scale and age.

Design 40
article thumbnail

Remote-optimised Domain Modelling: The Present and Future

Strategic Tech

The techniques we use for visual, collaborative domain modelling are designed for in-person events, where everybody is in the same physical space. We will be running a remote-optimised domain-driven design workshop on 15–16th June where we will use some of the techniques discussed in this post and many others, like the bounded context canvas.

article thumbnail

Consumer-driven Coupling: Patterns and Anti-patterns

Strategic Tech

Layers start to emerge and as a result, shipping new customer-facing features require changes that cut through multiple layers of the architecture. Subsequently, the problem of coordinating multiple teams arises, each with their own backlog and performance goals to achieve. These concepts also apply to distributed architectures.

article thumbnail

The Challenges and Traps of Architecting Sociotechnical Systems

Strategic Tech

Loosely-coupled teams enabled by loosely-coupled software architecture is one of the strongest predictors of continuous delivery performance and organizational scaling. Decoupling Streams of Work Our goal when designing systems is to maximise the speed of delivery and value of the work we deliver.

Systems 40
article thumbnail

Uncovering Hidden Business Rules with DDD Aggregates

Strategic Tech

The answer is performance, but more importantly concurrency conflicts. With an understanding of the performance and concurrency implications of enforcing Invariant Business Rules we can ask the business, what would happen if a patient booked two appointments on the same day or a reschedule wasn’t instantly provided?