سیستم مستندات یکپارچه

IOT - Business Flows

جریان‌های بیزینسی اصلی

  1. داده ناوگان و مشتری bootstrap یا import می‌شود
  2. Simulation یا live ingest داده telemetry/event/fault تولید می‌کند
  3. Core backend envelopeها را اعتبارسنجی و ذخیره می‌کند
  4. Analytics سلامت، ریسک و هشدار را استخراج می‌کند
  5. WebSocket فرانت، بردهای ناوگان را به‌روزرسانی می‌کند
  6. اپراتور تیکت یا فرایند سرویس را باز می‌کند
  7. اقدام تکنسین و گزارش، حلقه عملیات را کامل می‌کند

دیاگرام‌های بیزینسی

این دیاگرام‌ها از README/HANDOFF/PRD/docs و نام ماژول‌ها و endpointهای موجود ساخته شده‌اند. جاهایی که BPMN واقعی لازم است، خروجی به صورت BPMN-like در Mermaid flowchart تولید شده است.

Use Case Diagram

Mermaid flowchart - actor/use-case view

flowchart LR
  system(["System boundary: IOT"])
  A1(["مدیر پلتفرم"])
  A2(["مدیر سازمان"])
  A3(["اپراتور"])
  A4(["تکنسین"])
  A5(["Simulation Engine"])
  A6(["منبع داده آسانسور"])
  UC1(("پایش ناوگان آسانسور"))
  system --- UC1
  A1 --> UC1
  UC2(("بازپخش ingest شبیه داده زنده"))
  system --- UC2
  A2 --> UC2
  UC3(("اجرای سناریوهای شبیه‌سازی"))
  system --- UC3
  A3 --> UC3
  UC4(("تشخیص خطا و سیگنال تحلیلی"))
  system --- UC4
  A4 --> UC4
  UC5(("ایجاد هشدار، تیکت و بازدید سرویس"))
  system --- UC5
  A5 --> UC5
  UC6(("خروجی گزارش و بازبینی تاریخچه"))
  system --- UC6
  A6 --> UC6
  classDef actor fill:#dbeafe,stroke:#2563eb,color:#0f172a
  classDef usecase fill:#f8fafc,stroke:#64748b,color:#0f172a

User Flow

Mermaid flowchart - end-to-end business flow

flowchart TD
  S1["داده ناوگان و مشتری bootstrap یا import می‌شود"]
  S2["Simulation یا live ingest داده telemetry/event/fault تولید می‌کند"]
  S1 --> S2
  S3["Core backend envelopeها را اعتبارسنجی و ذخیره می‌کند"]
  S2 --> S3
  S4["Analytics سلامت، ریسک و هشدار را استخراج می‌کند"]
  S3 --> S4
  S5["WebSocket فرانت، بردهای ناوگان را به‌روزرسانی می‌کند"]
  S4 --> S5
  S6["اپراتور تیکت یا فرایند سرویس را باز می‌کند"]
  S5 --> S6
  S7["اقدام تکنسین و گزارش، حلقه عملیات را کامل می‌کند"]
  S6 --> S7
  classDef start fill:#dcfce7,stroke:#16a34a,color:#0f172a
  classDef normal fill:#ffffff,stroke:#2563eb,color:#0f172a
  class S1 start
  class S2 normal
  class S3 normal
  class S4 normal
  class S5 normal
  class S6 normal
  class S7 normal

Sequence Diagram

Mermaid sequence diagram

sequenceDiagram
  autonumber
  participant Elevator_Source as Elevator Source
  participant Simulation_Backend as Simulation Backend
  participant Core_Backend as Core Backend
  participant Analytics as Analytics
  participant WebSocket as WebSocket
  participant Operator as Operator
  participant Technician as Technician
  Elevator_Source->>Simulation_Backend: رخداد telemetry/fault
  Simulation_Backend->>Core_Backend: ارسال envelope از sim bridge
  Core_Backend->>Analytics: طبقه‌بندی health، alert و risk
  Analytics->>WebSocket: انتشار realtime update
  WebSocket->>Operator: به‌روزرسانی fleet board
  Operator->>Technician: ارجاع ticket/service visit

