Engineering Strategy
System architecture, domain model, integration patterns, security framework, and technology stack for the DRC CEIP Platform.
1. System Architecture Overview
The DRC CEIP Platform follows a modular, layered architecture designed for long-term maintainability, multi-tenant scalability, and regulatory compliance. The system is organized around six core domain modules, each encapsulating a distinct bounded context within the CEIP program lifecycle. These modules can be composed, extended, and versioned independently while sharing a common integration backbone.
Core Platform Modules
1 Resource Designer
Defines the organizational fabric of the platform. Manages companies, teams, roles, hierarchies, and people with associated skill sets, schedule capacity, pricing models, and cost structures. Supports custom fields for domain-specific attributes and role-based access control (RBAC) to govern who can view, edit, and approve resources across the program.
2 Service Catalog Designer
Assembles reusable project templates by combining resources, materials, and work breakdown structures (WBS) into versioned service offerings. Templates can be parameterized by project scale (e.g., small, medium, or large residential retrofits), property type, and improvement category. Version control ensures that active projects reference a locked template snapshot while allowing iterative improvements for future engagements.
3 WBS Manager
Provides hierarchical work breakdown structure authoring with support for both vertical (parent-child) and horizontal (predecessor-successor) dependencies. Resources can be allocated at any level of the hierarchy, enabling coarse-grained program-level assignments and fine-grained task-level scheduling. Order-of-operations enforcement ensures that dependency constraints are respected during execution.
4 Materials Manager
Manages equipment, licenses, and inventory items with flexible pricing and costing models. Supports both box-level (bulk/kit) and individual-unit pricing for materials procurement. Tracks inventory levels, supplier information, and cost variance across projects to support accurate budgeting and financial reporting.
5 Client Engagement Manager
Orchestrates multi-project program management with support for cross-project dependencies, interactive Gantt chart scheduling, and aggregated pricing/cost views. Roll-up dashboards provide real-time visibility into program health, budget utilization, and milestone progress with RBAC-governed access for each stakeholder tier.
6 Analysis Management
Delivers custom dashboards and cross-project performance metrics for program administrators, municipalities, and investors. Includes a what-if scenario engine for modeling program outcomes under varying assumptions (e.g., adoption rates, energy price trajectories, interest rate changes). Supports ad-hoc reporting and scheduled report generation.
Layered Architecture Diagram
The following diagram illustrates the five-layer architecture of the DRC CEIP Platform. Each layer encapsulates a distinct set of concerns, communicating through well-defined interfaces.
2. Domain Model / Entity Relationship
The DRC CEIP Platform domain model captures the core entities and their relationships across the program lifecycle. The following entity-relationship diagram presents each entity with its key attributes, primary keys (PK), and foreign keys (FK).
Entity Relationships
3. Integration Architecture
The DRC CEIP Platform integrates with multiple external systems to fulfill its regulatory, financial, and operational mandates. Each integration is designed with resilience, security, and auditability as primary concerns.
1 Alberta SPIN2 Database
The SPIN2 (Spatial Information System) database is the authoritative Alberta land titles registry. The DRC platform registers CEIP agreements, monitoring plans, completion records, and tax documents against property titles. This integration is critical for legal enforceability of the CEIP tax assessment and for property sale disclosure obligations.
2 ASHRAE Audit Systems
Energy audits conforming to ASHRAE standards are the foundation of eligible improvement identification. The platform intakes Level 3 (pre-project, detailed feasibility) and Level 2 (post-project, verification) audit reports. Document uploads are paired with structured data extraction to validate energy conservation measure (ECM) metrics including kWh savings, GJ reductions, tCO2e impact, and cost estimate accuracy.
3 Municipal Systems
Each participating municipality operates its own property tax assessment and CEIP bylaw infrastructure. The platform maintains per-municipality API adapters to interface with bylaw databases, property tax assessment systems, tax office thresholds, and interest rate configurations. Annual compliance reports are delivered through these integrations.
4 Capital Markets / Bond Issuance
DRC aggregates approved CEIP projects into bond pools for capital markets financing. This integration supports lender terms negotiation, repayment tracking, and portfolio performance reporting. Secure financial data exchange is paramount, with investment-grade reporting standards for institutional and impact investors.
5 APEGA / AAA Verification
All qualified contractors must hold valid professional licenses issued by APEGA (Association of Professional Engineers and Geoscientists of Alberta) or AAA (Alberta Association of Architects). The platform verifies licensing status both at contractor onboarding and through periodic batch verification to ensure ongoing compliance.
6 WCB (Workers' Compensation Board)
Workers' Compensation Board coverage is a prerequisite for contractor qualification. The platform verifies that each contractor maintains active WCB coverage, protecting property owners and the program from liability exposure during installation work.
7 Payment Gateway
The platform processes application fees, deposit payments, and balance payments through a PCI DSS compliant payment gateway. Financial transactions are idempotent, fully audited, and reconciled against the CEIP agreement ledger.
4. Technology Stack Recommendations
The following technology selections are optimized for the DRC CEIP Platform's requirements: multi-tenant SaaS delivery, regulatory compliance, Canadian data residency, and a small-to-medium engineering team that values type safety and developer productivity.
| Layer | Technology | Rationale |
|---|---|---|
| Frontend | Vanilla JavaScript (ES2022+) | Zero framework dependency eliminates supply-chain attack surface and reduces build complexity. Web Components for reusable UI elements across six portal variants. Native ES modules for code organization. No transpilation step required — reduces CI/CD surface and ensures long-term maintainability without framework version churn. SSR handled at the server layer if needed. |
| Backend | Node.js / TypeScript or Python / FastAPI | Type safety reduces runtime errors in financial calculations; async processing handles concurrent API calls to external integrations; shared TypeScript types between frontend and backend reduce contract drift. |
| Database | PostgreSQL | ACID compliance for financial transaction integrity; native JSON/JSONB support for flexible document storage (audit reports, improvement catalogs); PostGIS extension for geospatial queries against SPIN2 property data. |
| Cache | Redis | Session management for multi-portal authentication; real-time dashboard data caching; rate limiting counters for API endpoints; pub/sub for live notification delivery. |
| Search | Elasticsearch | Full-text search across properties, contractors, and eligible improvements; faceted filtering by property type, municipality, improvement category; fuzzy matching for address normalization. |
| Queue | RabbitMQ / Amazon SQS | Asynchronous processing for notification delivery, report generation, SPIN2 registration batches, and audit data extraction; dead-letter queues for failed integration retries. |
| Storage | S3-Compatible Object Storage | Document storage for energy audit reports, signed CEIP agreements, completion evidence photos, and generated compliance reports; lifecycle policies for retention management. |
| Auth | OAuth 2.0 + RBAC | Multi-tenant authentication supporting six stakeholder types; role-based access control with granular permissions; multi-factor authentication (MFA) for sensitive portals. |
| Monitoring | Prometheus + Grafana | System health monitoring with custom CEIP metrics (applications per day, approval rates, integration uptime); alerting for SLA violations and security anomalies. |
| CI/CD | GitHub Actions | Automated testing pipelines (unit, integration, E2E); deployment automation with environment promotion (dev, staging, production); infrastructure-as-code validation. |
| Hosting | AWS Canada (ca-central-1) | Data residency compliance with Canadian sovereignty requirements; Government of Canada cloud-approved region; low-latency access for Alberta-based stakeholders; disaster recovery to ca-west-1. |
5. Security, Compliance & Data Residency
The DRC CEIP Platform handles sensitive personal, financial, and property data subject to Alberta's Freedom of Information and Protection of Privacy (FOIP) Act and ministerial designation conditions. The following security framework ensures end-to-end protection of stakeholder data.
FOIP Act Compliance
Consent management at point of data collection, data minimization principles applied to every entity, right-to-access request workflow with 30-day response SLA, and documented data retention schedules.
Data Residency
All data stored in Canadian data centers with Alberta preferred. No data replication to non-Canadian regions. Cloud provider contractual guarantees for data sovereignty. Regular residency audits.
Encryption
AES-256 encryption at rest for all databases and object storage. TLS 1.3 enforced for all data in transit. Key management via AWS KMS with customer-managed keys (CMK). No plaintext secrets in code or configuration.
Authentication
Multi-factor authentication (MFA) required for admin, municipality, and investor portal access. Phishing-resistant authenticators (FIDO2/WebAuthn) supported. Session timeout policies enforced per role.
Authorization (RBAC)
Role-based access control with principle of least privilege. Permissions scoped to organization, municipality, and property level. Privilege escalation requires multi-party approval.
Audit Logging
Every data access and modification logged with who, what, when, and from where. Immutable audit log storage with tamper detection. Retention aligned with FOIP and ministerial requirements.
Penetration Testing
Annual third-party penetration assessment by qualified security firm. Quarterly automated vulnerability scanning. Remediation SLA: critical (24h), high (72h), medium (30d).
Backup & Recovery
Daily automated backups with 90-day retention. Cross-region replication within Canada (ca-central-1 to ca-west-1). Recovery time objective (RTO): 4 hours. Recovery point objective (RPO): 1 hour.
Incident Response
Documented incident response procedure with defined severity levels. 24-hour notification to affected parties for data breaches. Post-incident review and remediation within 7 business days.
Cybersecurity Policy
Comprehensive cybersecurity policy required by ministerial designation conditions. Annual policy review and update cycle. Staff security awareness training mandatory for all personnel with platform access.
6. API Design Principles
The DRC CEIP Platform exposes a comprehensive REST API for all platform operations. The following design principles ensure consistency, security, and developer experience across all endpoints.
RESTful with OpenAPI 3.0
All endpoints follow REST conventions with a machine-readable OpenAPI 3.0 specification. Auto-generated documentation, client SDKs, and contract testing from a single source of truth.
Versioned Endpoints
API versioning via URL path (v1, v2) with backward compatibility guarantees. Deprecation notices issued 90 days before version sunset. Clients specify version explicitly.
JWT Authentication
JSON Web Token-based authentication with short-lived access tokens and long-lived refresh tokens. Token rotation on each refresh. Revocation via server-side token blacklist.
Rate Limiting
Per-client and per-role rate limits enforced at the API gateway. Graduated throttling with clear HTTP 429 responses including retry-after headers. Higher limits for municipality and admin roles.
Pagination, Filtering & Sorting
Cursor-based pagination on all list endpoints. Consistent query parameter syntax for filtering (filter[field]=value) and sorting (sort=field,-field). Total count in response metadata.
Webhook Support
Event-driven notifications for application status changes, project completions, and escalation updates. Configurable webhook URLs per organization with HMAC signature verification.
Idempotency Keys
All financial operations (payments, deposits, refunds) require idempotency keys to prevent duplicate processing. Keys are unique per client and expire after 24 hours.
HATEOAS Links
Hypermedia as the Engine of Application State: responses include navigable links for valid state transitions. Workflow progression (draft → submitted → approved) encoded in link relations.
/api/v1/applications — Create draft application/api/v1/applications/{id} — Retrieve application with HATEOAS links/api/v1/applications/{id} — Update draft application/api/v1/applications/{id}/submit — Submit for review/api/v1/applications/{id}/approve — Approve (admin only)/api/v1/applications/{id}/reject — Reject with reason (admin only)/api/v1/applications?filter[status]=submitted&sort=-submitted_at&page[cursor]=abc