Cqrs, Event Sourcing

1,596 views

Published on

Slides from my CQRS talk at DDD Belfast

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,596
On SlideShare
0
From Embeds
0
Number of Embeds
214
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Cqrs, Event Sourcing

  1. 1. CQRS, Event Sourcing<br />Simplicity / Complexity<br />AshicMahtabhttp://www.heartysoft.com@ashic<br />
  2. 2.
  3. 3. UI<br />DB Schema<br />Validation<br />DTO Transformation<br />Controller<br />DTO Transformation<br />Service<br />Repository<br />“Domain”<br />IoC Containers<br />Projection<br />Caching<br />Lazy Loading<br />Leaky “Pointless” Abstractions<br />
  4. 4. Simple, right?<br />
  5. 5. I Hold Data(Just the way you want it)<br />I Did Stuff<br />Gimme Some Data<br />I Do Stuff<br />Please Do Stuff<br />Application<br />
  6. 6. ReadModel<br />I Did Stuff<br />Gimme Some Data<br />Domain<br />Please Do Stuff<br />Application<br />
  7. 7. Event Bus<br />I Hold Data(Just the way you want it)<br />Domain<br />I Did Stuff<br />Gimme Some Data<br />Read Model<br />I Do Stuff<br />Please Do Stuff<br />Application<br />Command Service<br />
  8. 8. Testing<br />When_doing_tranche_payment_with…<br />What about changes? Does “refactoring” require you to change tests? That’s not refactoring.<br />Is the “BDD” output really human readable?<br />
  9. 9. Testing with Events<br />Given:-An account with account holder named “John”, account id=1243, account type=Silver-Account 1243 is debited £200<br />When a request is made to withdraw £300 from account 1243<br />The request should fail stating “Account limit will be exceeded” as the reason. [pass]<br />
  10. 10. Adding new features to existing application<br />
  11. 11. Performance<br />
  12. 12. Resources<br />www.cqrsinfo.com<br />Jonathan Oliver’s blog<br />RinatAbdullin’s blog<br />Ncqrs (github)<br />Google groups for CQRS / DDDD and Ncqrs<br />

×