Scope: These requirements describe observable behavior and outcomes of Snow-White as a system. They are intentionally black-box testable and avoid internal implementation details.

RQ-0 System Intent

RQ-0.1 Snow-White SHALL correlate API specifications with runtime telemetry data to produce actionable insights about API usage and quality.

RQ-0.2 Snow-White SHALL be usable with black-box system or integration tests as its primary telemetry source.

RQ-0.3 Snow-White SHALL support usage in live production environments without requiring application code changes beyond standard OpenTelemetry instrumentation.

RQ-1 API Specification Ingestion

RQ-1 Snow-White SHALL make API specifications available for analysis.

RQ-1.1 Snow-White SHALL periodically synchronize API specifications from one or more external sources.

RQ-1.2 Snow-White SHALL index synchronized API specifications in a way that allows lookup by service name, API name, and API version.

RQ-1.3 Snow-White SHALL support OpenAPI specifications as an indexed API format.

RQ-1.4 Snow-White MAY support additional API specification formats.

Linked NFRs: NFR-1 · NFR-3

RQ-2 Runtime Telemetry Ingestion

RQ-2 Snow-White SHALL ingest only the minimum runtime telemetry data required for API analysis.

RQ-2.1 Snow-White SHALL ingest OpenTelemetry tracing data.

RQ-2.2 Snow-White SHALL correlate telemetry data to API specifications using shared semantic attributes.

RQ-2.3 Snow-White SHALL ingest telemetry data only for the duration and scope necessary to perform a requested analysis.

RQ-2.4 Snow-White SHALL NOT aim to replace or duplicate full-scale observability or long-term telemetry storage solutions.

Linked NFRs: NFR-1 · NFR-4

RQ-3 Criteria-Based Analysis

RQ-3 Snow-White SHALL analyze correlated API specifications and runtime telemetry against a fixed set of analysis criteria.

RQ-3.1 Snow-White SHALL evaluate API behavior using predefined, specification-derived criteria.

RQ-3.2 Snow-White SHALL associate analysis results with the corresponding API version.

RQ-3.3 Snow-White SHALL express analysis results as fulfilled or unfulfilled criteria.

RQ-3.4 Snow-White SHALL allow analysis results to be recomputed when new telemetry data or specifications are provided.

Linked NFRs: NFR-4 · NFR-5

RQ-4 Quality Gate Evaluation

RQ-4 Snow-White SHALL group analysis criteria into configurable quality gate definitions.

RQ-4.1 Snow-White SHALL support predefined quality gate configurations.

RQ-4.2 Snow-White SHALL allow users to define custom quality gate thresholds.

RQ-4.3 Snow-White SHALL evaluate analysis results by checking fulfilled criteria against a selected quality gate.

RQ-4.4 Snow-White SHALL expose quality gate evaluation results in a machine-consumable form.

Linked NFRs: NFR-2 · NFR-6

RQ-5 Analysis Triggering

RQ-5 Snow-White SHALL provide explicit mechanisms to trigger an analysis.

RQ-5.1 Snow-White SHALL allow analyses to be triggered via a command-line interface (CLI).

RQ-5.2 Snow-White SHALL allow analyses to be triggered via an HTTP-based API.

RQ-5.3 When triggering an analysis, users SHALL specify the API (service name, API name, version) and the quality gate definition to be applied.

RQ-5.4 Snow-White SHALL scope telemetry ingestion and analysis strictly to the triggered analysis request.

RQ-5.5 Snow-White SHALL resolve a triggered analysis to a terminal state within a bounded time, even if the requested telemetry or computation results never arrive.

Linked NFRs: NFR-2 · NFR-6 · NFR-7

RQ-6 Result Consumption

RQ-6 Snow-White SHALL make analysis and quality gate results consumable by external users and systems.

RQ-6.1 Snow-White SHALL provide a programmatic interface to retrieve analysis results.

RQ-6.2 Snow-White SHALL support usage in CI/CD pipelines.

RQ-6.3 Snow-White SHALL provide visualization or reporting capabilities.

Linked NFRs: NFR-2 · NFR-7

Non-Functional Requirements

NFR-1 Observability

Snow-White SHALL expose sufficient operational telemetry to diagnose ingestion, correlation, and analysis behavior.

NFR-2 Automation

Snow-White SHALL be fully operable without manual interaction once configured.

NFR-3 Scalability

Snow-White SHALL handle increasing numbers of APIs and telemetry events without requiring architectural changes.

NFR-4 Performance

Snow-White SHALL process telemetry and specification updates within a time frame suitable for CI/CD feedback loops.

NFR-5 Determinism

Given the same API specifications and telemetry input, Snow-White SHALL produce identical analysis results.

NFR-6 Reliability

Snow-White SHALL tolerate temporary unavailability of external dependencies without data loss.

NFR-7 Usability

Snow-White SHALL provide clear feedback when requirements for successful analysis (e.g. missing annotations) are not met.

Traceability Notes

  • Each RQ-* requirement is verifiable via system-level or black-box tests.
  • Sub-requirements refine scope but do not introduce internal design constraints.
  • NFRs are explicitly linked to one or more root functional requirements.