Governance Architecture for Probabilistic Systems
DC² is an architectural framework designed to integrate and govern probabilistic components — notably Large Language Models (LLMs) — within deterministic systems.
The founding principle is simple but uncompromising:
"Intelligence may be probabilistic. Control must never be."
This architecture is not limited to software development. It applies to any system that must encapsulate probabilistic intelligence: data analysis, decision support, conversational agents, semantic processing pipelines, or automated inspection systems.
DC² treats LLMs as inherently unreliable software components whose intelligence must be constrained by a rigorous deterministic structure.
The Architectural Problem
The emergence of Large Language Models represents a shift as fundamental as the adoption of IDEs or automated refactoring. However, their probabilistic nature makes them fundamentally different from any traditional software component:
- Probabilistic: No guarantee of consistency between identical invocations
- Opaque: No ability to trace the internal logic leading to an output
- Non-deterministic: The same input may produce different outputs
- Context-sensitive: Results depend on history and formulation
Ad-hoc adoption of LLMs in production creates invisible technical debt that often surfaces months after implementation. Without a rigorous methodological framework, these powerful tools become generators of accidental complexity.
Traditional approaches fail because they attempt to apply methods designed for deterministic systems to probabilistic components. Prompt optimization is insufficient — what is required is an architecture of constraints that structurally compensates for the limitations of LLMs.
The DC² Solution
Development by Convergent Constraints proposes an architecture of converging constraints that encapsulates probabilistic intelligence within a deterministic control system. This approach rests on four foundational pillars:
1. Externalized Intelligence, Internalized Control
AI is treated as an unreliable generative subsystem, comparable to an external data source containing noise. Every interaction with AI must be encapsulated by:
- Explicit contracts (structured documentation)
- Verifiable constraints (exhaustive testing)
- Human validation points (multi-level inspection)
2. Human Strategic Control vs AI Tactical Execution
The architecture enforces a strict separation of responsibilities:
- Humans retain strategic control: architecture, system invariants, design decisions
- AI provides tactical acceleration: test generation, code inspection, technical documentation
- The objective is to use AI as an accelerator, never as an autonomous designer
3. Systematic Compensation for Known Limitations
Rather than denying LLM weaknesses, DC² compensates for them structurally:
- Documentation serves as persistent external memory
- TDD and exhaustive testing act as guardrails against drift
- Converging constraints mathematically reduce the solution space
4. Architectural Transposability
The DC² framework applies to any situation requiring governance of a probabilistic component:
- Software development: constrained code generation
- Data analysis: semantic enrichment with deterministic validation
- Decision support: AI suggestions with final human control
- Processing pipelines: probabilistic transformations within deterministic flows
Maturity and License
DC² is an actively evolving methodology, currently at version 1.0. It was designed not as an academic theory, but as a pragmatic response to an observed reality: unstructured AI adoption in production generates exponential technical debt.
The methodology is published under the CC BY-SA 4.0 license, ensuring freedom of use while preserving attribution. You are encouraged to adapt it to your specific contexts, to challenge it, and to propose improvements.
Lead Contributor
Éric Gauthier
IT architect with over 30 years of experience designing complex systems. His career spans the evolution of development methodologies, from Waterfall to Agile, from TDD to DevOps.
The emergence of LLMs represented a new methodological threshold — a fundamental shift in the nature of the components used to build systems.
Through hands-on production use of LLMs, he identified an emerging architectural pattern: the necessity of governing probabilism within deterministic systems. DC² is the formalization of that pattern.
His role is that of lead contributor, not exclusive owner. DC² is intended as a methodology belonging to the community of architects, developers, and practitioners who adopt it, test it, and contribute to its evolution.
Open Source Commitment
DC² belongs to the practitioner community that chooses to use it. It is offered as a contribution to the body of knowledge in software engineering and intelligent system architecture.
Your feedback, constructive criticism, and contributions are essential to its continuous improvement. The methodology evolves through use and through peer dialogue.