Building blocks and concepts
How it works
The workbench enables design-driven development through an integrated workflow that transforms architectural intent into machine-readable specifications, powering AI-assisted delivery. The diagram below illustrates this end-to-end process:

The Workflow
Modeling Profiles (Design Vocabulary)
Multiple modeling profiles define the vocabulary for different concerns, e.g.:
- C4 Architecture Modeling (@1.1.0): Actors, Systems, Containers, Components
- Domain-Driven Design (@2.0.0): Domains, Aggregates, Commands, Events
- User Story Mapping (@0.2.0): User Activity, Feature, User Story
- BIAN (@1.0.0): Control Record, Behaviour Qualifier
Each profile is versioned independently and provides specific element types and relationships for its domain.
Project Baseline (Configuration Package)
The project baseline packages everything needed for implementation, e.g.:
- Project Baseline: Domain Services (Java/Quarkus) @1.1.0
- UI Component (React) @1.1.0
The baseline includes Recipes that guide implementation:
- Coding Guidelines
- Technology definitions
- Project dependencies
- Implementation patterns
- Commands & Workflows
These recipes are "specified based on" the modeling profiles, ensuring implementation aligns with design vocabulary.
Coding Assistant (AI-Powered Implementation)
The coding assistant reads the recipes and uses them to generate implementation. The assistant has access to:
- All design specifications from the modeling profiles
- Implementation guidance from the recipes
- Project-specific patterns and standards
Development Project (Generated Code)
The development project (Domain Services Java/Quarkus @1.1.0) contains:
- Business Logic: Generated from domain models and specifications
- Implementation: Code that reflects the architectural decisions and patterns
The coding assistant "implements" the code based on the complete context provided by profiles, baselines, and recipes.
This creates a continuous flow from architectural intent (profiles) through structured guidance (baselines and recipes) to working code (implementation), with AI coding assistants bridging the gap between design and delivery.
Building Blocks
The workbench is built on several key components that work together to enable design-driven development:
Open Modeling Language (OML)
The modeling vocabulary that defines what can be modeled in projects. OML uses modeling configurations composed of versioned, shareable profiles.
Profiles
Cohesive sets of vocabulary for specific concerns or domains (e.g., C4, DDD, Event Storming). Each profile defines element types, relationship types, properties, and validations.
Baselines
Comprehensive configuration packages that define the complete modeling environment for projects, including OML configurations, system definitions, recipes, and documentation.
Recipes
Implementation guidance including coding guidelines, technology definitions, implementation patterns, commands, and workflows. Recipes are committed to Git repositories and picked up by coding assistants as skills, commands, and rules.
Customization
Organizations can create custom profiles, baselines, and recipes tailored to their specific needs, standards, and technology choices.