Project "a CQRS Journey"

For the things we have to learn before we can do them, we learn by doing them. ~Aristotle

Microsoft patterns & practices

Advisory Board Index


How does the advisory board operate? Vist the frequently asked questions.

Current Members

The list of individuals who are currently advising.


We’ve now reached the end of our CQRS journey. No new advisory meetings are planned.

Previous meetings

  1. February 14
    1. Introduction and welcome to the project. Highlights that a common theme throughout the project will be journeys, explorations, maps, etc.
    2. Rules of engagement
    3. Evidence of need
    4. Vision - a CQRS Journey
    5. Target audience
    6. Scope/deliverables
    7. Discussion of bounded contexts vs. business components
    8. P&P as a catalyst and facilitator, helping reach consensus in the community (one example is driving agreement between the thought leaders Greg Young and Udi Dahan that CQRS is a pattern, and that CQRS is not a top-level architecture. See more here)
  2. March 6
    1. Community contributions workflow
    2. First stop: plain CQRS, no ES
    3. Conf Mgmt sample system : registration epic. Code walkthrough, Domain Model discussion. Bursty scenarios
    4. Walkthrough the guidance early draft - the Reference part & the Journey part
  3. March 21
    1. Registration process saga/workflow implementation
    2. Impromptu discussion on Sagas vs. Workflow vs. State Machines. Check out the original paper on sagas
    3. Doc walkthrough: First stop in the journey chapter
  4. April 3
    1. Occasionally-connected scenario: Managing attendance on-site.
    2. Querying the read-side, IViewRepository and leaky abstractions.
    3. Reservation expiration.
    4. Executable specs/acceptance tests with SpecFlow.
  5. April 17
    1. The road to V1
    2. Conference creation BC and integration w. Registration BC
    3. Payment BC
    4. Conversion of Order and Seat Availability aggregates to use event sourcing
  6. May 10
    1. V1 pseudo-production release
    2. Plans for migrating history, data versioning in V2 – discussion of what would make sense to show in the journey, any gotchas etc.
    3. Dealing with updated events
    4. Dealing with read model mutation and integration events persistence
    5. Challenges in integration between bounded contexts with event sourcing
    6. In-proc command handling optimizations - question
    7. Prototype of tooling to show command & event flows (by advisor)