hackathon/requirements/HSP_Configuration_File_Specification.md
Christoph Wagner 5b658e2468 docs: add architectural review and requirement refinement verification
Complete architectural analysis and requirement traceability improvements:

  1. Architecture Review Report (NEW)
     - Independent architectural review identifying 15 issues
     - 5 critical issues: security (no TLS), buffer inadequacy, performance
       bottleneck, missing circuit breaker, inefficient backoff
     - 5 major issues: no metrics, no graceful shutdown, missing rate limiting,
       no backpressure, low test coverage
     - Overall architecture score: 6.5/10
     - Recommendation: DO NOT DEPLOY until critical issues resolved
     - Detailed analysis with code examples and effort estimates

  2. Requirement Refinement Verification (NEW)
     - Verified Req-FR-25, Req-NFR-7, Req-NFR-8 refinement status
     - Added 12 missing Req-FR-25 references to architecture documents
     - Confirmed 24 Req-NFR-7 references (health check endpoint)
     - Confirmed 26 Req-NFR-8 references (health check content)
     - 100% traceability for all three requirements

  3. Architecture Documentation Updates
     - system-architecture.md: Added 4 Req-FR-25 references for data transmission
     - java-package-structure.md: Added 8 Req-FR-25 references across components
     - Updated DataTransmissionService, GrpcStreamPort, GrpcStreamingAdapter,
       DataConsumerService with proper requirement annotations

  Files changed:
  - docs/ARCHITECTURE_REVIEW_REPORT.md (NEW)
  - docs/REQUIREMENT_REFINEMENT_VERIFICATION.md (NEW)
  - docs/architecture/system-architecture.md (4 additions)
  - docs/architecture/java-package-structure.md (8 additions)

  All 62 requirements now have complete bidirectional traceability with
  documented architectural concerns and critical issues identified for resolution.
2025-11-19 11:06:02 +01:00

1.3 KiB

HSP Configuration File Specification

Purpose

This configuation file contains all devices that shall be polled by HSP for diagnostic data. It also containts additional data specifying the connection used.

Format

The Configuration file shall be stored as JSON file.

File Location

  • Path: ./hsp-config.json (application directory)

JSON Schema

{
  "grpc": {
    "server_address": "localhost",
    "server_port": 50051,
    "timeout_seconds": 30
  },
  "http": {
    "endpoints": [
      "http://device1.local:8080/diagnostics",
      "http://device2.local:8080/diagnostics"
    ],
    "polling_interval_seconds": 1,
    "request_timeout_seconds": 30,
    "max_retries": 3,
    "retry_interval_seconds": 5
  },
  "buffer": {
    "max_messages": 300
  }, 
  "backoff": {
    "http_start_seconds": 5,
    "http_max_seconds": 300,
    "http_increment_seconds": 5,
    "grpc_interval_seconds": 5
  }
}

(minimum and default 1 second, maximum 3600 seconds).

Field value limits

Field Type Required Constraints
grpc.server_address string Yes Valid hostname or IP
grpc.server_port integer Yes 1-65535
http.endpoints array Yes Min 1, Max 1000 URLs
http.polling_interval_seconds integer Yes 1-3600