Multi-tenant SaaS control plane¶
Generated from the architecture model
This page is rendered from model/**/*.yaml by tools/docs_model during mkdocs build. Edit the YAML, not this page; hand-written design lives on the linked service, platform and plane pages.
| Vertical | SaaS |
| Prototype reference | SaaS Control Plane prototype (six services as Azure-style blades) (ConnectSoft.DesignPrototypes) |
| Managed edition | Managed (D33, D34) |
| Data residency | tenant-region (D31) |
| Catalog | Examples catalog · Vision-to-Production path for this vertical |
Business problem¶
Every product rebuilds tenants, plans, entitlements and billing differently.
Product intent¶
The SaaS foundations themselves as a product: tenants, products catalog, entitlements, billing, metering and an admin shell.
What the Factory makes different here: the same templates the Factory uses for its own tenancy and commerce (BC-33, BC-34) and the marketplace (BC-28).
Vision-to-Production path for this vertical¶
| Step | Factory platform | Agents | Blueprints |
|---|---|---|---|
| Vision and product plan | Agent Mesh, Control plane | Enterprise Architect Agent, Backend Developer Agent | agentic-saas-product |
| Architecture and domain | Template & Library (BC-02) | Enterprise Architect Agent | service, module |
| Experience | Template & Library, Factory Studio UX track | UX Designer Agent, Frontend Developer Agent | frontend |
| Recipe and generation | Template & Library (BC-15), Agent Mesh, Tools & MCP | Enterprise Architect Agent, Backend Developer Agent, Frontend Developer Agent, QA Agent | module plan from the context map |
| Quality | Observability (BC-22), DevOps / GitOps | QA Agent | test |
| Delivery and provisioning | DevOps / GitOps (BC-23, BC-24), Runtime Cloud (BC-25) | DevOps Agent, Infrastructure Architect Agent | — |
| Operations | Product Fleet Operations (BC-35..37) | — | handover, objectives, rollouts, incidents, off-boarding |
Delivery workflows exercised: saas-template-selection-workflow.
Generated product shape¶
C4Context
title Multi-tenant SaaS control plane system context
Person(user, "Users", "SaaS users and operators")
System_Ext(factory, "ConnectSoft AI Factory", "generates, delivers, provisions and operates the product")
System_Boundary(product, "Multi-tenant SaaS control plane") {
System(ctx_Tenants, "Tenants", "tenants, lifecycle, isolation")
System(ctx_Products, "Products", "editions, features")
System(ctx_Entitlements, "Entitlements", "grants, checks")
System(ctx_Billing, "Billing", "subscriptions, invoices")
System(ctx_Metering, "Metering", "usage, dimensions")
}
Rel(user, ctx_Tenants, "uses through the product gateway GW-07")
Rel(factory, ctx_Tenants, "descriptor, health, rollouts, incidents, off-boarding")
Bounded contexts¶
| Context | Responsibility | Published events |
|---|---|---|
| Tenants | tenants, lifecycle, isolation | TenantProvisioned |
| Products | editions, features | EditionPublished |
| Entitlements | grants, checks | EntitlementGranted |
| Billing | subscriptions, invoices | InvoiceIssued |
| Metering | usage, dimensions | UsageRecorded |
Modules and templates¶
| Module | Template | Notes |
|---|---|---|
| Tenants | connectsoft-saas-tenants |
|
| Products catalog | connectsoft-saas-productscatalog |
|
| Entitlements | connectsoft-saas-entitlements |
|
| Billing | connectsoft-saas-billing |
|
| Metering | connectsoft-saas-metering |
|
| Admin shell | connectsoft-blazor-saas-shell |
|
| Every product also gets the SaaS foundations (tenants, editions, entitlements, billing, metering) and the product host shape (descriptor, health, operations handover) unless it is a library-only product. |
Prototype reference¶
SaaS Control Plane prototype (six services as Azure-style blades) in ConnectSoft.DesignPrototypes shows the intended screens; the UX track (U1–U4) maps prototype destinations to the UX model's screens with keep, merge, rename, retire or new decisions.
Operations as a managed product¶
Managed; the foundation of every other SaaS example.