Case Study CQRS

DEPRECATED: While demo is still available and functional – including the videos, “The Ball” material is superceding this design.

Contents / Features

  • Trivialization Example of Mobile Development (currently for Android) on Microsoft Ecosystem
  • CQRS architecture abstracted (for demonstrational model)
  • Core Event Sourcing on SQL Server (with Entity Framework Database Initializers)
  • Readmodel + Denormalizing also with Entity Framework + Database Initializers
  • Query model changes trigger readmodel drop + event recreation (not flawless, but for the concept idea)
  • WCF Dataservice layer for separated Commands and Queries
  • Android client autogenerated for full-scale CQRS client with REST dataservice
  • Windows Phone 7 Client (light demonstration, queries are standard WCF Dataservice queries, polishing TODO)
  • WPF “Testbench” where the UI is autogenerated based on the commands and readmodel queries

Abstraction Demo Videos



Basic Abstraction Usage

  1. Fill in and modify the values in either Trivialization or CQRS content xml file
  2. Transform All Templates (3 times in a row if using Trivialization)
  3. Compile Solution
  4. Fix Compiler Errors / Implement Required Methods
  5. Debug the mobile clients through dataservice, WPF Testbench as standalone


Next Coming

  • Trivialization layer improvements (including for Windows Phone as well)
  • Improving autogenerated UI for Android, implementing also in parallel for Windows Phone

3 Responses to Case Study CQRS

  1. Can I use this on my iMac?

    • kalleabs says:

      The technology has no platform boundaries and MonoDevelop runs on iMac.

      The CQRS abstraction is not tested with MonoDevelop and it likely currently uses some Visual Studio bound syntax. Not a big thing to change for Android client targeting though.

      However we haven’t had enough time/resources to add iOS support, so if you planned to target Apple’s devices, that would require small community effort as well.

  2. Pingback: CQRS: Links, News And Resources (2) « Angel “Java” Lopez on Blog

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s