Business Block Diagram

Mermaid block diagram

block-beta
  columns 3
  B1["ناوگان"]
  B2["ساختمان‌ها"]
  B3["آسانسورها"]
  B4["Telemetry"]
  B5["Events/Faults"]
  B6["Analytics"]
  B7["هشدارها"]
  B8["تیکت‌ها"]
  B9["گزارش‌ها"]

BPMN-like Process

Mermaid flowchart with swimlane-style subgraphs

flowchart LR
  subgraph L1["داده میدانی"]
    L1S1["ورود telemetry"]
    L1S2["ظهور الگوی خرابی"]
    L1S1 --> L1S2
    L1S3["ذخیره context"]
    L1S2 --> L1S3
  end
  subgraph L2["پلتفرم"]
    L2S1["تحلیل سلامت"]
    L2S2["ایجاد هشدار"]
    L2S1 --> L2S2
    L2S3["شروع workflow عملیاتی"]
    L2S2 --> L2S3
  end
  L1S3 --> L2S1
  subgraph L3["تیم سرویس"]
    L3S1["اولویت‌بندی تیکت"]
    L3S2["انجام بازدید"]
    L3S1 --> L3S2
    L3S3["ثبت نتیجه"]
    L3S2 --> L3S3
  end
  L2S3 --> L3S1
  classDef lane fill:#f8fafc,stroke:#cbd5e1,color:#0f172a

User Journey

Mermaid journey chart

journey
  title IOT business journey
  section Discover and act
    داده ناوگان و مشتری bootstrap یا import می‌شود: 4: User,System
    Simulation یا live ingest داده telemetry/event/fault تولید می‌کند: 5: User,System
    Core backend envelopeها را اعتبارسنجی و ذخیره می‌کند: 3: User,System
    Analytics سلامت، ریسک و هشدار را استخراج می‌کند: 4: User,System
    WebSocket فرانت، بردهای ناوگان را به‌روزرسانی می‌کند: 5: User,System
    اپراتور تیکت یا فرایند سرویس را باز می‌کند: 3: User,System

شواهد و منابع بیزینسی خوانده‌شده

  • apps/simulation-backend/app/simulation/scenarios.py
  • apps/simulation-backend/tests/test_scoped_scenarios.py
  • docs/demo-scenarios.md
  • docs/domain-model.md
  • docs/integrated-platform-business-proposal.md
  • docs/realtime-architecture.md
  • README.md
  • apps/simulation-backend/Dockerfile
  • apps/simulation-backend/pyproject.toml

Endpointهای پشتیبان جریان‌ها

  • GET /alerts - AlertsController.list - module: alerts
  • POST /alerts - AlertsController.create - module: alerts
  • PATCH /alerts/:alertId/ack - AlertsController.acknowledge - module: alerts
  • PATCH /alerts/:alertId/resolve - AlertsController.resolve - module: alerts
  • GET /analytics/fleet-summary - AnalyticsController.fleetSummary - module: analytics
  • GET /analytics/building-risk - AnalyticsController.buildingRisk - module: analytics
  • GET /analytics/elevator/:elevatorId - AnalyticsController.elevatorInsights - module: analytics
  • GET /analytics/health-history - AnalyticsController.healthHistory - module: analytics
  • GET /audit - AuditController.list - module: audit
  • POST /auth/login - AuthController.login - module: auth
  • POST /auth/refresh - AuthController.refresh - module: auth
  • POST /auth/impersonate/elevator/:elevatorId - AuthController.impersonateElevator - module: auth
  • GET /buildings - BuildingsController.list - module: buildings
  • GET /buildings/facets - BuildingsController.facets - module: buildings
  • GET /buildings/:buildingId - BuildingsController.getById - module: buildings
  • POST /buildings - BuildingsController.create - module: buildings

ابهام‌ها

جزئیات SLA، مالک هر مرحله، exception pathها و تصمیم‌های دقیق BPMN در بعضی پروژه‌ها در کد کامل نیست و برای مدل فرایندی نهایی نیازمند بررسی انسانی است.