A Modeling Framework for Strategic Domain-driven Design

ContextMapper is an open source project providing a Domain-specific Language and Tools for Strategic Domain-driven Design (DDD), Context Mapping, Bounded Context Modeling, and Service Decomposition.

Quick Start


Context Mapping DSL (CML)

CML is an easy to understand, Xtext-based, DSL for DDD context mapping. The language supports modeling Bounded Contexts and their relationships with tactic and strategic DDD patterns.

Learn more

Continuous Refactorings

Decompose your systems architecture by applying Architectural Refactorings (ARs) iteratively. Split and merge Bounded Contexts and/or Aggregates to improve coupling and cohesion.

Learn more

Diagram and Contract Generation

Use your CML Context Maps to generate other representations of the architecture, such as graphical Context Maps, PlantUML component and class diagrams, MDSL (micro-)service contracts, or code.

Learn more

Context Map Discovery Library

Use our Java discovery library to reverse engineer a DDD Context Map from your existing monolith or microservice application (extensible library based on strategy pattern).

Learn more

Code (Microservice) Generation

Generate any text or code with our generic generator based on Freemarker templates. We offer a template to generate Microservice applications (Spring Boot) using JHipster.

Learn more