Skip to content

A sample microservice with CQRS and Event Sourcing architecture for a Runbook and Tasks domain.

Notifications You must be signed in to change notification settings

paucls/runbook-ddd-cqrs-es-microservice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

91 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

runbook-ddd-cqrs-es-microservice

A sample microservice with CQRS and Event Sourcing architecture. Implemented in Java and Spring Boot.

The Domain

For this sample application, we will work in an operations team domain. Our focus will be on the concept of a Runbook which tracks Tasks.

A Runbook is used to track all the tasks to be completed in order for a new system deployment or maintenance operation to be done. Operations planner can: create a runbook for a project, add a task to the runbook, assign a task to an operator, reassign a task. A task can be marked in progress only by the task assignee. An in-progress task can be completed or rejected. When all tasks in the runbook are completed and/or rejected, a runbook can be marked as completed. To keep it simple, there are no dependencies between tasks thus can be completed in any order.

Event Storming

Architecture

CQRS and Event Sourcing architecture CQRS+ES Architecture

Overview

Start your server as an simple java application

You can view the api documentation in swagger-ui by pointing to
http://localhost:8080/

Demo

Documentation

Links to some of the articles and documentation used to implement this project:

About

A sample microservice with CQRS and Event Sourcing architecture for a Runbook and Tasks domain.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages