Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Leveraging Clean Architecture for Migration to Camunda 8 #1

Draft
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

lwluc
Copy link
Owner

@lwluc lwluc commented May 9, 2022

This pull request shows of using clean architecture and DDD to keep you domain clean, so a migration, e.g. to Camunda 8 only effects your adapter layer.

Deep Dive 🤿
If you want to dive a bit deeper into the architecture have a look at the README or watch my talk at the CamundaCon2022.

What makes a migration difficult?

From time to time our framework usage, our interaction with the Camunda Platform, maybe spread over all layers (of a classical multi layer architecture e.g.). So maybe a bit of RuntimeService at the Controller, a bit of Task / History Service on the Service Layer and even some variable checking or update on our repository layer.

So for a migration we need to touch all layers, which would make a migration time consuming and stressful.
Because imagine you are standing in front of a chaotic, not sorted fruit counter and you have to pick out all the apples. Picking all the apples up will be stressful and time consuming and that metaphor reflect the difficulties of a migration perfectly.

But migration should not mean throwing away our old code base and doing it completely new.

Instead it should mean:

  • Keeping our business representative code stable.
  • Our objects and rules representing our business do not change with a framework.
  • They are independent

Let your architecture support you on your migration journey

What you want are local isolated changes in a predefined specific location of the application. Not changes all over the place.

And that is what this repository especially this pull request shows: How our code base could be migrated with less invasive changes using the help of clean architecture!

Spoiler: It only focuses on code-related migration.
It do not focus on migrating our deployment, operations or other changes which may be followed by a migration.

@lwluc lwluc changed the title Migrating to camunda 8 Migrating to Camunda 8 May 9, 2022
@lwluc lwluc force-pushed the camunda-8 branch 3 times, most recently from b6332b5 to fcf20bd Compare June 2, 2022 04:50
@berndruecker
Copy link

Great example and blog post @lwluc - kudos!

@lwluc lwluc changed the title Migrating to Camunda 8 Leveraging Clean Architecture for Migration to Camunda 8 May 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants