DDD / CQRS for a composite .NET application with multiple databases

I admit that I'm still pretty new to DDD and even more so to CQRS. I also understand that DDD and / or CQRS may not be the right approach to every problem. Nevertheless, I like the leaders, but I have some questions in the context of the current project.

The solution is a simulator that generates performance data based on the current configuration. Administrators can create and modify specifications for modeling. Testers set some environmental conditions and run the simulator. Results are captured, aggregated and reported.

The solution consists of 3 component areas, each of which has its own use cases, domain logic and structure of supporting data. As a result, the modular design seems attractive as a way to separate logic and individual problems.

  1. The first area will be the administrative aspect, which allows users to create and modify specifications. This will be a heavy CRUD “module”.
  2. The second area will be performed for modeling. The domain model will be similar to the first area, but optimized for modeling, and not for creating a convenient model for editing.
  3. The third area is reporting.
From this, I believe that I have three limiting contexts, right? I have three clear entry points to the application, three sets of domain logic, and three different data models to support domain logic.

, (), . ? , ?

, CQRS, , . , CQRS , . ( DDD), ? , ?

, -, , , "" , . PublishingService , , , SpecificationPublishedEvent, , . , . - ?

+3
1

, , .

-, CQRS , Read Model, , .

, , , . DDD, , .

, .

, PublishingService. Specification, , , , CreateNewSpecification, UpdateSpecification PublishSpecification.

, , : SpecificationCreated, SpecificationUpdated, SpecificationPublished. , CRUD . / , , * *, .

, , CRUD.

, , , , ( ). , , , . , .

, Simulation - AR, Event Sourcing. :

  • , - StartSimulation
  • , , .
  • , , ,
  • / , , ,

, , , . , , . , , .

+1

All Articles