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

51 lines
1.3 KiB
Markdown

# 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
```json
{
"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 |