PSA/ee/docs/plans/asset-management-enterprise-roadmap.md
Hermes 284313f908
Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Initial import of AlgaPSA codebase from PSA server
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz

Source: /opt/alga-psa on psa.joliet.tech
2026-06-22 16:12:17 -05:00

315 lines
14 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Asset Management System - Enterprise Roadmap
## Remediation-First Path to Enterprise Readiness
**Document Version**: 1.2
**Last Updated**: 2025-01-11
**Current Maturity**: 65% Early Stage Internal Tool
**Target Maturity**: 95% Enterprise-Grade MSP Solution
---
## Table of Contents
1. [Current State Assessment](#current-state-assessment)
2. [Immediate Remediation Priorities](#immediate-remediation-priorities)
3. [Strategic Vision](#strategic-vision)
4. [Phase Overview](#phase-overview)
5. [Detailed Phase Plans](#detailed-phase-plans)
1. [Phase 0: Interface Remediation](#phase-0-interface-remediation)
2. [Phase 1: Foundation & Stability](#phase-1-foundation--stability)
3. [Phase 2: Basic MSP Capabilities](#phase-2-basic-msp-capabilities)
4. [Phase 3: Mid-Market Expansion](#phase-3-mid-market-expansion)
5. [Phase 4: Advanced MSP Controls](#phase-4-advanced-msp-controls)
6. [Phase 5: Enterprise Experience](#phase-5-enterprise-experience)
7. [Phase 6: Market Leadership](#phase-6-market-leadership)
6. [Resource Requirements](#resource-requirements)
7. [Risk Management](#risk-management)
8. [Success Metrics](#success-metrics)
---
## Current State Assessment
### What We Have Today ✅
**Technical Foundation (Strong)**
- Solid PostgreSQL database with extension table architecture
- Comprehensive asset types (workstation, server, network device, mobile, printer)
- Multi-tenant isolation with RLS policies
- RESTful API with validation
- Modern React/Next.js UI shell with RBAC integration
- Maintenance scheduling system and change history/audit trail
**Business Capabilities (Limited)**
- Manual asset creation and editing
- Client-specific asset views
- Basic maintenance tracking and simple status management
- Export functionality and ticket associations
### What We Are Missing ❌
**Critical Gaps**
- No automated UI support for enterprise-scale workflows (search, bulk actions, job visibility)
- No testing infrastructure
- No bulk import/export
- No RMM integration or asset discovery
- No automated workflows/alerts
- Limited reporting
- No license or configuration management
- No client portal
**Market Fit Today**
- ✅ Small MSPs (150 clients): usable with workarounds
- ⚠️ Mid-Market MSPs (50200 clients): marginal
- ❌ Enterprise MSPs (200+ clients): not viable
---
## Immediate Remediation Priorities
Before building additional capabilities, the interface must support enterprise operators. Priority problems and structural fixes:
- **Navigation Sprawl** → Introduce hierarchical navigation and asset-scoped action rail.
- **Dashboard-First Layout** → Replace landing dashboard with high-density workspace grid.
- **Lack of Command Layer** → Add global utility header with search, tenant selection, notifications, and background job indicator.
- **Shallow Asset Context** → Implement right-rail drawers/split panes showing lifecycle, tickets, maintenance, and configuration.
- **Invisible Operations** → Surface job history, progress, and audit context directly in the UI.
These remediation steps unlock the efficiency required for subsequent automation, integrations, and governance features.
---
## Strategic Vision
Deliver a unified asset management capability that connects with MSP tooling, automates lifecycle workflows, and exposes actionable insights across the PSA platform. The roadmap focuses on data fidelity, integration-first architecture, low-friction operations, and extensibility via APIs and configuration layers.
---
## Phase Overview
| Phase | Focus | Enterprise Outcomes |
|-------|-------|---------------------|
| **Phase 0** | Interface Remediation | Navigable workspace, actionable grid, contextual drawers, visible job center |
| **Phase 1** | Foundation & Stability | Testing, import pipeline, tech debt reduction |
| **Phase 2** | Basic MSP Capabilities | Automation engine, reporting, bulk ops |
| **Phase 3** | Mid-Market Expansion | RMM integration (N-able), workflows, lifecycle automation |
| **Phase 4** | Advanced MSP Controls | Multi-RMM connectors, configuration & license management |
| **Phase 5** | Enterprise Experience | Client portal, analytics, compliance tooling |
| **Phase 6** | Market Leadership | AI-driven optimisation, mobile experiences, advanced integrations |
Cumulative timeline remains 1824 months, with Phase 0 executing immediately to unblock later work.
---
## Detailed Phase Plans
### Phase 0: Interface Remediation
**Timeline**: Months 02 (overlaps with Phase 1 setup)
**Team**: 1 product designer, 2 frontend engineers, 1 UX researcher
**Goal**: Deliver enterprise-ready workspace scaffolding.
**Objectives**
1. **Navigation Framework** Hierarchical nav with asset module action rail; responsive behavior across viewports.
2. **Workspace Grid** Server-backed data grid with column management, filters, sorting, pagination, multi-select, inline actions.
3. **Contextual Detail Drawer** Right drawer/split-pane exposing lifecycle timeline, related tickets, maintenance, and configuration snapshots.
4. **Global Utility Header** Tenant selector, quick create, notifications, background job indicator, command palette entry point.
5. **Job Visibility Layer** Job center modal with progress, results, error surfacing, and audit links.
**Exit Criteria**
- New navigation and header live behind feature flag for pilot tenants.
- Data grid replaces dashboard for internal users with opt-in toggle.
- Detail drawer available for top asset types with shareable URLs.
- Job center accessible with live import/automation progress feeds.
---
### Phase 1: Foundation & Stability
**Timeline**: Months 12 (8 weeks)
**Team**: 2 engineers, 1 QA
**Goal**: Create a stable, testable foundation for rapid iteration.
**Deliverables**
- **Testing Infrastructure**
- Configure Jest/Vitest for server code and React Testing Library for components.
- Add CI pipelines and coverage reporting (target 40%).
- Publish testing guidelines and sample suites covering asset CRUD, extension helpers, API controllers, and UI flows.
- **Asset Import System**
- CSV/XLSX ingestion with mapping UI, preview, error reporting, duplicate detection (serial, asset tag, MAC, hostname, fuzzy options).
- Streaming processor handling 10K+ rows with transaction safety and rollback.
- Pre-built field mappings for RMM exports (N-able device inventory, ConnectWise RMM, Datto RMM) to support one-time bootstrap from existing deployments.
- Import templates for key asset categories with example data files.
- Provides foundation for Phase 3 connector framework by establishing standardized asset field pipelines.
- **Code Quality Improvements**
- Refactor monolithic files (`assetActions.ts`, `ApiAssetController.ts`) into modular services.
- Enable TypeScript strict mode; reduce `any` usage; add return types.
- Optimise DB queries via pagination, caching, improved joins.
- Generate API documentation (OpenAPI/Swagger) and architecture decision records.
- **UX Polish & Bug Fixes**
- Loading/error states, notifications, keyboard shortcuts, responsive fixes.
- Resolve pagination, sorting, filtering, and warranty calculation bugs.
- Implement quick filters, bulk select, column visibility toggles, and preference persistence.
**Exit Criteria**
- ≥50 automated tests; ≥40% coverage; CI green on every PR.
- Import 1,000 assets in <2 minutes with 95% duplicate detection accuracy.
- No file >500 lines post-refactor; TypeScript strict mode enabled.
- Zero critical bugs and consistent UX patterns in the workspace.
---
### Phase 2: Basic MSP Capabilities
**Timeline**: Months 24 (8 weeks)
**Team**: 2 engineers, 1 QA, 1 designer
**Goal**: Deliver proactive maintenance value and essential reporting.
**Deliverables**
- **Notification & Scheduling Engine**
- Database-backed notification service with email (SES/SendGrid), optional SMS, and in-app center.
- Maintenance, warranty, and asset status rules with escalation cadences.
- Notification preferences per user, digest options, and optional auto-ticket creation.
- **Reporting System**
- Report definitions, execution engine, scheduling, exports (PDF/Excel/CSV).
- Ten standard asset reports (inventory summary, aging, warranty, maintenance compliance, lifecycle, location, status distribution, etc.).
- UI catalog for selecting parameters, scheduling, and sharing.
- **Bulk Operations Enhancements**
- Multi-select queue with rollback, audit logging, and notifications.
- Templates for mass updates and policy assignments.
- Progress surfaced through job center introduced in Phase 0.
**Exit Criteria**
- Notifications delivered within 1 hour of trigger with ≥98% delivery rate.
- Reports schedulable and exportable with audit logging.
- Bulk operations executed safely with audit trails and user feedback.
---
### Phase 3: Mid-Market Expansion
**Timeline**: Months 48 (16 weeks)
**Team**: 3 engineers, 1 QA, 1 designer, 1 product manager
**Goal**: Integrate with first RMM platform and automate lifecycle workflows.
**Deliverables**
- **Connector Framework Foundations**
- Shared mapping layer, credential management, job orchestration, error handling.
- Tenant configuration UI integrated into workspace.
- Leverage Phase 1 field mapping infrastructure to enable bi-directional sync with RMM platforms.
- **N-able Integration**
- API-driven asset discovery sync (hardware, software, telemetry) with delta updates and scheduled reconciliation.
- Replaces Phase 1 manual CSV exports with real-time data pipelines while maintaining fallback import capability.
- Alert forwarding into lifecycle policies and ticket workflows.
- Device health surfacing in detail drawer.
- **Workflow Automation**
- Rules engine enhancements for assigning policies, creating tickets, escalating issues.
- Visual timeline of upcoming lifecycle events per asset.
**Exit Criteria**
- N-able connector live for pilot tenants with error recovery.
- Automation routes generating measurable time savings (target ≥30% reduction in manual escalations).
- Connector framework reusable for future adapters.
---
### Phase 4: Advanced MSP Controls
**Timeline**: Months 812 (16 weeks)
**Team**: 3 engineers, 1 QA, 1 designer, 1 architect
**Goal**: Expand governance and configuration capabilities for larger deployments.
**Deliverables**
- **Multi-RMM Coverage**
- Extend connectors to ConnectWise RMM and Datto RMM with unified schema adapters.
- Conflict handling when multiple sources manage same asset.
- **Configuration Management Backbone**
- Hierarchical relationships (device → component → dependency), baseline templates, drift detection alerts.
- Snapshot history and rollback within detail drawer.
- **License & Contract Management**
- Inventory module linking assets to agreements; renewal thresholds and compliance dashboards.
**Exit Criteria**
- Two additional RMM connectors live with shared framework.
- Configuration drift alerts operating in pilot environments.
- License management providing actionable renewal insights.
---
### Phase 5: Enterprise Experience
**Timeline**: Months 1216 (16 weeks)
**Team**: Cross-functional squad (frontend, backend, QA, designer, PM)
**Goal**: Deliver client-facing experiences and deep analytics.
**Deliverables**
- **Client Workspace**
- Tenant-scoped portal with configurable views, secure sharing, and self-service exports.
- Collaboration features (notes, approvals) aligned with asset detail drawer.
- **Analytics & Reporting Enhancements**
- Metrics warehouse fed by asset events, lifecycle actions, and integrations.
- Pre-built dashboards for utilisation, risk, and operational KPIs.
- Query API for embedding analytics into other PSA modules.
- **Compliance Tooling**
- Policy dashboards, SLA tracking, certification workflows.
**Exit Criteria**
- Client workspace in production with governance controls.
- Analytics dashboards adopted by success metrics (e.g., ≥60% weekly active tenants).
- Compliance tooling reducing audit preparation time by ≥25%.
---
### Phase 6: Market Leadership
**Timeline**: Months 1624 (24 weeks)
**Team**: Platform squad + ML specialists
**Goal**: Differentiate with intelligent automation and extended ecosystem.
**Deliverables**
- **Predictive Automation**
- ML models for maintenance optimisation, failure prediction, and asset lifecycle recommendations.
- Automated remediation playbooks integrated with automation hub.
- **Mobile & Field Experiences**
- Technician mobile app/experience for scans, quick updates, offline operations.
- **Extensibility & SDKs**
- Plugin interface for custom panels/workflows; public SDK for connectors and automation.
- Sandbox environment for partner validation.
**Exit Criteria**
- Predictive automation deployed with measurable accuracy improvements.
- Mobile field tooling adopted by technician cohort.
- Partner ecosystem onboarded via SDK and sandbox.
---
## Resource Requirements
| Phase | Team Composition | Notes |
|-------|------------------|-------|
| Phase 0 | 2 FE, 1 designer, 1 UX researcher | Heavy UX/design investment; feature flags required |
| Phase 1 | 2 full-stack, 1 QA | Testing and import infrastructure |
| Phase 2 | 2 backend, 1 FE, 1 QA, 1 designer | Automation + reporting |
| Phase 3 | 3 backend, 1 FE, 1 QA, 1 PM | Connector framework + N-able |
| Phase 4 | 3 backend, 1 FE, 1 QA, 1 architect | Multi-RMM, configuration, licensing |
| Phase 5 | 2 FE, 2 backend, 1 QA, 1 designer, 1 PM | Analytics + client portal |
| Phase 6 | Platform squad, ML engineer, mobile dev | Advanced automation + extensibility |
---
## Risk Management
| Risk | Impact | Mitigation |
|------|--------|------------|
| UI remediation delays block later phases | High | Deliver via feature flags; parallelise backend work where possible |
| Import pipeline complexity | Medium | MVP first, handle edge cases iteratively |
| Connector maintenance overhead | Medium | Invest in shared adapter SDK and monitoring early |
| Analytics adoption slower than expected | Medium | Co-design dashboards with design partners; provide training |
| ML accuracy insufficient for automation | Medium | Start with rules-based automation; run ML in shadow mode before GA |
---
## Success Metrics
- Workspace adoption: ≥80% weekly active users on new grid post roll-out.
- Testing coverage: ≥70% by Phase 3 with <1% escaped defects per release.
- Import throughput: 10K assets imported in <5 minutes with zero data loss.
- RMM integrations: 3 connectors live with <0.5% sync failure rate.
- Client portal usage: 60% of enterprise tenants active monthly.
- Automation impact: 40% reduction in manual maintenance tasks.
- Uptime SLA: 99.5% once enterprise features launch.