Unleash Your Domain With Greg Young
Upcoming SlideShare
Loading in...5
×
 

Unleash Your Domain With Greg Young

on

  • 4,725 views

 

Statistics

Views

Total Views
4,725
Views on SlideShare
4,719
Embed Views
6

Actions

Likes
10
Downloads
104
Comments
1

1 Embed 6

http://www.slideshare.net 6

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • Video of the presentation: http://www.youtube.com/watch?v=KXqrBySgX-s
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Unleash Your Domain With Greg Young Unleash Your Domain With Greg Young Presentation Transcript

  • Unleash Your Domain
    Greg Young
  • Agenda
    The Issues
    The Breakthroughs
    Explicit State Representation
    Event Storage
    Command Query Separation
    Asynchronous Context Mapping
    Summary
    Questions
  • State transitions are an important part of our problem space and should be modeled within our domain.
  • Line Items (n)
    Purchase Order
    Shipping Information
  • Purchase Order
    AddItemCommand
    AddItemCommand
    AddItemCommand
    ChangeAddressCommand
  • 7
    6
    5
    4
    3
    2
    1
  • 6
    5
    snap
    4
    3
    2
    1
  • Data Storage
    Domain Object
    Domain Object
    Application Services
    Remote Facade
    Request DTO
    DTO returned
    Send up DTO
    Status returned
    Client
  • Request DTO
    DTO returned
    DTO Sent
    Ack/Nak Response
    Send DTO Back to Server
    Show DTO on Screen
    User Interacts With DTO
  • Data Storage
    Domain Object
    Domain Object
    Thin Read Layer (Direct to DTO)
    Remote Facade
    Application Services
    Remote Facade
    Request DTO
    DTO returned
    Message Sent
    Ack/Nak Response
    Client
  • Data Storage
    Write (Command)
    Read (Query)
    Domain Object
    Domain Object
    Thin Read Layer (Direct to DTO)
    Remote Facade
    Application Services
    Remote Facade
    Request DTO
    DTO returned
    Message Sent
    Ack/Nak Response
    Client
  • A single model cannot be appropriate for reporting, searching, and transactional behaviors…
  • The model that a client needs the data in a distributed system is screen based and different than the domain model.
  • Most queries can operate with relaxed consistency…
  • Data Storage
    Data Storage
    Denormalizer
    -------------------
    Anti Corruption
    Pipeline
    Domain Object
    Domain Object
    Application Services
    Thin Read Layer (Direct to DTO)
    Remote Facade
    Remote Facade
    Client
  • Getters and Setters are a domain anti-pattern.
  • Most Bounded Contexts can interact with relaxed consistency.
  • Using relaxed consistency allows us to increase our scalability and availability!
  • “Man acts as though he were the shaper and master of language, while in fact it is language that is the master of man.”
  • State transitions are an important part of our problem space and should be modeled within our domain.
  • Getters and Setters are a domain smell.
  • Most Bounded Contexts can interact with relaxed consistency.
  • A single model cannot be appropriate for reporting, searching, and transactional behaviors…
  • Questions