UC-CORE-001: Tenant Module Management
Purpose: Allow tenants to enable or disable specific modules to customize their platform experience.
| Property | Value |
|---|---|
| Actor | Tenant Admin (Owner) |
| Trigger | Admin navigates to "Platform Settings" |
| Priority | P0 |
Main Success Scenario:
- Admin selects "Module Management" from settings.
- System displays list of available modules (e.g., Marketing, Inventory, Staff Management) with current status.
- Admin toggles a module (e.g., "Marketing Studio") to "Enabled".
- System validates subscription plan allows the module.
- System activates module features and UI navigation items.
- System logs the action in audit logs.
Alternate Flows:
-
Flow A: Plan Upgrade Required: If the plan doesn't support the module, prompt user to upgrade.
-
Flow B: Dependency Conflict: If disabling a module that others depend on, warn user of impact.
Acceptance Criteria:
- [ ] Tenant can view all available modules.
- [ ] Toggling enables/disables UI elements immediately (or after refresh).
- [ ] Permissions are updated to reflect module access.
- [ ] Data isolation controls are enforced.
UC-CORE-005: Tenant Isolation & Templates
Purpose: Configure data boundaries and vertical-specific defaults.
| Property | Value |
|---|---|
| Actor | Super Admin / System |
| Trigger | Tenant Provisioning |
| Priority | P0 |
Capabilities Breakdown:
1. Multi-Tenancy Strategy (UC-CORE-001.1)
-
Database-per-Tenant: High-security option for Enterprise clients (Physical isolation).
-
Schema-per-Tenant: Standard option (Logical isolation within shared DB).
-
Discriminator Column: Not used for sensitive data (Legacy support only).
-
Encryption: Customer data encrypted at rest with tenant-specific keys.
2. Tenant Lifecycle (UC-CORE-001.2)
-
Provisioning: Automated setup of DB/Schema, S3 buckets, and IAM roles < 2 mins.
-
Suspension: Immediate read-only mode for non-payment.
-
Offboarding: Automated data wipe and "Certificate of Deletion" generation.
3. Vertical Templates (UC-CORE-001.3)
-
Salon Mode: Staff Roster, Service Menu, Stylist Booking.
-
Gym Mode: Class schedules, Membership recurring billing, Trainer assignment.
-
Auto Mode: Service Bays, Technician assignment, Parts inventory.
Acceptance Criteria:
- [ ] Provisioning script creates isolated schema within 120s.
- [ ] Cross-tenant data access returns 403 Forbidden at middleware layer.
- [ ] "Certificate of Deletion" is generated and emailed upon termination.
Related Use Cases
-
User Roles: Tenant-level vs System-level admins.
-
Module Management: Enabling features for the tenant.
Main Success Scenario:
- User signs up and selects "Dental Clinic".
- System provisions tenant with "Patient" terminology.
- System creates a dedicated schema
tenant_123. - User logs in to a pre-configured dashboard.