CH
CARLO HENNSATechnical Document Style / System architecture
EXAMPLE · 1.0← Showcase
02
System architecture / Example 02
Illustrative content · Not an actual client report

System Design Specification

A technical design format for architecture boundaries, data contracts, failure handling, deployment and operational acceptance.

Prepared byCarlo Hennsa
Document referenceEX-SD-002
Version / date1.0 · 14 October 2026
ContextAster Sync (fictional service) · Illustrative example
01
DOCUMENT SECTION

Overview and boundaries

Specify behaviours, not simply product names

Aster Sync is a fictional local-first event service for applications that must record events while disconnected and reconcile them when network access returns.

Primary outcomeReliable local capture

Write accepted events locally even when the network is unavailable.

Consistency modelEventual, per aggregate

Server reconciliation is authoritative; clients observe an explicit status.

Key design propertyIdempotent replay

Re-sent events never produce repeated business actions.

Out of scopeReal-time global ordering

No claim of total ordering across devices.

02
DOCUMENT SECTION

Quality attributes and constraints

Show non-functional requirements alongside behaviour

IDRequirementVerification method
NFR-01Local event acceptance does not depend on an internet connection.Disconnect test while creating events.
NFR-02Each event has a globally unique identifier and a schema version.Schema validation and duplicate replay test.
NFR-03Every server acknowledgement is durable before the client marks an event synchronized.Crash and restart test.
NFR-04A replay with the same event identifier cannot apply a business action twice.Idempotency integration test.
NFR-05Conflicts and invalid messages are visible to operators.Quarantine and alert drill.
03
DOCUMENT SECTION

Logical architecture

Four components; ownership explicitly separated

Client responsibilities

Capture and retransmit

  • Assign event IDs before local commit.
  • Persist requests before showing success.
  • Retry with exponential backoff.
  • Show queued, accepted and rejected states.
Service responsibilities

Validate and reconcile

  • Authenticate sender and verify schema.
  • Deduplicate using event ID.
  • Evaluate version and business constraints.
  • Publish a traceable final outcome.
04
DOCUMENT SECTION

Message and API contract

Example wire format and processing states

{
  "eventId": "024f39c8-1b78-4e18-85f6-3ca054d8ab9b",
  "aggregateId": "asset-204",
  "deviceId": "device-07",
  "sequence": 42,
  "schemaVersion": 1,
  "occurredAt": "2026-10-14T07:00:00Z",
  "type": "InspectionCompleted",
  "payload": { "result": "Pass", "evidenceCount": 2 }
}
APIExpected behaviour
POST /v1/eventsDurably accept, reject with a reason, or report already accepted.
GET /v1/events/{id}Return current ingestion and application state.
GET /v1/sync?cursor=Return scoped incremental changes with a durable cursor.
Contract rule
An HTTP acknowledgement only establishes that the message was durably accepted. It does not imply that every downstream business rule succeeded.
05
DOCUMENT SECTION

Failure modes and recovery

Design for the scenarios users actually experience

ScenarioExpected system responseEvidence
Client restarts mid-uploadPersisted event remains queued or accepted; safe retry on restart.Restart test / dedup log
Server accepts but reply is lostClient retries; same event ID returns existing outcome.Network fault test
Conflicting updatesConflict is explicitly rejected or queued for resolution.Conflict report
Schema version unsupportedReject safely with a machine-readable error; preserve event locally.Contract test
Device clock incorrectServer records receipt time separately; policies define handling.Clock skew test
06
DOCUMENT SECTION

Operations, security and rollout

Make ownership and testability part of the design

OBSERVABILITYQueue age

Measure oldest pending event, retry count and reconciliation latency.

SECURITYLeast privilege

Per-device credentials, revocation, encryption and audit context.

RECOVERYRestore drill

Rebuild one node, replay retained events and compare expected outcomes.

Decision pending
Choose the transactional persistence technology and conflict resolution rules after load, failure and recovery tests. Product names in a diagram are not architectural approval.
07
DOCUMENT SECTION

Document control

Example technical design record

FieldValue
AuthorCarlo Hennsa
Document typeSystem design (illustrative)
ReferenceEX-SD-002
Version1.0
Issued14 October 2026
Decision statusProposed; requires engineering review
ScopeFictional local-first synchronization service