March 16, 2023

DDD: Finally an Architecture that IT and Business Executives Can Agree On

Ryan Shriver

The global IT spend on devices, including PCs, tablets, mobile phones, printers, as well as data center systems, enterprise software, and communications services was 4.26 trillion U.S. dollars in 2021. This is expected to top $4.66 trillion in 2023. The rapid pace of technology adoption and changing customer experiences are driving organizations to invest in optimizing the customer experience, driving internal efficiencies, and reaching new markets.

With so many shiny new products to buy and systems to build, how do you know where to prioritize your strategic IT investments? How do you avoid wasting time and money pursuing the wrong things? How do you align on a clear view of the architecture using a shared language for IT and business teams alike?

Strategic Clarity with Domain Driven Design

At SingleStone, we believe a Domain Driven Design (DDD) approach helps drive strategic clarity by:

  1. Connecting IT strategy, architecture, and investments in a clear and transparent way
  2. Guiding organizations on when to buy instead of build custom software
  3. Creating a shared language and visuals for the business and IT team that shows information flows in the organization

Central to this approach is the identification of your organization’s bounded contexts, those domain-centric collections of systems, data, business rules, and teams aligned with a part of your business model. Uncovering these contexts enables you to assess their strategic priority using tools like Core Domain Charts.

Bounded Contexts for a Medical Supply customer whose primary competitive advantage is their Payer rules. See case study for details.

In this example, our client was a Medical Supply business migrating its core systems from data centers to the cloud to improve resiliency and reduce complexity. Their Chief Technology Officer was charged with creating a future state architecture and roadmap to achieve this, so they partnered with us.

Core Domain Charts help everyone clearly identify which contexts are:

  • Core to your business and your “special sauce” where you should invest in custom-built solutions for sustainable competitive advantages.
  • Supporting and Generic domains where you should look to buy solutions in the marketplace because it is not a differentiator.
  • Experimental domains that are the strategic “big bets” you think could change the industry and trajectory of your organization.

Strategically classifying your bounded contexts helps you focus IT investments on the items that can differentiate your business. Bounded contexts also provide you with a blueprint for organizing your systems, data, cloud environments, and people in a way that’s transparent and independently scalable as your business grows.

Bounded Contexts are logical containers for systems, data, and rules.

Discovering Your Bounded Contexts

We know what bounded contexts are. So, how do we find them? We have learned that discovering your bounded contexts is best done with collaborative team workshops to visualize and validate your business processes and systems integration.

When we engage with customers,

  • We start with a Problem Framing workshop where we clarify the problem we are solving, the people it impacts, the desired outcomes, and the constraints on the solution. Mobius is our go-to for aligning around the outcomes that drive success.
  • We then use Event Storming to clarify processes and the C4 Model to clarify systems architecture. All of these are on a single organized Miro board for easy collaboration.
  • During these workshops and the discussions in between, a common language develops between our customer’s business and technology teams as they describe their business domains and create shared visual models, together as a team.

Current to Future State

With a solid understanding of the current state, we shift attention to designing your future state. This is where our experience kicks in. We start by analyzing the Event Storm looking for clues where to draw the bounded context lines with an emphasis on high cohesion within contexts and low coupling between contexts. This is a mix of art and science but quickly we create a first prototype, knowing it will evolve during feedback from our customer.

This draft set of bounded contexts with message flows supports end-to-end customer journeys (or any important process). We test and refine the flows with your domain experts in collaborative workshops to dial in the details and verify accuracy. Zooming out reveals a birds-eye view of how messages flow in your organization through your bounded contexts.

Bounded Contexts with message flows for a Medical Supply customer. Starting at left, the red numbered circles are the steps for registering a new customer and fulfilling their first order. The dotted lines summarize how people interact with each bounded context.

Contexts to Roadmaps

With a clear view of the contexts and message flows, we create a future state architecture working within your constraints. The options explored and solutions recommended depend on the situation, but the process is basically the same. Through collaborative workshops, we help you create designs of the future state that become the North Star for your teams to work toward. These designs are directly influenced by the strategic classification of your bounded contexts, connecting a line from strategy to architecture to delivery.

With the future state defined, we help you lay out a roadmap for how to get from here to there. We like using a Now, Next, and Later format to anchor our recommendations over a flexible time horizon, all aligned to the original outcomes from Problem Framing. The Roadmap includes the evolutionary steps from current to future states, providing clear technical blueprints to guide your team during delivery.

Roadmaps to Agile Delivery

Roadmaps reflect the longer-term strategy, but what will teams do on Day 1? We use an Agile delivery approach, based on Scrum, to help you seamlessly transition into 2-week delivery cadence. Sprint 0 is where we build out the product backlog of stories, refine the initial release plan, set up local development environments, and get Sprint 1 stories to a “ready state.” After that, we’re off to the races.

Through years of experience, we have learned Agile teams deliver customer value faster and make for happier employees, too. Working side-by-side with your team, we “inspect and adapt” as new information comes to light and priorities change, always reflecting on what’s going well, what can be improved, and orienting towards the outcomes that define success.

Get Started with DDD

As leaders look to enhance their ability to increase customer value and unlock new innovation opportunities while reducing risk and overhead - we are learning that a Domain Driven Design approach best connects business outcomes to key technical decisions. This is helping our customers solve a variety of complex problems, including:

  1. How should I rearchitect our legacy system into a modern cloud platform? See case study.
  2. How can we migrate our workloads in the data centers to the cloud? Which ones should we not migrate? See case study.
  3. How can we design a modern analytics warehouse that is not brittle and hard to change? See case study.
  4. How might we take an engineering approach to data governance, data management, and architecture?
  5. How can I bring a new product to market quickly while building agility and scalability into the architecture from the start?

From Problem Framing to designing the Roadmap, implementation typically takes a small team between 4 - 8 weeks to complete, depending on whether we are more tactically focused (new product) or strategically focused (enterprise architecture or cloud migration). Our costs are often a fraction of the budget for one strategic IT investment. The insights revealed and the value delivered in these brief engagements provides years of lasting value to our customers and helps them avoid wasting money and time.

“Your recommendations are tailored to an in-depth understanding of our business and objectives. We are beyond satisfied with the work you all did for us on our cloud migration plan." - Chief Technology Officer for Medical Supply customer

Need to make smarter strategic IT investments aligned with your business differentiators? Need to create a roadmap to a future state but don’t know what that is?

We can help.

Contributors

Ryan Shriver

Chief Technology Officer
Alumni
Go to bio