新しいCQRS, Command Query Responsibility Separation,の スターターキットは、開発者が.NET上でCQRSを使い始め、走らせるのを助けるが、オープンソースとして入手できるようになった。Jonathan Worthington と Carl Mäsakの両氏が開発した。
二人の開発者が言っているのは、これはフレームワークではなく「C# コードの束」であり、その意図はCQRSに興味を持った開発者のチュートリアルとして、そして自分のニーズに合うようにコードを変更する、CQRSベースのシステム用の出発点となることである。
チュートリアルのコードは、カフェドメインのアプリケーションで、カフェを訪れる個人やグループを追跡するタブの概念に焦点を当てている。チュートリアル自体は、設計から始まり、ドメインロジック、リードモデル、ASP.NET MVC Webアプリケーションへの統合が続く5つのステップに分かれている。
チュートリアルでは、 Jonathan と Carlも、もし本番システムに例を拡張したい場合には、考慮すべきいくつかのポイント、例えばトランザクションやイベント上の一貫性を挙げている。
Jonathan と Carl は、あなたが学習段階にないなら、CQRSを始めるべきではない、と強調している。なぜならそれは、新しい近代的なものであり、その代わりにあなたのアーキテクチャ目標のために、この決定に到達すべきである、と言っている。
私は、私のドメインロジック用のコマンド/イベントによって開発したいです。なぜならこの方法でモデリングやテストを書くことが、私には、顧客のニーズを満たすシステムを実現するのに役立つからです。私は、イベント・ストアを使用し続けたいが、それは私のクエリのニーズを満たしていません。したがって、私はまた、リレーショナルデータベースを持つ必要があります。これは私の読み取りと書き込むが異なるコードパスを通じて起こる必要があることを意味します。すなわち私はCQRSをすることになります。
CQRSは、益々関心を集めているアーキテクチャパターンである。DDD コミュニティウェブサイトがほかの人たちによって維持されており、Eric Evans氏が特にその重要性を指摘している
CQRSとEvent Sourcingの2つは、DDDへの密に関連したアーキテクチャ的なアプローチであり、この2,3年DDDで一番ホットなトピックです。