Skip to content

SaaS Solution Platform — Business Requirements

Purpose

This document captures business-level requirements for the SaaS Solution Platform as a product line (templates + libraries + shell + contracts). Detailed domain rules remain in the DDD entities specification.

Stakeholders

  • Product and engineering — Ship features on a shared backlog (EPIC-SAAS-*).
  • Enterprise customers — Expect multi-tenancy, edition awareness, auditability of commercial changes (via integration with Audit platform where applicable).
  • Factory — Agents and workflows select templates consistently (see Software Factory documentation).

Functional Requirements

BR-SAAS-001 — Bounded-context templates

Statement: Each in-scope bounded context MUST be realizable as a ConnectSoft.Saas.<Context>Template repository with ConnectSoft.BaseTemplate submodule and dotnet new support.

Acceptance: Documentation lists template repo names; factory can scaffold a runnable solution.

BR-SAAS-002 — Published API contracts

Statement: External consumers (gateway, shell, MFEs, peers) MUST consume NuGet-packaged ServiceModel (and RestApi/Grpc as defined)—not Application or Domain projects.

Acceptance: API contract specification defines naming and versioning; breaking changes bump major version.

BR-SAAS-003 — Tenant and edition awareness

Statement: Services and shell MUST enforce tenant and edition policy through documented resolution (claims, headers, correlation)—centralized in Extensions.Saas when Phase 2 ships.

Acceptance: Integration patterns describe identity and propagation.

BR-SAAS-004 — Portal composition

Statement: End-user and admin experiences MUST be composable via ConnectSoft.Blazor.Shell.Saas and MFE modules following Identity / Authorization Server MFE patterns.

Acceptance: Blazor microfrontend backlog plan lists shell and MFE deliverables.

BR-SAAS-005 — Monetization path

Statement: Product catalog, entitlements, billing, and metering MUST be integratable using IDs and events across contexts—no cross-context domain navigation.

Acceptance: Domain model schema references canonical aggregates and boundaries.

Non-Functional Requirements

ID Requirement
NFR-SAAS-001 Observability — OpenTelemetry traces/logs/metrics across shell, MFEs, services
NFR-SAAS-002 Security — OAuth2/OIDC; least privilege; secrets via platform standards
NFR-SAAS-003 Scalability — Stateless services; horizontal scale; async integration
NFR-SAAS-004 Maintainability — One library repo per ConnectSoft.Extensions.Saas.* package

Out of Scope (Explicit)

  • Dedicated Audit, Notifications, or Configuration products as part of this BRD—see respective platform pages.
  • Single monolithic “SaaS database” for all contexts.

Traceability

  • Epics: ConnectSoft.Documentation — saas-extensions-and-templates-epics.md
  • Domain: DDD entities